Company
Date Published
Author
Franck Pachot
Word count
1969
Language
English
Hacker News points
None

Summary

YugabyteDB is a distributed SQL database that offers sharding and partitioning features to scale-out its data storage at the row level. It has three levels of physical organization: query-level table partitioning, storage-level sharding, and file-level SST (Sorted Sequence Table) organization. Sharding is used for horizontal partitioning in a shared-nothing architecture, while partitioning is a general term that can also refer to vertical partitioning or data placement. YugabyteDB provides both sharding and partitioning features to distribute data across multiple nodes, allowing for load balancing, scalability, and high availability. The database uses a distributed storage layer that manages where rows or index entries must be written or read, providing automated organization of data at the query level. It also supports table partitioning, which allows for more control over data placement and can be used to enforce information lifecycle management, constrain data to specific locations, and reduce cross-AZ, cross-region, or cross-cloud provider network traffic. Global indexes are necessary in OLTP applications to enforce unique constraints on natural keys and ensure predictable response time. YugabyteDB combines sharding and partitioning features to provide a scalable and high-performance database solution that can be exposed as one application with transparent connectivity to any node.