Book a Demo Start Instantly

10x Performance Improvement for Expression Evaluation Made Possible by Vectorized Execution and the Community

We vectorized 360+ built-in functions along with the TiDB community. Vectorized execution has greatly improved the expression evaluation performance. Some functions even achieved 10x performance. Here is our vectorization story.

Building a Large-scale Distributed Storage System Based on Raft

This post introduces the PingCAP team's firsthand experience in designing a large-scale distributed storage system based on the Raft consensus algorithm.

How We Compiled a Golang Database in the Browser Using WebAssembly

We compiled a Golang database (TiDB) into an in-browser database using WebAssembly (Wasm). This post introduces why and how we built an in-browser database.

TiDB in the Browser: Running a Golang Database on WebAssembly

This post introduces how you can run TiDB directly in a web browser, how it is possible, and what the limitations are.

Safety First! Common Safety Pitfalls in Distributed Databases Found by Jepsen Tests

This post introduces why Jepsen is important to the distributed database industry, how it works, common issues found, how we use Jepsen with TiDB, and a short summary of all problems Jepsen has found.

How TSQ Becomes a Performance Bottleneck for TiKV in AWS ARM Environment

Explore into Linux kernel to find out how TSQ becomes a performance bottleneck for TiKV in an AWS ARM environment.

Porting TiDB to Arm64 for Greater Flexibility

This article describes how PingCAP compiled and benchmarked TiDB on the Amazon Web Services (AWS) Arm64 platform.

Migrating the TiKV Rust Client from Futures 0.1 to 0.3

This post introduces Nick's experience in migrating the TiKV Rust client from Futures 0.1 to 0.3.

Why Benchmarking Distributed Databases Is So Hard

Benchmarks are hard to get right, and many articles touting benchmarks are actually benchmarketing, showcasing skewed outcomes to sell products. This post introduces some of the motivations for benchmarking and the common tools, and discusses a few things to keep in mind when benchmarking.

The KOST Stack: An Open-Source Cloud-Native Hybrid Database Stack

A new infrastructure pattern is emerging called the KOST stack (Kubernetes, Operator, Spark, TiDB). This blog post introduces each component of the KOST stack and cloud-native HTAP in the wild.

TiDB Passes Jepsen Test for Snapshot Isolation and Single-Key Linearizability

TiDB's first official Jepsen Test report is published. This post introduces some additional context to the test results and PingCAP's thoughts on what's next.

Design and Implementation of Golang Failpoints

This post introduces design and implementation of Golang Failpoint.