TiDBの機能
このドキュメントでは、最新の LTS バージョン以降の長期サポート(LTS)バージョンおよび開発マイルストーンリリース(DMR)バージョンを含む、さまざまな TiDB バージョンでサポートされている機能をリストします。
TiDB プレイグラウンドで TiDB の機能を試すことができます。
注記:
PingCAPはDMRバージョン向けのパッチリリースを提供していません。バグは将来のリリースで修正される予定です。一般的な用途では、 最新のLTSバージョン使用することをお勧めします。
以下の表の略語の意味は次のとおりです。
- Y: 機能は一般提供(GA)されており、本番環境で使用できます。DMRバージョンでGAとなっている機能であっても、本番環境では後続のLTSバージョンで使用することをお勧めします。
- N: 機能はサポートされていません。
- E: この機能はまだ一般公開(実験的)ではありませんので、使用上の制限事項にご注意ください。Experimental機能は予告なく変更または削除される場合があります。構文と実装は一般公開前に変更される可能性があります。問題が発生した場合は、GitHubで問題報告してください。
データ型、関数、演算子
| データ型、関数、演算子 | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
| 数値型 | Y | Y | Y | Y | Y | Y | Y |
| 日付と時刻の種類 | Y | Y | Y | Y | Y | Y | Y |
| 文字列型 | Y | Y | Y | Y | Y | Y | Y |
| JSON型 | Y | Y | Y | Y | Y | E | E |
| ベクトル型 | E | 北 | 北 | 北 | 北 | 北 | 北 |
| 制御フロー関数 | Y | Y | Y | Y | Y | Y | Y |
| 文字列関数 | Y | Y | Y | Y | Y | Y | Y |
| 数値関数と演算子 | Y | Y | Y | Y | Y | Y | Y |
| 日付と時刻関数 | Y | Y | Y | Y | Y | Y | Y |
| ビット関数と演算子 | Y | Y | Y | Y | Y | Y | Y |
| キャスト関数と演算子 | Y | Y | Y | Y | Y | Y | Y |
| 暗号化および圧縮関数 | Y | Y | Y | Y | Y | Y | Y |
| ベクトル関数と演算子 | E | 北 | 北 | 北 | 北 | 北 | 北 |
| 情報関数 | Y | Y | Y | Y | Y | Y | Y |
| JSON関数 | Y | Y | Y | Y | Y | E | E |
| 集計関数 | Y | Y | Y | Y | Y | Y | Y |
| ウィンドウ関数 | Y | Y | Y | Y | Y | Y | Y |
| その他の関数 | Y | Y | Y | Y | Y | Y | Y |
| オペレーター | Y | Y | Y | Y | Y | Y | Y |
| 文字セットと照合順序 1 | Y | Y | Y | Y | Y | Y | Y |
| ユーザーレベルロック | Y | Y | Y | Y | Y | Y | 北 |
インデックスと制約
| インデックスと制約 | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
| 表現インデックス 2 | Y | Y | Y | Y | Y | E | E |
| 列指向storage(TiFlash) | Y | Y | Y | Y | Y | Y | Y |
| FastScan を使用して OLAP シナリオでのクエリを高速化します | Y | Y | Y | Y | E | 北 | 北 |
| RocksDBエンジン | Y | Y | Y | Y | Y | Y | Y |
| Titanプラグイン | Y | Y | Y | Y | Y | Y | Y |
| タイタンレベルマージ | E | E | E | E | E | E | E |
| バケットを使用してスキャンの同時実行性を向上させる | E | E | E | E | E | E | 北 |
| 目に見えないインデックス | Y | Y | Y | Y | Y | Y | Y |
複合PRIMARY KEY | Y | Y | Y | Y | Y | Y | Y |
CHECK制約 | Y | Y | Y | 北 | 北 | 北 | 北 |
| ユニークインデックス | Y | Y | Y | Y | Y | Y | Y |
整数PRIMARY KEYのクラスター化インデックス | Y | Y | Y | Y | Y | Y | Y |
| 複合キーまたは非整数キーのクラスター化インデックス | Y | Y | Y | Y | Y | Y | Y |
| 多値インデックス | Y | Y | Y | Y | 北 | 北 | 北 |
| 外部キー | Y | E | E | E | 北 | 北 | 北 |
| TiFlashの遅い実体化 | Y | Y | Y | Y | 北 | 北 | 北 |
| グローバルインデックス | Y | 北 | 北 | 北 | 北 | 北 | 北 |
| ベクトルインデックス | E | 北 | 北 | 北 | 北 | 北 | 北 |
SQL文
| SQL文3 | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
DELETE SELECT INSERT UPDATE REPLACE | Y | Y | Y | Y | Y | Y | Y |
INSERT ON DUPLICATE KEY UPDATE | Y | Y | Y | Y | Y | Y | Y |
LOAD DATA INFILE | Y | Y | Y | Y | Y | Y | Y |
SELECT INTO OUTFILE | Y | Y | Y | Y | Y | Y | Y |
INNER JOIN 、 `LEFT | RIGHT [OUTER] JOIN` | Y | Y | Y | Y | Y | Y |
UNION UNION ALL | Y | Y | Y | Y | Y | Y | Y |
EXCEPT演算子とINTERSECT演算子 | Y | Y | Y | Y | Y | Y | Y |
GROUP BY ORDER BY | Y | Y | Y | Y | Y | Y | Y |
GROUP BY修飾子 | Y | Y | Y | 北 | 北 | 北 | 北 |
| ウィンドウ関数 | Y | Y | Y | Y | Y | Y | Y |
| 共通テーブル式(CTE) | Y | Y | Y | Y | Y | Y | Y |
START TRANSACTION COMMIT ROLLBACK | Y | Y | Y | Y | Y | Y | Y |
EXPLAIN | Y | Y | Y | Y | Y | Y | Y |
EXPLAIN ANALYZE | Y | Y | Y | Y | Y | Y | Y |
| ユーザー定義変数 | E | E | E | E | E | E | E |
BATCH [ON COLUMN] LIMIT INTEGER DELETE | Y | Y | Y | Y | Y | Y | 北 |
BATCH [ON COLUMN] LIMIT INTEGER INSERT/UPDATE/REPLACE | Y | Y | Y | Y | Y | 北 | 北 |
ALTER TABLE ... COMPACT | Y | Y | Y | Y | Y | E | 北 |
| テーブルロック | E | E | E | E | E | E | E |
| TiFlashクエリ結果のマテリアライゼーション | Y | Y | Y | Y | E | 北 | 北 |
高度なSQL機能
| 高度なSQL機能 | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
| ベクトル検索 | E | 北 | 北 | 北 | 北 | 北 | 北 |
| 準備されたステートメントキャッシュ | Y | Y | Y | Y | Y | Y | Y |
| 非プリペアドステートメントキャッシュ | Y | Y | Y | E | 北 | 北 | 北 |
| インスタンスレベルの実行プランキャッシュ | E | 北 | 北 | 北 | 北 | 北 | 北 |
| SQLバインディング | Y | Y | Y | Y | Y | Y | Y |
| データベース間のバインディング | Y | Y | 北 | 北 | 北 | 北 | 北 |
| 過去の実行計画に従ってバインディングを作成する | Y | Y | Y | Y | E | 北 | 北 |
| コプロセッサーキャッシュ | Y | Y | Y | Y | Y | Y | Y |
| ステイル読み取り | Y | Y | Y | Y | Y | Y | Y |
| Followerが読む | Y | Y | Y | Y | Y | Y | Y |
| 履歴データを読み取る (tidb_snapshot) | Y | Y | Y | Y | Y | Y | Y |
| オプティマイザーヒント | Y | Y | Y | Y | Y | Y | Y |
| MPP実行エンジン | Y | Y | Y | Y | Y | Y | Y |
| MPP実行エンジン - 圧縮交換 | Y | Y | Y | Y | 北 | 北 | 北 |
| TiFlashパイプライン モデル | Y | Y | Y | 北 | 北 | 北 | 北 |
| TiFlashレプリカ選択戦略 | Y | Y | Y | 北 | 北 | 北 | 北 |
| インデックスの結合 | Y | Y | Y | Y | Y | Y | Y |
| SQLの配置ルール | Y | Y | Y | Y | Y | Y | E |
| カスケードプランナー | E | E | E | E | E | E | E |
| ランタイムフィルター | Y | Y | Y | 北 | 北 | 北 | 北 |
データ定義言語(DDL)
| データ定義言語(DDL) | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
RENAME CREATE DROP ALTER TRUNCATE | Y | Y | Y | Y | Y | Y | Y |
| 生成された列 | Y | Y | Y | Y | E | E | E |
| ビュー | Y | Y | Y | Y | Y | Y | Y |
| シーケンス | Y | Y | Y | Y | Y | Y | Y |
| 自動増分 | Y | Y | Y | Y | Y4 | Y | Y |
| 自動ランダム | Y | Y | Y | Y | Y | Y | Y |
| TTL (存続時間) | Y | Y | Y | Y | E | 北 | 北 |
| DDLアルゴリズムアサーション | Y | Y | Y | Y | Y | Y | Y |
| マルチスキーマの変更: 列の追加 | Y | Y | Y | Y | Y | E | E |
| 列の種類を変更する | Y | Y | Y | Y | Y | Y | Y |
| 一時テーブル | Y | Y | Y | Y | Y | Y | Y |
| 同時実行DDLステートメント | Y | Y | Y | Y | Y | 北 | 北 |
ADD INDEXとCREATE INDEXの高速化 | Y | Y | Y | Y | Y | 北 | 北 |
| メタデータロック | Y | Y | Y | Y | Y | 北 | 北 |
FLASHBACK CLUSTER | Y | Y | Y | Y | Y | 北 | 北 |
| 一時停止 / 再開する DDL | Y | Y | Y | 北 | 北 | 北 | 北 |
| TiDB 高速テーブル作成 | Y | E | 北 | 北 | 北 | 北 | 北 |
| BDR モードで DDL ステートメントをレプリケートするように BDR ロールを構成する | Y | E | 北 | 北 | 北 | 北 | 北 |
取引
| 取引 | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
| 非同期コミット | Y | Y | Y | Y | Y | Y | Y |
| 1個 | Y | Y | Y | Y | Y | Y | Y |
| 大規模トランザクション(1 TiB) | Y | Y | Y | Y | Y | Y | Y |
| 悲観的な取引 | Y | Y | Y | Y | Y | Y | Y |
| 楽観的な取引 | Y | Y | Y | Y | Y | Y | Y |
| 繰り返し読み取り分離(スナップショット分離) | Y | Y | Y | Y | Y | Y | Y |
| コミット読み取り分離 | Y | Y | Y | Y | Y | Y | Y |
| 長時間実行されているアイドルトランザクションを自動的に終了する | Y | Y | 北 | 北 | 北 | 北 | 北 |
バルクDML実行モード( tidb_dml_type = "bulk" ) | E | E | 北 | 北 | 北 | 北 | 北 |
パーティショニング
| パーティショニング | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
| 範囲分割 | Y | Y | Y | Y | Y | Y | Y |
| ハッシュパーティショニング | Y | Y | Y | Y | Y | Y | Y |
| キー分割 | Y | Y | Y | Y | 北 | 北 | 北 |
| List パーティショニング | Y | Y | Y | Y | Y | Y | E |
| List COLUMNS パーティショニング | Y | Y | Y | Y | Y | Y | E |
| リストおよびリスト列パーティションテーブルのデフォルトパーティション | Y | Y | Y | 北 | 北 | 北 | 北 |
EXCHANGE PARTITION | Y | Y | Y | Y | Y | E | E |
REORGANIZE PARTITION | Y | Y | Y | Y | 北 | 北 | 北 |
COALESCE PARTITION | Y | Y | Y | Y | 北 | 北 | 北 |
| 動的剪定 | Y | Y | Y | Y | Y | Y | E |
| 範囲列パーティション | Y | Y | Y | Y | Y | 北 | 北 |
| 範囲INTERVALパーティション分割 | Y | Y | Y | Y | E | 北 | 北 |
| パーティションテーブルを非パーティションテーブルに変換する | Y | Y | Y | 北 | 北 | 北 | 北 |
| 既存のテーブルをパーティション分割する | Y | Y | Y | 北 | 北 | 北 | 北 |
| グローバルインデックス | Y | 北 | 北 | 北 | 北 | 北 | 北 |
統計
| 統計 | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
| CMSketch | デフォルトでは無効 | デフォルトでは無効 | デフォルトでは無効 | デフォルトでは無効 | デフォルトでは無効 | デフォルトでは無効 | デフォルトでは無効 |
| ヒストグラム | Y | Y | Y | Y | Y | Y | Y |
| 拡張統計 | E | E | E | E | E | E | E |
| 統計フィードバック | 北 | 北 | 北 | 北 | 北 | 非推奨 | 非推奨 |
| 統計を自動的に更新する | Y | Y | Y | Y | Y | Y | Y |
| 動的剪定 | Y | Y | Y | Y | Y | Y | E |
PREDICATE COLUMNSの統計情報を収集する | Y | E | E | E | E | E | E |
| 統計情報を収集するためのメモリクォータを制御する | E | E | E | E | E | E | 北 |
| 約10000行のデータをランダムにサンプリングして、統計を素早く構築します。 | 非推奨 | 非推奨 | 非推奨 | E | E | E | E |
| ロック統計 | Y | Y | Y | E | E | 北 | 北 |
| 軽量統計初期化 | Y | Y | Y | E | 北 | 北 | 北 |
| 統計収集の進行状況を表示する | Y | Y | Y | 北 | 北 | 北 | 北 |
Security
| Security | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
| 透過レイヤーセキュリティ(TLS) | Y | Y | Y | Y | Y | Y | Y |
| 保存時の暗号化(TDE) | Y | Y | Y | Y | Y | Y | Y |
| ロールベース認証(RBAC) | Y | Y | Y | Y | Y | Y | Y |
| 証明書ベースの認証 | Y | Y | Y | Y | Y | Y | Y |
caching_sha2_password認証 | Y | Y | Y | Y | Y | Y | Y |
tidb_sm3_password認証 | Y | Y | Y | Y | Y | 北 | 北 |
tidb_auth_token認証 | Y | Y | Y | Y | Y | 北 | 北 |
authentication_ldap_sasl認証 | Y | Y | Y | 北 | 北 | 北 | 北 |
authentication_ldap_simple認証 | Y | Y | Y | Y | 北 | 北 | 北 |
| パスワード管理 | Y | Y | Y | Y | Y | 北 | 北 |
MySQL互換のGRANTシステム | Y | Y | Y | Y | Y | Y | Y |
| 動的権限 | Y | Y | Y | Y | Y | Y | Y |
| Security強化モード | Y | Y | Y | Y | Y | Y | Y |
| 編集されたログファイル | Y | Y | Y | Y | Y | Y | Y |
データのインポートとエクスポート
| データのインポートとエクスポート | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
| TiDB Lightningを使用した高速インポート | Y | Y | Y | Y | Y | Y | Y |
IMPORT INTOステートメントを使用した高速インポート | Y | Y | Y | 北 | 北 | 北 | 北 |
| mydumper 論理ダンパー | 非推奨 | 非推奨 | 非推奨 | 非推奨 | 非推奨 | 非推奨 | 非推奨 |
| Dumpling論理ダンパー | Y | Y | Y | Y | Y | Y | Y |
トランザクションLOAD DATA 5 | Y | Y | Y | Y | Y | Y | Y |
| データベース移行ツールキット (DM) | Y | Y | Y | Y | Y | Y | Y |
| TiDBBinlog 6 | 削除されました | Y | Y | Y | Y | Y | Y |
| 変更データキャプチャ(CDC) | Y | Y | Y | Y | Y | Y | Y |
| TiCDC を介して Amazon S3、GCS、Azure Blob Storage、NFS にデータをストリーミングする | Y | Y | Y | Y | E | 北 | 北 |
| TiCDCは2つのTiDBクラスタ間の双方向レプリケーションをサポートします。 | Y | Y | Y | Y | Y | 北 | 北 |
| TiCDC オープンAPI v2 | Y | Y | Y | Y | 北 | 北 | 北 |
| DM MySQL 8.0への移行をサポート | Y | Y | E | E | E | E | 北 |
管理、可観測性、ツール
| 管理、可観測性、ツール | 8.5 | 8.1 | 7.5 | 7.1 | 6.5 | 6.1 | 5.4 |
|---|---|---|---|---|---|---|---|
| TiDBダッシュボードUI | Y | Y | Y | Y | Y | Y | Y |
| TiDBダッシュボードの継続的なプロファイリング | Y | Y | Y | Y | Y | Y | E |
| TiDBダッシュボードのTop SQL | Y | Y | Y | Y | Y | Y | E |
| TiDBダッシュボードSQL診断 | Y | Y | Y | Y | Y | E | E |
| TiDBダッシュボードクラスタ診断 | Y | Y | Y | Y | Y | E | E |
| TiKV-FastTuneダッシュボード | E | E | E | E | E | E | E |
| 情報スキーマ | Y | Y | Y | Y | Y | Y | Y |
| メトリクススキーマ | Y | Y | Y | Y | Y | Y | Y |
| ステートメント要約表 | Y | Y | Y | Y | Y | Y | Y |
| ステートメント要約表 - 要約の永続性 | E | E | E | E | 北 | 北 | 北 |
| スロークエリログ | Y | Y | Y | Y | Y | Y | Y |
| TiUPの展開 | Y | Y | Y | Y | Y | Y | Y |
| Kubernetesオペレーター | Y | Y | Y | Y | Y | Y | Y |
| 組み込みの物理バックアップ | Y | Y | Y | Y | Y | Y | Y |
| グローバルキル | Y | Y | Y | Y | Y | Y | E |
| ビューをロック | Y | Y | Y | Y | Y | Y | Y |
SHOW CONFIG | Y | Y | Y | Y | Y | Y | Y |
SET CONFIG | Y | Y | Y | Y | Y | Y | E |
| DM WebUI | E | E | E | E | E | E | 北 |
| フォアグラウンドクォータリミッター | Y | Y | Y | Y | Y | E | 北 |
| バックグラウンドクォータリミッター | E | E | E | E | E | 北 | 北 |
| EBS ボリューム スナップショットのバックアップと復元 | Y | Y | Y | Y | Y | 北 | 北 |
| PITR | Y | Y | Y | Y | Y | 北 | 北 |
| グローバルメモリ制御 | Y | Y | Y | Y | Y | 北 | 北 |
| クラスタ間RawKVレプリケーション | E | E | E | E | E | 北 | 北 |
| グリーンGC | E | E | E | E | E | E | E |
| リソース管理 | Y | Y | Y | Y | 北 | 北 | 北 |
| ランナウェイクエリ管理 | Y | Y | E | 北 | 北 | 北 | 北 |
| バックグラウンドタスク管理 | E | E | E | 北 | 北 | 北 | 北 |
| TiFlash分散ストレージおよびコンピューティングアーキテクチャと S3 サポート | Y | Y | Y | E | 北 | 北 | 北 |
| 分散実行フレームワーク (DXF) タスク用の TiDB ノードの選択 | Y | Y | Y | 北 | 北 | 北 | 北 |
PDFollowerプロキシ( tidb_enable_tso_follower_proxyによって制御) | Y | Y | Y | Y | Y | Y | Y |
アクティブPDFollower ( pd_enable_follower_handle_regionで制御) | Y | E | 北 | 北 | 北 | 北 | 北 |
| PDマイクロサービス | E | E | 北 | 北 | 北 | 北 | 北 |
| TiDB 分散実行フレームワーク (DXF) | Y | Y | Y | E | 北 | 北 | 北 |
| グローバルソート | Y | Y | E | 北 | 北 | 北 | 北 |
| TiProxy | Y | Y | 北 | 北 | 北 | 北 | 北 |
| スキーマキャッシュ | Y | 北 | 北 | 北 | 北 | 北 | 北 |
- TiDBはlatin1をutf8のサブセットとして誤って扱います。詳細はTiDB #18955参照してください。↩
- バージョン6.5.0以降、システム変数
tidb_allow_function_for_expression_indexでリストされている関数で作成された式インデックスはテスト済みであり、本番環境で使用できます。今後のリリースでは、さらに多くの関数がサポートされる予定です。この変数にリストされていない関数については、対応する式インデックスを本番環境で使用することは推奨されません。詳細は表現インデックスご覧ください。↩ - サポートされている SQL ステートメントの完全なリストについては、 ステートメント参照参照してください。↩
- バージョン6.4.0から始まり、TiDBは高性能でグローバルに単調な
AUTO_INCREMENT列をサポートします↩ - v7.5.0以降、 TiDBBinlogレプリケーションは非推奨となりました。v8.3.0以降、TiDB Binlogは完全に非推奨となりました。v8.4.0以降、TiDB Binlogは削除されました。増分データレプリケーションの場合は、代わりにTiCDC使用してください。ポイントインタイムリカバリ(PITR)の場合は、 PITR使用してください。TiDBクラスターをv8.4.0以降のバージョンにアップグレードする前に、必ずTiCDCとPITRに切り替えてください。↩
- TiDB v7.0.0以降、新しいパラメータ
FIELDS DEFINED NULL BYと S3 および GCS からのデータインポートのサポートは実験的機能です。5 以降、TiDB は MySQL と同様にトランザクション内のLOAD DATA処理します。トランザクション内のLOAD DATAバージョン7.6.0文は、現在のトランザクションを自動的にコミットしたり、新しいトランザクションを開始したりしなくなりました。また、トランザクション内のLOAD DATAの文は明示的にコミットまたはロールバックできます。さらに、LOAD DATA文は TiDB のトランザクションモード設定(楽観的または悲観的トランザクション)の影響を受けます。↩