#include <NdbDictionary.hpp>
Inheritance diagram for NdbDictionary::Table:
TableSize
When calculating the data storage one should add the size of all attributes (each attributeconsumes at least 4 bytes) and also an overhead of 12 byte. Variable size attributes (not supported yet) will have a size of 12 bytes plus the actual data storage parts where there is an additional overhead based on the size of the variable part.
An example table with 5 attributes: one 64 bit attribute, one 32 bit attribute, two 16 bit attributes and one array of 64 8 bits. This table will consume 12 (overhead) + 8 + 4 + 2*4 (4 is minimum) + 64 = 96 bytes per record. Additionally an overhead of about 2 as page headers and waste should be allocated. Thus, 1 million records should consume 96 MBytes plus the overhead 2 MByte and rounded up to 100 000 kBytes.
|
Constructor
|
|
Copy constructor
|
|
Add a column definition to a table
|
|
Check if table is equal to some other table |
|
Get column definition via index in table.
|
|
Get column definition via name.
|
|
Get column definition via index in table.
|
|
Get column definition via name.
|
|
Get fragmentation type |
|
Get frm file stored with this table |
|
Get KValue (Hash parameter.) Only allowed value is 6. Later implementations might add flexibility in this parameter. |
|
If set to false, then the table is a temporary table and is not logged to disk. In case of a system restart the table will still be defined and exist but will be empty. Thus no checkpointing and no logging is performed on the table. The default value is true and indicates a normal table with full checkpointing and logging activated. |
|
Get MaxLoadFactor (Hash parameter.) This value specifies the load factor when starting to split the containers in the local hash tables. 100 is the maximum which will optimize memory usage. A lower figure will store less information in each container and thus find the key faster but consume more memory. |
|
Get MinLoadFactor (Hash parameter.) This value specifies the load factor when starting to shrink the hash table. It must be smaller than MaxLoadFactor. Both these factors are given in percentage. |
|
Get table name |
|
Get number of columns in the table |
|
Get number of primary keys in the table |
|
Get object status Implements NdbDictionary::Object. |
|
Get table object type |
|
Get object version Implements NdbDictionary::Object. |
|
Get name of primary key |
|
Get table id |
|
Assignment operator, deep copy
|
|
Set fragmentation type |
|
Set frm file to store with this table |
|
Set KValue (Hash parameter.) Only allowed value is 6. Later implementations might add flexibility in this parameter. |
|
|
|
Set MaxLoadFactor (Hash parameter.) This value specifies the load factor when starting to split the containers in the local hash tables. 100 is the maximum which will optimize memory usage. A lower figure will store less information in each container and thus find the key faster but consume more memory. |
|
Set MinLoadFactor (Hash parameter.) This value specifies the load factor when starting to shrink the hash table. It must be smaller than MaxLoadFactor. Both these factors are given in percentage. |
|
Name of table
|
|
Set table object type |