tikv/tikv

Distributed transactional key-value database, originally created to complement TiDB

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 21 minutes ago
Added to GitGenius on September 3rd, 2026
Created on December 31st, 2015
Open Issues & Pull Requests: 1,806 (+0)
GitHub issues: Enabled
Number of forks: 2,336
Total Stargazers: 16,833 (+0)
Total Subscribers: 296 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

TiKV is a distributed transactional key-value database built in Rust that provides ACID-compliant transactions alongside classical key-value APIs.

TiKV addresses the need for a key-value store that maintains strong consistency guarantees across distributed systems. It implements the Raft consensus algorithm for data consistency, with consensus state stored in RocksDB. The transaction model draws inspiration from Google's Percolator with performance improvements, supporting snapshot isolation, snapshot isolation with locks, and externally consistent reads and writes. The Placement Driver component enables automatic data sharding and migration, allowing the system to scale horizontally to handle large datasets.

Organizations should consider TiKV if they need a distributed key-value store with transactional guarantees rather than eventual consistency. It suits projects requiring ACID compliance at scale, particularly those that can benefit from its integration with TiDB for a combined HTAP database solution. The system excels at horizontal scalability and geo-replication through Raft and the Placement Driver. TiKV also implements a coprocessor framework similar to HBase for distributed computing tasks.

The project maintains comprehensive documentation including deployment guides and deep-dive materials on its design. It operates under formal governance structures and provides contribution guidelines for developers interested in participating. The codebase is written in Rust, which influences both its performance characteristics and the skill set required for contributions or maintenance.