TECH

TiKV : The Distributed, Transactional Key-Value Database

TiKV is an open-source, distributed, and transactional key-value database designed to provide high performance, scalability, and consistency.

Built in Rust and inspired by technologies like Google’s BigTable, Spanner, and Percolator, TiKV was developed by PingCAP as a storage layer for TiDB, a MySQL-compatible HTAP database.

It is fully ACID-compliant and supports both classical key-value APIs and transactional APIs.

Key Features

  1. Geo-Replication: TiKV uses the Raft consensus algorithm and a Placement Driver (PD) to enable geo-replication and ensure data consistency across multiple nodes.
  2. Horizontal Scalability: TiKV can scale to hundreds of terabytes of data by splitting data into Regions that are automatically balanced across nodes using PD.
  3. Distributed Transactions: TiKV supports externally consistent distributed transactions through a two-phase commit protocol, similar to Google Spanner.
  4. Coprocessor Framework: Inspired by HBase, TiKV allows users to push computation to the storage layer for distributed processing.
  5. Integration with TiDB: TiKV works seamlessly with TiDB, enabling a hybrid transactional and analytical processing (HTAP) solution.

TiKV’s architecture is built around several key components:

  • Placement Driver (PD): Acts as the cluster manager, handling tasks like load balancing, auto-sharding, and replication.
  • Store: Each node contains one or more Stores backed by RocksDB instances for data storage and Raft logs.
  • Region: The basic unit of data movement, each Region is replicated across multiple nodes to form a Raft group for fault tolerance.
  • Raft Consensus Algorithm: Ensures consistency across replicas by electing a leader for write operations and synchronizing data changes among followers.

TiKV achieves high scalability through its multi-Raft architecture, where each Region can be split or merged dynamically based on size thresholds.

This ensures efficient resource utilization and balanced workloads across nodes. By storing Raft logs and Region data in separate RocksDB instances, TiKV optimizes I/O performance.

TiKV is ideal for applications requiring:

  • Strong consistency
  • Distributed ACID transactions
  • High horizontal scalability
  • Geo-replication

As a graduated project of the Cloud Native Computing Foundation (CNCF), TiKV is widely adopted in production environments for its reliability and robust feature set.

Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

HikPwn : Simple Scanner For Hikvision Devices With Basic Vulnerability Scanning

HikPwn: Comprehensive Guide to Scanning Hikvision Devices for Vulnerabilities If you’re searching for an efficient…

19 hours ago

Comments in Bash Scripts

What Are Bash Comments? Comments in Bash scripts, are notes in your code that the…

6 days ago

Shebang (#!) in Bash Script

When you write a Bash script in Linux, you want it to run correctly every…

7 days ago

Bash String Concatenation – Bash Scripting

Introduction If you’re new to Bash scripting, one of the first skills you’ll need is…

7 days ago

Learn Bash Scripting: How to Create and Run Shell Scripts for Beginners

What is Bash Scripting? Bash scripting allows you to save multiple Linux commands in a file and…

1 week ago

Bash if…else Statement – Bash Scripting

When it comes to automating tasks on Linux, Bash scripting is an essential skill for both beginners…

1 week ago