Skip to content

Latest commit

 

History

History
229 lines (199 loc) · 33 KB

basic-features.md

File metadata and controls

229 lines (199 loc) · 33 KB
title TiDB Features
summary Learn about the feature overview of TiDB.
aliases
/docs/dev/basic-features/
/tidb/dev/experimental-features-4.0/

TiDB Features

This document lists the features supported in each TiDB version.

Note:

  • Y: the feature is generally available (GA) and can be used in production environments.
  • N: the feature is not supported.
  • Experimental: the feature is not GA yet and you need to be aware of the usage limitations. Experimental features are subject to change or removal without prior notice. The syntax and implementation might be modified before the general availability. If you encounter any problems, you can report an issue on GitHub.

Data types, functions, and operators

Data types, functions, and operators 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
Numeric types Y Y Y Y Y Y Y Y Y Y Y Y
Date and time types Y Y Y Y Y Y Y Y Y Y Y Y
String types Y Y Y Y Y Y Y Y Y Y Y Y
JSON type Y Y Y Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
Control flow functions Y Y Y Y Y Y Y Y Y Y Y Y
String functions Y Y Y Y Y Y Y Y Y Y Y Y
Numeric functions and operators Y Y Y Y Y Y Y Y Y Y Y Y
Date and time functions Y Y Y Y Y Y Y Y Y Y Y Y
Bit functions and operators Y Y Y Y Y Y Y Y Y Y Y Y
Cast functions and operators Y Y Y Y Y Y Y Y Y Y Y Y
Encryption and compression functions Y Y Y Y Y Y Y Y Y Y Y Y
Information functions Y Y Y Y Y Y Y Y Y Y Y Y
JSON functions Y Y Y Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
Aggregation functions Y Y Y Y Y Y Y Y Y Y Y Y
Window functions Y Y Y Y Y Y Y Y Y Y Y Y
Miscellaneous functions Y Y Y Y Y Y Y Y Y Y Y Y
Operators Y Y Y Y Y Y Y Y Y Y Y Y
Character sets and collations 1 Y Y Y Y Y Y Y Y Y Y Y Y
User-level lock Y Y Y Y Y N N N N N N N

Indexing and constraints

Indexing and constraints 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
Expression indexes 2 Y Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
Columnar storage (TiFlash) Y Y Y Y Y Y Y Y Y Y Y Y
Use FastScan to accelerate queries in OLAP scenarios Experimental Experimental Experimental Experimental N N N N N N N N
RocksDB engine Y Y Y Y Y Y Y Y Y Y Y Y
Titan plugin Y Y Y Y Y Y Y Y Y Y Y Y
Titan Level Merge Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
Use buckets to improve scan concurrency Experimental Experimental Experimental Experimental Experimental N N N N N N N
Invisible indexes Y Y Y Y Y Y Y Y Y Y Y N
Composite PRIMARY KEY Y Y Y Y Y Y Y Y Y Y Y Y
Unique indexes Y Y Y Y Y Y Y Y Y Y Y Y
Clustered index on integer PRIMARY KEY Y Y Y Y Y Y Y Y Y Y Y Y
Clustered index on composite or non-integer key Y Y Y Y Y Y Y Y Y Y Y N

SQL statements

SQL statements 3 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
Basic SELECT, INSERT, UPDATE, DELETE, REPLACE Y Y Y Y Y Y Y Y Y Y Y Y
INSERT ON DUPLICATE KEY UPDATE Y Y Y Y Y Y Y Y Y Y Y Y
LOAD DATA INFILE Y Y Y Y Y Y Y Y Y Y Y Y
SELECT INTO OUTFILE Y Y Y Y Y Y Y Y Y Y Y Y
INNER JOIN, LEFT|RIGHT [OUTER] JOIN Y Y Y Y Y Y Y Y Y Y Y Y
UNION, UNION ALL Y Y Y Y Y Y Y Y Y Y Y Y
EXCEPT and INTERSECT operators Y Y Y Y Y Y Y Y Y Y Y N
GROUP BY, ORDER BY Y Y Y Y Y Y Y Y Y Y Y Y
Window Functions Y Y Y Y Y Y Y Y Y Y Y Y
Common Table Expressions (CTE) Y Y Y Y Y Y Y Y Y Y N N
START TRANSACTION, COMMIT, ROLLBACK Y Y Y Y Y Y Y Y Y Y Y Y
EXPLAIN Y Y Y Y Y Y Y Y Y Y Y Y
EXPLAIN ANALYZE Y Y Y Y Y Y Y Y Y Y Y Y
User-defined variables Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
BATCH [ON COLUMN] LIMIT INTEGER DELETE Y Y Y Y Y N N N N N N N
BATCH [ON COLUMN] LIMIT INTEGER INSERT/UPDATE/REPLACE Y N N N N N N N N N N N
ALTER TABLE ... COMPACT Y Y Y Y Experimental N N N N N N N
Table Lock Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
TiFlash Query Result Materialization Experimental N N N N N N N N N N N

