Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "EclipseLink/DesignDocs/283430"
m (→Open Issues) |
m (→Open Issues) |
||
Line 86: | Line 86: | ||
| 2 | | 2 | ||
| | | | ||
− | | Shouldn't the @Index annotation support choosing the various types of index | + | | |
+ | 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 | 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 | + | attribute to @Index, named 'type' that can take a value from predefined |
− | of values like BTree, RTree, Hash, BitMap, etc. Further, there should | + | list of values like BTree, RTree, Hash, BitMap, etc. Further, there should |
− | way to define clustered indexes too, may be an attribute | + | be a way to define clustered indexes too, may be an attribute |
clustered=true/false. | clustered=true/false. | ||
Latest revision as of 16:18, 6 September 2010
Design Specification: Indexes
Document History
Date | Author | Version Description & Notes |
---|---|---|
2010-08-25 | James | 0.1 Draft |
Project overview
The ability to define database indexes and have EclipseLink's DDL generation generate them.
Concepts
An index is a database structure define for a table to improve query and lookup performance for a set of columns.
Requirements
Support defining indexes in JPA through annotations. Support defining indexes in JPA through XML.
Design Constraints
Must be database independent.
Functionality
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 toIssue # | 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. |
Decisions
Issue | Description / Notes | Decision |
---|
Future Considerations
- Other DDL options.