A distributed, transactional key-value database built in Rust, offering ACID compliance and horizontal scalability.
TiKV is a distributed transactional key-value database built in Rust, providing ACID-compliant transactions and horizontal scalability. It solves the problem of maintaining data consistency and availability in large-scale distributed environments, serving as the storage layer for TiDB and other systems. Originally created by PingCAP, it supports geo-replication and coprocessor-based distributed computing.
Developers and organizations building scalable, consistent distributed systems, such as cloud-native applications, large-scale databases, or platforms requiring high availability and transactional guarantees. It is particularly relevant for those using or integrating with TiDB.
Developers choose TiKV for its strong consistency, scalability, and open-source nature, offering a reliable alternative to proprietary distributed databases. Its integration with TiDB and support for ACID transactions make it a compelling choice for hybrid transactional/analytical workloads.
Distributed transactional key-value database, originally created to complement TiDB
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses the Raft consensus algorithm and Placement Driver (PD) to support data replication across geographical locations, ensuring high availability and strong consistency as highlighted in the README.
Easily scales to 100+ TBs of data through PD and carefully designed Raft groups, making it suitable for large-scale distributed systems, per the README's emphasis.
Provides externally-consistent distributed transactions similar to Google's Spanner, offering data integrity for complex workloads, as noted in the feature list.
Implements a coprocessor framework for distributed computing, akin to HBase, which enhances performance for analytical queries without moving data, as described in the README.
Requires managing multiple components like PD and TiKV nodes, making setup and maintenance non-trivial, as evidenced by the multi-step quick start guides in the README.
While TiKV provides key-value APIs, full SQL functionality depends on TiDB integration, adding an extra layer for applications needing relational queries, which the README acknowledges as optimized for TiDB.
Designed for petabyte-scale systems, it may be overkill for small datasets, consuming more resources than simpler key-value stores like etcd or Redis.