Advanced SQL features

Advanced SQL features 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
Prepared statement cache Y Y Y Y Y Y Y Y Experimental Experimental Experimental Experimental
SQL plan management (SPM) Y Y Y Y Y Y Y Y Y Y Y Y
Create bindings according to historical execution plans Experimental N N N N N N N N N N N
Coprocessor cache Y Y Y Y Y Y Y Y Y Y Y Experimental
Stale Read Y Y Y Y Y Y Y Y Y Y N N
Follower reads Y Y Y Y Y Y Y Y Y Y Y Y
Read historical data (tidb_snapshot) Y Y Y Y Y Y Y Y Y Y Y Y
Optimizer hints Y Y Y Y Y Y Y Y Y Y Y Y
MPP Execution Engine Y Y Y Y Y Y Y Y Y Y Y N
Index Merge Y Y Y Y Y Y Y Experimental Experimental Experimental Experimental Experimental
Placement Rules in SQL Y Y Y Y Y Y Experimental Experimental N N N N
Cascades Planner Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental

Data definition language (DDL)

Data definition language (DDL) 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
Basic CREATE, DROP, ALTER, RENAME, TRUNCATE Y Y Y Y Y Y Y Y Y Y Y Y
Generated columns Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
Views Y Y Y Y Y Y Y Y Y Y Y Y
Sequences Y Y Y Y Y Y Y Y Y Y Y Y
Auto increment Y Y 4 Y Y Y Y Y Y Y Y Y Y
Auto random Y Y Y Y Y Y Y Y Y Y Y Y
TTL (Time to Live) Experimental N N N N N N N N N N N
DDL algorithm assertions Y Y Y Y Y Y Y Y Y Y Y Y
Multi-schema change: add columns Y Y Y Y Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
Change column type Y Y Y Y Y Y Y Y Y Y N N
Temporary tables Y Y Y Y Y Y Y Y N N N N
Concurrent DDL statements Y Y Y Y N N N N N N N N
Acceleration of ADD INDEX and CREATE INDEX Y Experimental Experimental N N N N N N N N N
Metadata lock Y Experimental Experimental N N N N N N N N N
FLASHBACK CLUSTER TO TIMESTAMP Y Experimental N N N N N N N N N N

Transactions

Transactions 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
Async commit Y Y Y Y Y Y Y Y Y Y Y N
1PC Y Y Y Y Y Y Y Y Y Y Y N
Large transactions (10GB) Y Y Y Y Y Y Y Y Y Y Y Y
Pessimistic transactions Y Y Y Y Y Y Y Y Y Y Y Y
Optimistic transactions Y Y Y Y Y Y Y Y Y Y Y Y
Repeatable-read isolation (snapshot isolation) Y Y Y Y Y Y Y Y Y Y Y Y
Read-committed isolation Y Y Y Y Y Y Y Y Y Y Y Y

Partitioning

Partitioning 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
Range partitioning Y Y Y Y Y Y Y Y Y Y Y Y
Hash partitioning Y Y Y Y Y Y Y Y Y Y Y Y
List partitioning Y Y Y Y Y Experimental Experimental Experimental Experimental Experimental Experimental N
List COLUMNS partitioning Y Y Y Y Y Experimental Experimental Experimental Experimental Experimental Experimental N
EXCHANGE PARTITION Y Y Y Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental N
Dynamic pruning Y Y Y Y Y Experimental Experimental Experimental Experimental Experimental N N
Range COLUMNS partitioning Y Y Y N N N N N N N N N
Range INTERVAL partitioning Experimental Experimental Experimental N N N N N N N N N

Statistics

Statistics 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
CMSketch Disabled by default Disabled by default Disabled by default Disabled by default Disabled by default Disabled by default Disabled by default Disabled by default Y Y Y Y
Histograms Y Y Y Y Y Y Y Y Y Y Y Y
Extended statistics Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental N
Statistics feedback N N N N Deprecated Deprecated Deprecated Experimental Experimental Experimental Experimental Experimental
Automatically update statistics Y Y Y Y Y Y Y Y Y Y Y Y
Fast Analyze Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
Dynamic pruning Y Y Y Y Y Experimental Experimental Experimental Experimental Experimental N N
Collect statistics for PREDICATE COLUMNS Experimental Experimental Experimental Experimental Experimental Experimental Experimental N N N N N
Control the memory quota for collecting statistics Experimental Experimental Experimental Experimental Experimental N N N N N N N
Randomly sample about 10000 rows of data to quickly build statistics Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
Lock statistics Experimental N N N N N N N N N N N

Security

