TiDB4.0ベータリリースノート
発売日:2020年1月17日
TiDBバージョン:4.0.0-ベータ版
TiDB Ansibleバージョン:4.0.0-ベータ版
TiDB
INSERTのDELETE中に使用されたメモリがREPLACE構成項目で指定された制限をUPDATEた場合は、ログを印刷するか、SQLの実行をキャンセルしてMemQuotaQuery。実際の動作は、OOMActionの構成によって異なります。 #14179 #14289 #14299- 駆動テーブルと被駆動テーブルの両方の行数を考慮して、
Index Joinのコストを計算する精度を高めます#12085 - 15個のSQLヒントを追加して、オプティマイザーの動作を制御し、オプティマイザーをより安定させます
- クエリに含まれる列をインデックスで完全にカバーできる場合のパフォーマンスの向上#12022
- インデックスマージ機能をサポートすることにより、テーブルクエリのパフォーマンスを向上させます#10121 #10512 #11245 #12225 #12248 #12305 #12843
- インデックス結果をキャッシュし、重複する結果を排除することで、範囲計算のパフォーマンスを向上させ、CPUオーバーヘッドを削減します#12856
- 遅いログのレベルを通常のログのレベルから切り離します#12359
oom-use-tmp-storageつのパラメーター(デフォルトではtrue)を追加して、単一のSQLステートメントの実行のメモリ使用量がmem-quota-queryを超え、SQLにHash Join#11832 #11937 #12116 #12067が含まれている場合に、一時ファイルを使用して中間結果をキャッシュするかどうかを制御しますcreate indexを使用して式インデックスを作成し、alter tableを使用して式インデックスを削除することをサポートしdrop index#14117query-log-max-lenパラメーターのデフォルト値を4096に増やして、切り捨てられたSQL出力の数を減らします。このパラメータは動的に調整できます。 #12491- 列属性に
AutoRandomキーワードを追加して、システムがランダムな整数を主キーに自動的に割り当てるかどうかを制御することをサポートします。これにより、AUTO_INCREMENT主キー#13127によって引き起こされるホットスポットの問題が回避されます。 - テーブルロックのサポート#11038
- 条件付きフィルタリングのための
ADMIN SHOW DDL JOBSのLIKEまたはWHERE句の使用のサポート#12484 information_schema.tablesテーブルにTIDB_ROW_ID_SHARDING_INFO列を追加して、RowIDの散乱情報を出力します(たとえば、テーブルAのSHARD_ROW_ID_BITS列の値は"SHARD_BITS={bit_number}"です) #13418- SQLエラーメッセージのエラーコードを最適化して、
ERROR 1105 (HY000)のコードが複数のエラーメッセージ(Unknown Errorのタイプ)に使用される状況を回避します。 - 離散型の狭いデータ範囲を
point setに変換し、CM-Sketchを使用して、行数#11524を推定する際の推定精度を向上させます。 - 通常の
AnalyzeのCM-SketchからTopNの情報を抽出し、頻繁に発生する値を個別に維持します#11409 - CM-Sketchの深さと幅、および
TopNの情報の数を動的に調整することをサポートします#11278 - SQL #12434の自動キャプチャと進化をサポート#13199
Chunkを使用してTiKVとの通信のエンコード形式を最適化し、通信パフォーマンスを向上させます#12023 #12536 #12613 #12621 #12899 #13060 #13349- ワイドテーブル#12634のパフォーマンスを向上させるために、新しい行ストア形式をサポートします。
Recover Binlogのインターフェースを最適化して、すべてのトランザクションがコミットされるのを待ってからクライアントに戻るようにします#13740info/allインターフェースを介したクラスタのTiDBサーバーによって有効化されたbinlogステータスのクエリをサポートします#13025- 悲観的トランザクションモード#14087を使用する場合は、MySQL互換の
Read Committedトランザクション分離レベルをサポートします。 - 大規模なトランザクションをサポートします。トランザクションサイズは、物理メモリのサイズによって制限されます。
Killの安定性を向上さ#10841- #11029の区切り文字として16進式と2進式をサポートし
LOAD DATA IndexLookupJoinをIndexHashJoinと#12349IndexMergeJoin#8861 #12139 #13238分割することにより、IndexLookupJoinのパフォーマンスを向上させ、実行中のメモリ消費を削減し#13714 #13451- #13014に関連するいくつかの問題を修正し#13896 #13820 #13940 #14090 #13940
SELECTステートメントに#12595が含まれているため、VIEWを作成できない問題を修正しunion。CAST関数に関連するいくつかの問題を修正します- トラブルシューティングを容易にするために、TiKVRPCの詳細
backoff情報を低速ログに出力します#13770 - 高価なログのメモリ統計の形式を最適化して統一する#12809
EXPLAINの明示的な形式を最適化し、オペレーターのメモリーとディスクの使用状況に関する情報の出力をサポートします#13914 #13692 #13686 #11415 #13927 #13764 #13720- トランザクションサイズに基づいて
LOAD DATAの重複値のチェックを最適化し、tidb_dml_batch_sizeパラメータ#11132を設定してトランザクションサイズの設定をサポートします。 - データ準備ルーチンとコミットルーチンを分離し、ワークロードを異なるワーカーに割り当てることにより、
LOAD DATAのパフォーマンスを最適化します#11533 #11284
TiKV
- RocksDBバージョンを6.4.6にアップグレードします
- TiKVの起動時に2GBの空のファイルを自動的に作成することにより、ディスク容量が使い果たされたときにシステムが圧縮タスクを正常に実行できない問題を修正します#6321
- 迅速なバックアップと復元をサポート
- フォロワーレプリカからのデータの読み取りをサポート
- インデックス#5682を介してデータを読み取るTiDBのパフォーマンスを向上させる
CAST関数がTiKVとTiDBで一貫して動作しない問題を修正します
PD
- ストレージノードの負荷情報に応じたホットスポットスケジューリングの最適化をサポート
- さまざまなスケジューリングルールを組み合わせることにより、任意のデータ範囲のレプリカの数、ストレージの場所、ストレージホストのタイプ、および役割の制御をサポートする配置ルール機能を追加します
- プラグインの使用のサポート(実験的) #1799
- スケジューラーがカスタマイズされた構成とキー範囲をサポートする機能を追加します(実験的) #1735 #1783 #1791
- クラスタ負荷情報に応じたスケジューリング速度の自動調整をサポート(実験的、デフォルトでは無効) #1875 #1887 #1902
ツール
- TiDB Lightning
- コマンドラインツールにパラメータを追加して、ダウンストリームデータベースのパスワードを設定します#253