Why do we divide into PrimarySubkeyColumnFamily and MetadataColumnFamily? #2729
-
Method 1: Currently, for hash data, we store TTL and other metadata in the MetadataColumnFamily, while the fields are stored in the PrimarySubkeyColumnFamily. The hget operation queries both ColumnFamilies separately. Method 2: We still store the metadata and the fields in different keys, but within a single ColumnFamily. Since they are stored adjacently, the hget operation will produce fewer I/O operations. Why did we choose Method 1? I couldn't find any related documentation, and I'm looking forward to your response. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Hi, thank you for your question. If we store metadata and subkey in a single column family, SCAN operations will be inefficient (also for SCAN-related operations, e.g. key counting). However, we are welcome if you have better ideas, or want to propose another encoding. |
Beta Was this translation helpful? Give feedback.
Hi, thank you for your question.
If we store metadata and subkey in a single column family, SCAN operations will be inefficient (also for SCAN-related operations, e.g. key counting).
However, we are welcome if you have better ideas, or want to propose another encoding.