ZippyDB Design
Explore the design of ZippyDB, a key-value store built on RocksDB to enable scalable, durable, and efficient metadata management in Facebook's Tectonic system. Understand its architecture, including shard management, replication mechanisms, consistency models, and how it supports low latency and high availability in distributed environments.
In Tectonic design, metadata management is critical in achieving our goals of scalability, availability, and durability. A special-purpose key-value store (ZippyDB) is the cornerstone of our Metadata Store. In this lesson, we’ll focus on ZippyDB’s design. Following is the overall architecture of the Tectonic.
ZippyDB–the key-value store
get, put, del, etc.) because of the underlying RocksDB storage engine, ZippyDB enables the system to perform a large amount of write operations efficiently while providing good performance for the read workload.
Note: RocksDB is primarily an efficient storage engine that can be embedded in other applications as a library. It frees the programmers from the messy details of efficient storage and lets them concentrate on their specific problems. RocksDB is optimized for write-heavy workload by using log-structured storage. The read performance is good because of the use of
. Bloom filters This is is a probabilistic data structure that saves space and can be used to determine whether an element is a part of a set or not.
ZippyDB uses basic key-value operations,