Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
5.0.0, 4.14.3
-
None
-
None
-
None
Description
It is known that IMMUTABLE_STORAGE_SCHEME = SINGLE_CELL_ARRAY_WITH_OFFSETS leads to performance improvement and storage saving. As the name implies this storage scheme is currently supported for immutable tables only. Supporting the SINGLE_CELL_ARRAY_WITH_OFFSETS storage format for mutable table requires reading existing rows for before mutating them, i.e., read-modify-write. However, this storage scheme can be used for mutable global index tables without any additional IO operation since for every index table update, we always read the corresponding data table row and generate the full index row from the current state of the data table row and the pending mutation on this row. This full index row can be stored using the SINGLE_CELL_ARRAY_WITH_OFFSETS storage format even though the data table can continue using a mutable storage format. This will allow index tables to enjoy the performance improvement and storage saving due to this storage format.
Gokcen Iskender: We can also repurpose this Jira and add immutable tables as well. We can say that the Immutable tables can have ONE_CELL_PER_COLUMN storage format and have indexes that have SINGLE_CELL_ARRAY_WITH_OFFSETS.
Attachments
Attachments
Issue Links
- links to