Building Pinterest’s new wide column database using RocksDB

- Pinterest built a wide column database using RocksDB to migrate use cases from UserMetaStore.
- The data model consists of items, which have a column name and a list of cells.
- Cells contain a timestamp and column value.
- The underlying storage engine is RocksDB, using a simple key-value structure.
- The storage model concatenates the row key, column name, and timestamp to create the RocksDB key.
- The database supports APIs for getting rows, specifying row key, column names, and number of versions.
- Versioned values allow for storing multiple versions of data for the same key and column.
- Support for pagination allows for retrieving a limited number of columns at a time.
- The database also supports a Time to Live (TTL) feature, where expired values are physically deleted.
