MyRocks Column Families

MyRocks stores data in column families. These are similar to tablespaces. By default, the data is stored in the default column family.

One can specify which column family the data goes to by using index comments:

 INDEX index_name(col1, col2, ...) COMMENT 'column_family_name'

If the column name starts with rev:, the column family is reverse-ordered.

Reasons for Column Families

Storage parameters like

  • Bloom filter settings
  • Compression settings
  • Whether the data is stored in reverse order

are specified on a per-column family basis.

Creating a Column Family

When creating a table or index, you can specify the name of the column family for it. If the column family doesn't exist, it will be automatically created.

Dropping a Column Family

There is currently no way to drop a column family. RocksDB supports this internally but MyRocks doesn't provide any way to do it.

Setting Column Family Parameters

Use these variables:

rocksdb_override_cf_options

This parameter allows one to override column family options for specific column families. Here is an example of how to set option1=value1 and option2=value for column family cf1, and option3=value3 for column family cf3:

rocksdb_override_cf_options='cf1={option1=value1;option2=value2};cf2={option3=value3}'

One can check the contents of INFORMATION_SCHEMA.ROCKSDB_CF_OPTIONS to see what options are available.

Options that are frequently configured are:

Examining Column Family Parameters

See the INFORMATION_SCHEMA.ROCKSDB_CF_OPTIONS table.

Comments

Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.