A high performing shard-enabled distributed database highly compatible with MySQL
Tencent Distributed SQL (TDSQL) is a comprehensive distributed database solution presented by Tencent. It features strong consistency, high availability and performance, global deployment architecture, distributed horizontal scaling, and enterprise-grade security. It also comes with services such as intelligent DBA, automated operations, and monitoring and alarming. At present, it proudly offers database services in both public and private clouds to over 500 governmental and organizational customers in various fields such as banking, insurance, securities, internet finance, billing, third-party payment, IoT, Internet+, and government affairs. Thanks to its quality products and services, TDSQL has earned multiple international and national accreditations and recognition from customers and industries.
You can automatically split a large table horizontally (i.e. sharding) in the database by setting the shardkey when the table is created. The TDSQL system will automatically distribute the written data evenly to different physical shards based on the hash scheme, and queries will also be automatically aggregated to return results. The sharding process is imperceptible to users, they simply see the complete table and do not need to concern themselves with the backend workings.
TDSQL is compatible with frequently used MySQL syntax elements, including MySQL's language structures, character sets, time zones, data types, common functions, preprocessing protocols, sorts, joins (JOIN), indices, partitions, transactions, control commands as well as common DDL, DML, and DCL commands and database access APIs.
Due to the particularity of the distributed architecture, it is virtually impossible to balance both advanced functionality and high performance for databases. To address this issue, TDSQL provides three table creation solutions, featuring (distributed) transaction characteristics, globally unique numerical sequences, and JSON format support, effectively filling the distributed architecture gaps and enabling more flexible development solutions.
At present, one single shard can sustain up to 6 TB of storage. If the performance or capacity is insufficient, you can easily scale up with just a few clicks in the console. You do not need to worry about data migration, balancing, and route switching within the distributed system during the migration process, the IP stays unchanged, and the service will be interrupted for just a few seconds upon automatic switch. You only need to make sure that your business has a reconnection mechanism.
TDSQL adopts a master-slave architecture by default, which ensures over 99.95% availability. It supports strong synchronous replication for strong data consistency where an application transaction is responded to only after the data written by the business system is synced to the slave, ensuring complete master-slave data consistency and eliminating the possibility of data loss or corruption. At present, the performance of strong synchronous replication is basically equal to that of asynchronous replication.
Based on deeply customized and optimized MySQL kernel, TDSQL greatly outperforms MySQL. It supports read-write separation in three schemes, effectively ensuring development flexibility while providing read extensibility. It boasts optimized thread pool scheduling algorithms with better heavy load performance. In addition, it is equipped with PCI-E SSDs that feature an IO throughput three times of SATA disks, making it easier to meet the performance needs of your business.
A production-ready TDSQL instance can be started and connected to in minutes with just a few clicks in the TDSQL console. The console comes with frequently used database OPS operations that facilitate refined management of your database. Moreover, it is capable of displaying common system monitoring data and performance analysis data to help you quickly identify and troubleshoot database issues.
TDSQL supports native JSON types. Specifically, it doesn't store JSON values as strings; instead, it uses an internal binary format that allows for quick reading of document elements, which will automatically validate JSON texts when they are inserted or updated in JSON columns. In other words, you can think of TDSQL as a NoSQL database compatible with the MySQL protocol.
RocksDB is a storage engine based on LSM tree. Its data compression rate is over 60% higher than that of the InnoDB engine. Generally, it only needs about 1 GB storage space for 10 million rows of data after compression, which greatly reduces the database usage costs. Plus, it features high write performance, making it suitable for space-sensitive business scenarios where there are more writes than reads, such as IoT and logging. RocksDB support is currently in beta.
Suitable Business Types
Performance is the most critical consideration for large e-commerce platforms, almost all of which are based on distributed databases. Only databases with a distributed architecture can overcome hardware restrictions and support linear scaling of performance to support high-traffic promotion events. In 2017, Tencent E-commerce Service Platform, launched less than a year ago, started to see high month-over-month growth. When the average orders per day surpassed the 10,000 mark, the performance and scalability disadvantages of non-distributed databases began to the surface. Their database service was successfully migrated to TDSQL within a month and stood the test of major sales events such as the 11/11 and 12/12 shopping sprees.
Suitable Business Types
The rise of internet-based financial services such as mobile banking and online wealth management as well as advancements in blockchain technology have brought about dramatic changes in financial transactions; for example, more transactions in smaller amounts are made. Therefore, traditional database architectures can no long sustain business development, while network security risks start to increase. TDSQL, the first in China to apply distributed transactions to financial systems, boasts not only high performance scalability but also strong synchronous replication capabilities, helping prevent potential data errors and loss.
Suitable Business Types
Typical IoT scenarios such as industrial monitoring and remote control, smart city, smart home, and IoV requires a large number of sensing and monitoring devices, high sample rate, and massive storage capacity. TDSQL offers an ideal solution in this regard. It not only has linearly scalable capacity, but also supports the MySQL protocol and JSON, enabling developers to develop systems in their preferred programming languages. TDSQL can be used together with RocksDB to lower the compression ratio to less than 20%. Moreover, its two-level partitioning feature can separate cold and hot data quickly and efficiently, which greatly lowers data storage costs and improves the efficiency of cold data processing.
Suitable Business Types
For SNS games with unified servers and emerging IO games, the number of peak concurrent users (PCUs) can reach 100,000 or even 10 million in a short period of time. Therefore, it is necessary to have the smooth scalability of all functional modules in mind at the very beginning of game development. Stateless servers such as GameSvr and MatchSvr are easy to scale. Scaling DBSvr, which records all relationship chains, match scores, and transactions, is a great challenge. TDSQL can help you address this problem with ease by scaling your game conveniently.
TencentDB for TDSQL provides two billing options: monthly subscription and pay-as-you-go. Monthly subscription users opt to prepay for a fixed period of usage ranging from one to multiple months or years depending on their business needs. Pay-as-you-go users pay for what they use. No upfront payment is required, making this option suitable for business with fluctuating demands.
For more information, see Product Pricing.