README.md

    LICENSE Language Build Status Go Report Card GitHub release GitHub release date CircleCI Status Coverage Status GoDoc

    What is TiDB?

    TiDB ("Ti" stands for Titanium) is an open-source NewSQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability.

    • Horizontal Scalability

      TiDB expands both SQL processing and storage by simply adding new nodes. This makes infrastructure capacity planning both easier and more cost-effective than traditional relational databases which only scale vertically.

    • MySQL Compatible Syntax

      TiDB acts like it is a MySQL 5.7 server to your applications. You can continue to use all of the existing MySQL client libraries, and in many cases, you will not need to change a single line of code in your application. Because TiDB is built from scratch, not a MySQL fork, please check out the list of known compatibility differences.

    • Distributed Transactions

      TiDB internally shards table into small range-based chunks that we refer to as "Regions". Each Region defaults to approximately 100 MiB in size, and TiDB uses an optimized Two-phase commit to ensure that Regions are maintained in a transactionally consistent way.

    • Cloud Native

      TiDB is designed to work in the cloud -- public, private, or hybrid -- making deployment, provisioning, operations, and maintenance simple.

      The storage layer of TiDB, called TiKV, is a Cloud Native Computing Foundation (CNCF) Graduated project. The architecture of the TiDB platform also allows SQL processing and storage to be scaled independently of each other in a very cloud-friendly manner.

    • Minimize ETL

      TiDB is designed to support both transaction processing (OLTP) and analytical processing (OLAP) workloads. This means that while you may have traditionally transacted on MySQL and then Extracted, Transformed and Loaded (ETL) data into a column store for analytical processing, this step is no longer required.

    • High Availability

      TiDB uses the Raft consensus algorithm to ensure that data is highly available and safely replicated throughout storage in Raft groups. In the event of failure, a Raft group will automatically elect a new leader for the failed member, and self-heal the TiDB cluster without any required manual intervention. Failure and self-healing operations are also transparent to applications.

    For more details and latest updates, see TiDB docs and release notes.

    Community

    You can join these groups and chats to discuss and ask TiDB related questions:

    In addition, you may enjoy following:

    For support, please contact PingCAP.

    Quick start

    To start using TiDB

    See Quick Start Guide.

    To start developing TiDB

    See Get Started chapter of TiDB Dev Guide.

    Contributing

    The community repository hosts all information about the TiDB community, including how to contribute to TiDB, how TiDB community is governed, how special interest groups are organized, etc.

    contribution-map

    Contributions are welcomed and greatly appreciated. See Contribution to TiDB for details on typical contribution workflows. For more contributing information, click on the contributor icon above.

    Adopters

    View the current list of in-production TiDB adopters here.

    Case studies

    Architecture

    architecture

    License

    TiDB is under the Apache 2.0 license. See the LICENSE file for details.

    Acknowledgments

    项目简介

    TiDB is an open source distributed HTAP database compatible with the MySQL protocol

    🚀 Github 镜像仓库 🚀

    源项目地址

    https://github.com/pingcap/tidb

    发行版本 106

    tidb-server v5.0.6

    全部发行版

    贡献者 308

    全部贡献者

    开发语言

    • Go 97.2 %
    • Shell 1.3 %
    • Yacc 1.2 %
    • TypeScript 0.2 %
    • Makefile 0.1 %