What is an SSTable?

2020-05-11 06:28发布

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

4条回答
仙女界的扛把子
2楼-- · 2020-05-11 07:07

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
查看更多
ら.Afraid
3楼-- · 2020-05-11 07:16

"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."

查看更多
ら.Afraid
4楼-- · 2020-05-11 07:16
  • 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).

查看更多
▲ chillily
5楼-- · 2020-05-11 07:29

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

查看更多
登录 后发表回答