HTAP Summit 2024 session replays are now live!Access Session Replays

Achieving Better Price to Performance for a Distributed Database – Tau T2A or AWS Graviton2

As Google Cloud announced their first Arm64 CPU, Tau T2A, for scale-out, cloud-native workloads, we conducted a quick benchmarking test to see the price-performance ratio when running TiDB on Google ARM 64 and AWS Arm 64.

Improve Performance and Data Availability with Elastic Block Store

In this blog, we will explain that with careful selection of Elastic Block Store (EBS) types and clever optimizations, deploying DBaaS on EBS can achieve even better performance than on local disks.

Troubleshooting Memory Leaks: Deep Dive into Common Heap Profilers

Heap profilers are powerful runtime tools to pinpoint memory leak issues in applications. This post describes how some common heap profilers are used and implemented.

Time Synchronization in Distributed Systems: TiDB’s Timestamp Oracle

This post describes TiDB’s timestamp oracle (TSO), how it delivers time services, and its pros and cons.

Evaluating TiDB against the MySQL Test Suite

Since TiDB is a distributed SQL database compatible with MySQL, can we use MySQL's bug history to improve the quality of TiDB? With this in mind, Morgan from our engineering team led the exploration of using MySQL Test Suite to evaluate TiDB. The results were rewarding: 154 bugs in 4 months and improved test coverage.

How I Trained a Machine Learning Model in Pure SQL on a NewSQL Database

This post describes how a TiDB contributor trained a machine learning model in pure SQL on TiDB.

TiDB Operator Source Code Reading (V): Backup and Restore

Author: Elon Li (Software Engineer at PingCAP) Transcreator: Ran Huang; Editor: Tom Dewan Previous articles in this series: In our last article, we learned how to implement a component control loop in TiDB Operator. This time, I’ll move on to a new but important topic: backup and restore. Backup and restore are two of the most important and frequently used operations when […]

Implementing Chaos Engineering in K8s: Chaos Mesh Principle Analysis and Control Plane Development

This post describes the practice of Chaos Engineering in K8s clusters, discusses important Chaos Mesh features through analysis of its source code, and explains how to develop Chaos Mesh's control plane with code examples.

How to Troubleshoot RocksDB Write Stalls in TiKV

Author: Mike Barlow (Solutions Architect at PingCAP) Editors: Jose Espinoza, Tina Yang, Tom Dewan TiDB, an open-source, distributed NewSQL database, can experience write performance degradation for several reasons. This troubleshooting guide discusses write performance degradation related to the RocksDB built-in write stall feature. RocksDB is an open-source, mature, and high-performance key-value store. It is optimized for fast, low latency […]

TiDB Operator Source Code Reading (IV): Implementing a Component Control Loop

This post explains how TiDB Operator implements a component control loop by taking PD as an example. You'll learn PD and other component's lifecycle management.

How WebAssembly Powers Databases: Build a UDF Engine with WASM

WebAssembly is a binary instruction format designed for secure and near-native execution in the sandboxed environment. This post shares how we use WebAssembly to build a user-defined function engine for TiDB.

Raft and High Availability

Raft is a consensus-based method that distributes data in such a way that it creates and maintains a high availability environment for your database. This article introduces the general components and mechanisms of Raft, and how distributed databases such as TiDB and TiKV use Raft to achieve high availability and consistency.
Previous1239Next