TiKV, which entered the CNCF Sandbox in August 2018, is an open source distributed transactional key-value database built in Rust. The project serves as a unifying distributed storage layer that supports strong data consistency, distributed transactions, horizontal scalability, and cloud native architecture.
“There is a huge need for an open-source, unifying distributed storage layer that supports cloud native architectures,” said Siddon Tang, Chief Engineer at PingCAP and TiKV project lead. “Since joining CNCF, not only have our user adoption and project maturity been steadily improving, but we’ve navigated a multitude of new real-world scenarios. We look forward to the growth and development to come as we move into the Incubator.”
TiKV was designed from the ground up to be cloud native, and it integrates well into existing CNCF ecosystems. The project uses Prometheus for metrics reporting, and gRPC for communication. It can also be deployed on top of Kubernetes with an operator to ease installation, upgrades and maintenance.
Since joining CNCF, TiKV has been adopted by hundreds of companies in production, including several CNCF members such as JD.com, UCloud, and PingAn Technology. The team also announced General Availability of TiKV 2.1 with the help of 39 new contributors.
TiKV currently serves millions of users in industries including banking, fintech, insurance, ridesharing and gaming. Some of the largest internet companies, most notably XiaoMi, Bank of Beijing, Zhihu, Shopee, BookMyShow and many others, are using TiKV, both with and without TiDB, a stateless SQL layer that speaks the MySQL protocol, for mission critical systems. Additionally, several storage systems are built on top of TiKV, including three Redis-on-TiKV projects, Tidis, Titan, Titea, and a Prometheus-metrics-in-TiKV project, TiPrometheus.
“The community needs more cloud native storage options that supports consistency and scalability, and TiKV offers this without dependency on any distributed file system,” said Chris Aniszczyk, CTO/COO of the Cloud Native Computing Foundation. “Since it joined CNCF, we’ve seen impressive growth of the project in and outside of China. As it moves into incubation, we are excited to see this continue as new contributors continue to add new capabilities.”
TiKV was originally developed at PingCAP in 2016, and today includes contributions from Samsung, Mobike, Zhihu, Ele.me, Tencent Cloud, and UCloud.
Main TiKV Features:
- Geo-Replication – uses Raft and the Placement Driver (PD) to support Geo-Replication.
- Horizontal scalability – with PD and carefully designed Raft groups, TiKV excels in horizontal scalability and can easily scale to 100+ TBs of data.
- Consistent distributed transactions – similar to Google’s Spanner, TiKV supports externally-consistent distributed transactions.
- Coprocessor support – similar to HBase, TiKV implements a coprocessor framework to support distributed computing.
- Cooperates with TiDB – thanks to the internal optimization, TiKV and TiDB can work together to be a compelling database solution with high horizontal scalability, externally-consistent transactions, support for RDBMS, and NoSQL design patterns.
- 247 contributors
- 5,120 GitHub stars
- 54 releases
- 3,654 commits
- 743 forks
As a CNCF hosted project, joining incubating technologies like gRPC, rkt, CNI, Jaeger, Notary, TUF, Vitess, NATS, Linkerd, Helm, Rook, Harbor, etcd, Open Policy Agent and CRI-O, TiKV is part of a neutral foundation aligned with its technical interests, as well as the larger Linux Foundation, which provides governance, marketing support, and community outreach.
Every CNCF project has an associated maturity level: sandbox, incubating, or graduated project. For more information on what qualifies a technology for each level, please visit the CNCF Graduation Criteria v.1.1.
For more on TiKV, please visit https://github.com/tikv/tikv.