Skip to main content

Module descriptor

Module descriptor 

Source
Expand description

Database column descriptors

Templates classifying column families along three axes:

  • Write pattern: RANDOM (writes scatter across the keyspace) vs SEQUENTIAL (writes append to the end). Drives compaction priority (OldestSmallestSeqFirst vs OldestLargestSeqFirst) and write-buffer sizing.
  • Dataset size: plain (level compaction, MB-scale files) vs _SMALL (universal compaction, KB-scale files and blocks).
  • Retention: plain (unbounded) vs _CACHE (FIFO eviction bounded by limit_size and ttl).

Each CF in maps::MAPS picks one template and overrides individual knobs as needed.

Structsยง

Descriptor ๐Ÿ”’
Column Descriptor

Enumsยง

CacheDisp ๐Ÿ”’
Cache Disposition

Staticsยง

BASE ๐Ÿ”’
Base descriptor supplying common defaults to all derived descriptors.
DROPPED ๐Ÿ”’
Tombstone descriptor for columns which have been or will be deleted. Descriptors of this kind are explicitly set to delete data. Care should be taken when using this as it inhibits downgrading and other migrations.
IGNORED ๐Ÿ”’
Placeholder descriptor for existing columns which have no description. Automatically generated on db open; should not appear in any schema.
RANDOM ๐Ÿ”’
Descriptor for large datasets where writes scatter across the keyspace.
RANDOM_CACHE ๐Ÿ”’
Descriptor for large persistent caches where writes scatter across the keyspace. Oldest entries are evicted by FIFO compaction once limit_size is reached.
RANDOM_SMALL ๐Ÿ”’
Descriptor for small datasets where writes scatter across the keyspace.
RANDOM_SMALL_CACHE ๐Ÿ”’
Descriptor for small persistent caches where writes scatter across the keyspace. Oldest entries are evicted by FIFO compaction once limit_size is reached.
SEQUENTIAL ๐Ÿ”’
Descriptor for large datasets where writes append to the end of the keyspace.
SEQUENTIAL_CACHE ๐Ÿ”’
Descriptor for large persistent ring/queue caches where writes append to the end of the keyspace. Lowest keys are evicted off the front once limit_size is reached.
SEQUENTIAL_SMALL ๐Ÿ”’
Descriptor for small datasets where writes append to the end of the keyspace.
SEQUENTIAL_SMALL_CACHE ๐Ÿ”’
Descriptor for small persistent ring/queue caches where writes append to the end of the keyspace. Lowest keys are evicted off the front once limit_size is reached.