OceanBase Database stores data in macroblocks. Each table can contain multiple macroblocks, and each macroblock occupies 2 MB of space. A macroblock contains one or more microblocks, and each microblock stores one or more rows.
Table organization
OceanBase Database uses the clustered index table model to organize tables. Data is stored in tables based on the order of their storage keys. Data rows are inserted into tables based on the order of their storage keys.
The same column order applies to all rows in a table. OceanBase Database stores data in a table in the column order that is generated when the table is initially created. New columns are added to the table as the last data columns.
Row storage
Rows are stored in microblocks. In most cases, all columns of a row are stored together. If a table contains large object (LOB) columns, the size of these columns may exceed that of a macroblock. In this case, the extra data spills over to other macroblocks.
Null value storage
OceanBase Database stores null values and uses one byte as a marker to indicate whether the value in a column is null.