Design Specification: Indexes
|Date||Author||Version Description & Notes|
The ability to define database indexes and have EclipseLink's DDL generation generate them.
An index is a database structure define for a table to improve query and lookup performance for a set of columns.
Support defining indexes in JPA through annotations. Support defining indexes in JPA through XML.
Must be database independent.
An @Index annotation and XML will be added. An index can be defined on an Entity, or attribute. For the Entity it must define a set of columns to index, the table will be defaulted. For an attribute the table and column will be defaulted.The name of the index will be default to
|Issue #||Owner||Description / Notes|
|1||What databases support indexes, do any use a different syntax?|
|2|| Shouldn't the @Index annotation support choosing the various types of index
algorithms supported by the database being used? We may need to add another attribute to @Index, named 'type' that can take a value from predefined list of values like BTree, RTree, Hash, BitMap, etc. Further, there should be a way to define clustered indexes too, may be an attribute clustered=true/false.
|Issue||Description / Notes||Decision|
- Other DDL options.