Security 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
Transparent layer security (TLS) Y Y Y Y Y Y Y Y Y Y Y Y
Encryption at rest (TDE) Y Y Y Y Y Y Y Y Y Y Y Y
Role-based authentication (RBAC) Y Y Y Y Y Y Y Y Y Y Y Y
Certificate-based authentication Y Y Y Y Y Y Y Y Y Y Y Y
caching_sha2_password authentication Y Y Y Y Y Y Y Y Y N N N
tidb_sm3_password authentication Y Y Y N N N N N N N N N
tidb_auth_token authentication Y Y N N N N N N N N N N
Password management Y N N N N N N N N N N N
MySQL compatible GRANT system Y Y Y Y Y Y Y Y Y Y Y Y
Dynamic Privileges Y Y Y Y Y Y Y Y Y Y N N
Security Enhanced Mode Y Y Y Y Y Y Y Y Y Y N N
Redacted Log Files Y Y Y Y Y Y Y Y Y Y Y N

Data import and export

Data import and export 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
Fast Importer (TiDB Lightning) Y Y Y Y Y Y Y Y Y Y Y Y
mydumper logical dumper Deprecated Deprecated Deprecated Deprecated Deprecated Deprecated Deprecated Deprecated Deprecated Deprecated Deprecated Deprecated
Dumpling logical dumper Y Y Y Y Y Y Y Y Y Y Y Y
Transactional LOAD DATA Y Y Y Y Y Y Y Y Y Y Y N 5
Database migration toolkit (DM) Y Y Y Y Y Y Y Y Y Y Y Y
TiDB Binlog Y Y Y Y Y Y Y Y Y Y Y Y
Change data capture (CDC) Y Y Y Y Y Y Y Y Y Y Y Y
Stream data to Amazon S3, Azure Blob Storage, and NFS through TiCDC Experimental N N N N N N N N N N N
TiCDC supports bidirectional replication between two TiDB clusters Y N N N N N N N N N N N

Management, observability, and tools

Management, observability, and tools 6.5 6.4 6.3 6.2 6.1 6.0 5.4 5.3 5.2 5.1 5.0 4.0
TiDB Dashboard UI Y Y Y Y Y Y Y Y Y Y Y Y
TiDB Dashboard Continuous Profiling Y Y Y Y Y Y Experimental Experimental N N N N
TiDB Dashboard Top SQL Y Y Y Y Y Y Experimental N N N N N
TiDB Dashboard SQL Diagnostics Y Y Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
TiDB Dashboard Cluster Diagnostics Y Y Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
TiKV-FastTune dashboard Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental
Information schema Y Y Y Y Y Y Y Y Y Y Y Y
Metrics schema Y Y Y Y Y Y Y Y Y Y Y Y
Statements summary tables Y Y Y Y Y Y Y Y Y Y Y Y
Slow query log Y Y Y Y Y Y Y Y Y Y Y Y
TiUP deployment Y Y Y Y Y Y Y Y Y Y Y Y
Kubernetes operator Y Y Y Y Y Y Y Y Y Y Y Y
Built-in physical backup Y Y Y Y Y Y Y Y Y Y Y Y
Global Kill Y Y Y Y Y Experimental Experimental Experimental Experimental Experimental Experimental Experimental
Lock View Y Y Y Y Y Y Y Y Y Experimental Experimental Experimental
SHOW CONFIG Y Y Y Y Y Y Y Y Y Y Y Y
SET CONFIG Y Y Y Y Y Experimental Experimental Experimental Experimental Experimental Experimental Experimental
DM WebUI Experimental Experimental Experimental Experimental Experimental Experimental N N N N N N
Foreground Quota Limiter Y Y Y Y Experimental Experimental N N N N N N
Background Quota Limiter Experimental Experimental Experimental Experimental N N N N N N N N
EBS volume snapshot backup and restore Y Y N N N N N N N N N N
PITR Y Y Y Y N N N N N N N N
Global memory control Y Experimental N N N N N N N N N N
Cross-cluster RawKV replication Experimental Experimental Experimental Experimental N N N N N N N N
Green GC Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental Experimental N

Footnotes

  1. TiDB incorrectly treats latin1 as a subset of utf8. See TiDB #18955 for more details. ↩

  2. Starting from v6.5.0, the expression indexes created on the functions listed by the tidb_allow_function_for_expression_index system variable have been tested and can be used in production environments, and more functions will be supported in the future releases. For functions not listed by this variable, the corresponding expression indexes are not recommended for use in production environments. See expression indexes for details. ↩

  3. See Statement Reference for a full list of SQL statements supported. ↩

  4. Starting from v6.4.0, TiDB supports high-performance and globally monotonic AUTO_INCREMENT columns ↩

  5. For TiDB v4.0, the LOAD DATA transaction does not guarantee atomicity. ↩