|
Feature
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
General Features
|
|
|
Datastore Identity
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Application Identity
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Nondurable Identity [1]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Compound Identity
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Nontransactional
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ACID Transactions
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Versioned objects
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Optimistic Checks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fetch Plan control
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Native Connection access (JDO)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Encryption of data [7]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Backed object wrappers [2]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Cascade Persist
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Cascade Update
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Cascade Delete
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Schema Evolution - New fields [3]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Value Generation
|
|
|
native(JDO)/auto(JPA)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
increment(JDO)/table(JPA)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
identity(JDO/JPA)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sequence(JDO/JPA)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
uuid-hex(JDO)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
uuid-string(JDO)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
uuid
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
timestamp
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
timestamp-value
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
max
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
O/R Mapping
|
|
|
Indexes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Unique Keys
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Foreign Keys
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Primary Keys
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Inheritance(complete-table) [4]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Inheritance(new-table)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Inheritance(subclass-table)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Inheritance(superclass-table)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Discriminators
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Secondary Tables
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Join Tables
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Embedded PC
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Embedded Collection
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Embedded Map
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Embedded Array
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Serialised PC
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Serialised Collection
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Serialised Map
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1-1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1-N
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
M-N
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SchemaTool
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Multitenancy by discriminator
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Field Types
|
|
|
Primitives, Wrappers
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
java.lang.String etc
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
java.lang.Enum
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
java.util.Date etc
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
java.lang.Object
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
java.io.Serializable
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
java.util.Collection
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
java.util.Map
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Arrays
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Interfaces
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Type Converters
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Queries
|
|
|
JDOQL evaluated in memory
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
JDOQL evaluated in datastore [5]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
JDOQL of candidate interface
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
JDOQL Polymorphic queries
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
JPQL evaluated in memory
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
JPQL evaluated in datastore [5]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SQL [6]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Stored Procedures
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|