TiDB Experimental Features
This document introduces the experimental features of TiDB in different versions. It is NOT recommended to use these features in the production environment.
Performance
- Support collecting statistics for
PREDICATE COLUMNS
(Introduced in v5.4) - Support synchronously loading statistics. (Introduced in v5.4)
- Control the memory quota for collecting statistics. (Introduced in v6.1.0)
- Use the thread pool to handle read requests from the storage engine. (Introduced in v6.2.0)
- Cost Model Version 2. (Introduced in v6.2.0)
- FastScan. (Introduced in v6.2.0)
- Extended statistics. (Introduced in v5.0.0)
- Randomly sample about 10000 rows of data to quickly build statistics (Introduced in v3.0)
Stability
- Improve the stability of the optimizer's choice of indexes: extend the statistics feature by collecting the multi-column order dependency information (Introduced in v5.0).
- Background Quota Limiter (Introduced in v6.2.0): You can use the background quota-related configuration items to limit the CPU resources to be used by the background. When a request triggers Quota Limiter, the request is forced to wait for a while for TiKV to free up CPU resources.
Scheduling
Elastic scheduling feature. It enables the TiDB cluster to dynamically scale out and in on Kubernetes based on real-time workloads, which effectively reduces the stress during your application's peak hours and saves overheads. See Enable TidbCluster Auto-scaling for details. (Introduced in v4.0)
SQL
- The expression index feature. The expression index is also called the function-based index. When you create an index, the index fields do not have to be a specific column but can be an expression calculated from one or more columns. This feature is useful for quickly accessing the calculation-based tables. See Expression index for details. (Introduced in v4.0)
- Generated Columns (Introduced in v2.1)
- User-Defined Variables (Introduced in v2.1)
- JSON data type and JSON functions (Introduced in v2.1)
- Cascades Planner: a cascades framework-based top-down query optimizer (Introduced in v3.0)
- Table Lock (Introduced in v4.0.0)
ALTER TABLE ... COMPACT
(Introduced in v6.1.0)
Storage
- Disable Titan (Introduced in v4.0)
- Titan Level Merge (Introduced in v4.0)
- Divide Regions are divided into buckets. Buckets are used as the unit of concurrent query to improve the scan concurrency. (Introduced in v6.1.0)
- TiKV introduces API V2. (Introduced in v6.1.0)
Backup and restoration
- Back up and restore RawKV (Introduced in v3.1)
Data migration
- Use WebUI to manage migration tasks in DM. (Introduced in v6.0)
- Configure disk quota for TiDB Lightning. (Introduced in v6.2.0)
- Continuous Data Validation in DM (Introduced in v6.2.0)
Data share subscription
- Cross-cluster RawKV replication (Introduced in v6.2.0)
Garbage collection
- Green GC (Introduced in v5.0)
Diagnostics
- SQL diagnostics (Introduced in v4.0)
- Cluster diagnostics (Introduced in v4.0)
- TiKV-FastTune dashboard (Introduced in v4.0)