NexusDB uses a Data Dictionary for each table to store information about its structure.  The Data Dictionary is a class that contains field definitions, index descriptors, sub-engine registration, default values and data block options.  The following diagram illustrates the parts of the Data Dictionary:


The Data Dictionary is the most powerful and flexible way to create and restructure tables in NexusDB.  NexusDB uses the Data Dictionary class internally to manage table structures; it is stored in and retrieved from the table itself.  The Data Dictionary is the only way sub-engine registration can be specified when creating or restructuring a table.  Sub-engines are discussed in the next section.


The BlockSize of a table determines the maximum size of the records you can store, and the maximum size of index keys. The default of 4kb is normally the best choice for speed. It is recommended to only increase BlockSize if you have need of large fields.

As default, a table is created on disk with the minimum number of blocks required. The FileDescriptor's InitialSize property can be increased before creation, if it is desired to preallocate diskspace for the table. After the table has been created, the FileDescriptor's GrowSize controls how many blocks is added to the file size when it needs to expand. Increase these properties to keep the file fragmentation down. InitialSize and GrowSize are expressed as numbers of blocks.

Home | Site Contents | Documentation | NexusDB Manual V4 | Architecture and Concepts | NexusDB Concepts