Question

In BigTable/GFS and Cassandra terminology, what is the definition of a SSTable?

Was it helpful?

Solution

Sorted Strings Table (borrowed from google) is a file of key/value string pairs, sorted by keys

OTHER TIPS

"An SSTable provides a persistent,ordered immutable map from keys to values, where both keys and values are arbitrary byte strings. Operations are provided to look up the value associated with a specified key, and to iterate over all key/value pairs in a specified key range. Internally, each SSTable contains a sequence of blocks (typically each block is 64KB in size, but this is configurable). A block index (stored at the end of the SSTable) is used to locate blocks; the index is loaded into memory when the SSTable is opened. A lookup can be performed with a single disk seek: we first find the appropriate block by performing a binary search in the in-memory index, and then reading the appropriate block from disk. Optionally, an SSTable can be completely mapped into memory, which allows us to perform lookups and scans without touching disk."

A tablet is stored in the form of SSTables.

SSTable (directly mapped to GFS) is key-value based immutable storage. It stores chunks of data, each is of 64KB.

Definitions:

  • Index of the keys: key and starting location
  • Chunk is a storage unit in GFS, replica management are by chunk
  • SSTable (engl. Sorted Strings Table) is a file of key/value string pairs, sorted by keys.

  • An SSTable provides a persistent,ordered immutable map from keys to values, where both keys and values are arbitrary byte strings.

  • Internally, each SSTable contains a sequence of blocks (typically
    each block is 64KB in size, but this is configurable).

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top