Back to Mysql Server

NDB Ordered Index Status

storage/ndb/src/kernel/blocks/dbtux/tuxstatus.html

latest1.9 KB
Original Source

NDB Ordered Index Status

Alpha release Jan 30, 2004

  • Up to 32 index attributes of any type, possibly nullable.
  • Index build i.e. table need not be empty.
  • Logging NOT done, index rebuilt at system restart.
  • Single range scan with lower and upper bounds.
  • Scan with locking: read latest, read for update.
  • LIMITED number of parallel scans.
  • Total result set NOT in index key order.
  • NDB ODBC optimizer to use ordered index for equality but NOT for ranges.
  • MySQL optimizer to use ordered index for equality and ranges.

As an example, consider following index on integer attributes.

SQL>create index X on T (A, B, C) nologging;

Single range scan means that bounds are set on an initial sequence of index keys, and all but last is an equality.
For example following scans are supported (the last 2 not via NDB ODBC).

SQL>select * from T where A = 1;
SQL>select * from T where A = 1 and B = 10 and C = 20;
SQL>select * from T where A < 10;
SQL>select * from T where A = 1 and 10 < B and B < 20;

Following scans are NOT supported:

SQL>select * from T where B = 1;
SQL>select * from T where A < 10 and B < 20;

Features and dates

[Now = Jan 19]

FeatureNowJan 30Mar 01Never
Index maintenanceX---
Basic scanX 1)---
Scan bounds on nullable attributes-X--
Scan with locking-X--
NDB ODBC equality bounds-X--
MySQL integration-X--
Index build2)X--
Unlimited number of scans3)-X-
Total ordering--X-
Multiple range scan--X-
NDB ODBC range bounds---X
Logging---X
  1. No locking and bounds must be on non-nullable key attributes.
  2. Currently table must be empty when index is created.
  3. Currently limited to 11 simultaneous per fragment.