A sparse 3D map: (rowkey, column-name, timestamp) to data. No other indexing, not a relational database. rowkey can be any byte sequence.
Efficient operations
- Single row lookup. Scan row ranges/ prefixes.
- Scan column, timestamp ranges
Advantages
- Scales easily, shards as necessary (during ‘compaction’ times). Shards are called tablets.
- Shards may be overloaded before the unpredictable compaction times, so intelligent key distribution may be desirable.
Disadvantages
- Columns can be grouped into column family. Only column families are specified at the time of creation. Columns are created as needed.