Skip to main content
The database configuration defines an in-memory data model including tables, fields, and joins, using the IModelConfigurer interface.

What is the IModelConfigurer interface?

Configuration is handled through a Spring bean that implements the IModelConfigurer interface. The configureDatabase() method receives an IDatabaseConfigurator that defines tables and joins. See the Javadoc for the complete list of available methods.

How to create an in-memory table

  • Use IDatabaseConfigurator.addTable() with a StoreDescription to create a table.
  • Use asKeyField() to mark fields as part of the primary key.
The following example creates a table with three fields:

How to add a join between tables

Use IDatabaseConfigurator.addJoin() with a ReferenceDescription to define a join between tables. The following example creates a join from MyStore to Country:

How to customize an existing database

Applications with a predefined database schema can customize tables and joins using the IDatabaseConfigurator interface.

How to edit a table

Use IDatabaseConfigurator.table() to get an ITableConfigurator for modifying an existing table. An existing table can be modified in several ways:

How to add a field

Add a new field to an existing table:

How to change a field type

Change the type of a field and provide a transformation function:

How to change a default value

Change the default value of a field:

How to configure partitioning

Configure or remove partitioning on a table:

How to add or remove a secondary index

Modify secondary indexes on a table:

How to set the chunk size

Set the chunk size for a new table. The value is rounded up to the next power of 2:

How to set a duplicate key handler

Configure how duplicate keys are handled during data loading:

How to set the remove unknown key behavior

Configure the behavior when removing a record with a key that does not exist:

How to enable update only if different

Enable this option to skip updating records when the new values are identical to the existing ones:

How to enable index compression

Enable index compression to reduce memory usage at the cost of additional computation for decompression:

How to set the NUMA selector description

Configure the NUMA selector description:

How to change vector fields properties

Change the default properties of a vector field:
  • size
  • blockSize
  • delimiter
  • swapping

How to change vector fields swapping

Change the default swapping of a vector field: