TiDB 4.0 ベータ リリース ノート

発売日:2020年1月17日

TiDB バージョン: 4.0.0-beta

TiDB Ansible バージョン: 4.0.0-beta

TiDB

  • INSERT / REPLACE / DELETE / UPDATEの実行中に使用されたメモリがMemQuotaQuery構成項目で指定された制限を超えた場合、ログを出力するか、SQL の実行をキャンセルします。実際の動作は、 OOMActionの構成によって異なります。 #14179 #14289 #14299
  • 駆動表と被駆動表の両方の行数を考慮して、 Index Joinのコスト計算の精度を上げる#12085
  • 15 個の SQL ヒントを追加して、オプティマイザーの動作を制御し、オプティマイザーをより安定させます
  • クエリに含まれる列をインデックスで完全にカバーできる場合のパフォーマンスを向上させます#12022
  • インデックス マージ機能をサポートすることにより、テーブル クエリのパフォーマンスを向上させる#10121 #10512 #11245 #12225 #12248 #12305 #12843
  • インデックス結果をキャッシュし、重複する結果を排除することで、Range 計算のパフォーマンスを向上させ、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を使用して式インデックスを削除する#14117をサポート
  • query-log-max-lenパラメータのデフォルト値を4096に増やして、切り捨てられた SQL 出力の数を減らします。このパラメータは動的に調整できます。 #12491
  • column 属性にAutoRandomキーワードを追加して、システムがランダムな整数を主キーに自動的に割り当てるかどうかを制御できるようになりました。これにより、主キーAUTO_INCREMENTによって引き起こされるホットスポットの問題が回避され#13127
  • サポート テーブル ロック#11038
  • 条件付きフィルタリングのためのADMIN SHOW DDL JOBSLIKEまたはWHERE節の使用のサポート#12484
  • information_schema.tablesテーブルにTIDB_ROW_ID_SHARDING_INFO列を追加してRowID散乱情報を出力します (たとえば、テーブルASHARD_ROW_ID_BITS列の値は"SHARD_BITS={bit_number}"です) #13418
  • ERROR 1105 (HY000)のコードが複数のエラー メッセージ ( Unknown Error種類) に使用される状況を回避するために、SQL エラー メッセージのエラー コードを最適化します。
  • 離散型の狭いデータ範囲をpoint setに変換し、CM-Sketchを使用して行数の推定時に推定精度を向上させます#11524
  • CM-Sketch からTopNの情報を通常のAnalyzeに抽出し、頻繁に発生する値を個別に保持する#11409
  • CM-Sketch の深さと幅、およびTopN情報#11278の数を動的に調整するサポート
  • SQL Binding の自動キャプチャと展開をサポート#13199 #12434
  • Chunkを使用して TiKV との通信のエンコード形式を最適化し、通信パフォーマンスを向上させます#12023 #12536 #12613 #12621 #12899 #13060 #13349
  • ワイド テーブル#12634のパフォーマンスを向上させる新しい行ストア形式をサポートします。
  • Recover Binlogインターフェースを最適化して、すべてのトランザクションがコミットされるのを待ってからクライアント#13740に戻るようにする
  • HTTP info/allインターフェイス#13025を介して、クラスター内の TiDB サーバーによって有効にされた binlog ステータスのクエリをサポートします。
  • ペシミスティック トランザクション モードを使用する場合、MySQL 互換のRead Committedトランザクション分離レベルをサポートします#14087
  • 大規模なトランザクションをサポートします。トランザクション サイズは、物理メモリのサイズによって制限されます。
  • Kill #10841の安定性を向上
  • LOAD DATA #11029のセパレータとして 16 進数と 2 進数の式をサポート
  • IndexLookupJoinIndexHashJoinIndexMergeJoinに分割することにより、 IndexLookupJoinのパフォーマンスを向上させ、実行時のメモリ消費を削減します#8861 #12139 #12349 #13238 #13451 #13714
  • RBAC #13896 #13820 #13940 #14090 #13940 #13014に関連するいくつかの問題を修正
  • SELECTステートメントにunion #12595が含まれているため、 VIEWを作成できない問題を修正します。
  • CAST関数に関連するいくつかの問題を修正します。
  • TiKV RPC の詳細backoff情報をスローログに出力して、トラブルシューティングを容易にします#13770
  • 高価なログ#12809のメモリ統計のフォーマットを最適化および統一する
  • EXPLAINの明示的な形式を最適化し、オペレーターのメモリとディスクの使用状況に関する情報の出力をサポートします#13914 #13692 #13686 #11415 #13927 #13764 #13720
  • トランザクション サイズに基づいてLOAD DATAの重複値のチェックを最適化し、 tidb_dml_batch_sizeパラメータ#11132を構成してトランザクション サイズの設定をサポートします。
  • データ準備ルーチンとコミット ルーチンを分離し、ワークロードを異なるワーカーに割り当てることで、 LOAD DATAのパフォーマンスを最適化します#11533 #11284

TiKV

PD

  • ストレージノードの負荷情報に応じたホットスポットスケジューリングの最適化をサポート
  • さまざまなスケジューリング ルールを組み合わせて、任意のデータ範囲のレプリカの数、ストレージの場所、ストレージ ホストの種類、および役割を制御できる配置ルール機能を追加します。
  • プラグインを使用したサポート (実験的) #1799
  • スケジューラーがカスタマイズされた構成とキー範囲をサポートする機能を追加 (実験的) #1735 #1783 #1791
  • クラスターの負荷情報に応じてスケジューリング速度を自動的に調整するサポート (実験的、デフォルトでは無効) #1875 #1887 #1902

ツール

  • TiDB Lightning
    • コマンドライン ツールにパラメータを追加して、ダウンストリーム データベースのパスワードを設定します#253

TiDB アンシブル

  • ダウンロードしたパッケージが不完全な場合に備えて、パッケージにチェックサムチェックを追加します#1002
  • systemd-219-52以降である必要がある systemd バージョンのチェックをサポートします#1020 #1074
  • TiDB Lightning起動時にログディレクトリが正しく作成されない問題を修正#1103
  • TiDB Lightningのカスタマイズポートが無効になる問題を修正#1107
  • TiFlash #1119の展開と保守のサポート
エコシステム
TiDB
TiKV
TiSpark
Chaos Mesh
© 2022 PingCAP. All Rights Reserved.