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

2019 年 1 月 19 日に、TiDB 3.0 ベータ版がリリースされました。対応する TiDB Ansible 3.0 ベータ版もリリースされました。TiDB 3.0 ベータ版は、安定性、SQL オプティマイザー、統計、実行エンジンに重点を置いて TiDB 2.1 をベースに構築されています。

ティビ

  • 新機能
    • サポートビュー
    • ウィンドウ関数のサポート
    • 範囲分割のサポート
    • ハッシュパーティションをサポート
  • SQL オプティマイザー
    • AggregationElimination #7676の最適化ルールを再サポート
    • NOT EXISTSサブクエリを最適化し、Anti Semi Join #7842に変換する
    • 新しい Cascades オプティマイザーをサポートするためにtidb_enable_cascades_planner変数を追加します。現在、Cascades オプティマイザーはまだ完全に実装されておらず、デフォルトではオフになっています#7879
    • トランザクション#7877でのインデックス結合の使用をサポート
    • 外部結合の定数伝播を最適化し、結合結果の外部テーブルに関連するフィルタリング条件を外部結合を介して外部テーブルにプッシュダウンできるようにすることで、外部結合の無駄な計算を減らし、実行パフォーマンスを向上させます#7794
    • 投影除去の最適化ルールを集計除去の後の位置に調整し、冗長なProject演算子#7909を回避する
    • IFNULL関数を最適化し、入力パラメータに NULL 以外の属性#7924がある場合はこの関数を削除します。
    • _tidb_rowid構築クエリの範囲をサポートし、テーブル全体のスキャンを回避してクラスターのストレスを軽減します#8047
    • INサブクエリを最適化して集計後に内部結合を実行し、この最適化ルールを有効にしてデフォルトで開くかどうかを制御するtidb_opt_insubq_to_join_and_agg変数を追加します#7531
    • DO#8343でのサブクエリの使用をサポート
    • 不要なテーブルスキャンと結合操作を削減し、実行パフォーマンスを向上させるために、外部結合除去の最適化ルールを追加します#8021
    • TIDB_INLJオプティマイザのヒント動作を変更すると、オプティマイザはヒントで指定されたテーブルをインデックス結合#8243の内部テーブルとして使用します。
    • Prepare文の実行計画キャッシュが有効になったときに使用できるように、 PointGet広い範囲で使用する#8108
    • 複数のテーブルを結合する際の結合順序の選択を最適化するために貪欲アルゴリズムJoin Reorderを導入する#8394
    • サポートビュー#8757
    • サポートウィンドウ機能#8630
    • TIDB_INLJが有効でない場合はクライアントに警告を返し、ユーザビリティを向上させる#9037
    • フィルタリング条件とテーブル統計に基づいてフィルタリングされたデータの統計を推測する機能をサポート#7921
    • 範囲パーティション#8885のパーティション プルーニング最適化ルールを改善する
  • SQL エグゼキュータ
    • 空のON条件#9037をサポートするためにMerge Join演算子を最適化する
    • ログを最適化し、 EXECUTEステートメント#7684を実行するときに使用されるユーザー変数を出力します。
    • COMMITステートメント#7951の遅いクエリ情報を出力するためにログを最適化します。
    • SQLチューニングプロセスを容易にするEXPLAIN ANALYZE機能をサポートする#7827
    • 多数の列を持つ幅の広いテーブルの書き込みパフォーマンスを最適化#7935
    • サポートadmin show next_row_id #8242
    • 実行エンジン#8480で使用される初期Chunkのサイズを制御するためのtidb_init_chunk_size変数を追加します。
    • shard_row_id_bits改善し、自動増分ID #8936をクロスチェックする
  • Prepareステートメント
    • 異なるユーザー変数が入力された場合にクエリプランが正しいことを保証するために、サブクエリを含むPrepareステートメントをクエリプランキャッシュに追加することを禁止します#8064
    • クエリプランキャッシュを最適化して、ステートメントに非決定的関数が含まれている場合にプランがキャッシュされることを保証します#8105
    • クエリプランキャッシュを最適化して、 DELETE / UPDATE / INSERTのクエリプランがキャッシュされることを保証する#8107
    • クエリプランキャッシュを最適化して、 DEALLOCATE#8332を実行するときに対応するプランを削除します。
    • メモリ使用量を制限して、クエリプランキャッシュを最適化し、プランを過剰にキャッシュすることで発生する TiDB OOM の問題を回避します#8339
    • Prepare文を最適化して、 ORDER BY / GROUP BY / LIMIT#8206?プレースホルダーの使用をサポートする
  • 権限管理
    • ANALYZE#8486の権限チェックを追加する
    • USE#8414の権限チェックを追加する
    • SET GLOBAL#8837の権限チェックを追加する
    • SHOW PROCESSLIST#7858の権限チェックを追加する
  • サーバ
    • Trace機能#9029サポートする
    • プラグインフレームワーク#8788をサポート
    • unix_socketとTCPを同時に使用してデータベース#8836に接続することをサポートします
    • interactive_timeoutシステム変数#8573サポート
    • wait_timeoutシステム変数#8346サポート
    • tidb_batch_commit変数#8293を使用して、ステートメントの数に基づいてトランザクションを複数のトランザクションに分割することをサポートします。
    • ADMIN SHOW SLOWステートメントを使用してスローログ#7785をチェックするサポート
  • 互換性
    • ALLOW_INVALID_DATES SQLモード#9027サポート
    • CSVファイルのフォールトトレランスLoadData改善#9005
    • MySQL 320ハンドシェイクプロトコル#8812サポート
    • 自動増分列#8181として符号なしbigint列の使用をサポート
    • SHOW CREATE DATABASE IF NOT EXISTS構文#8926をサポートする
    • フィルタリング条件にユーザー変数が含まれている場合、述語プッシュダウン操作を中止して、ユーザー変数を使用してウィンドウ関数の動作をモックするMySQLの動作との互換性を向上させます#8412
  • DDL
    • 誤って削除されたテーブルの高速回復をサポート#7937
    • 同時実行数を動的に調整するサポートADD INDEX #8295
    • テーブルまたは列の文字セットをutf8 / utf8mb4 #8037に変更するサポート
    • デフォルトの文字セットをutf8からutf8mb4に変更します#7965
    • サポート範囲パーティション#8011

ツール

  • TiDB Lightning
    • SQL文をKVペアに変換する速度が大幅に向上#110
    • インポートのパフォーマンスと安定性を向上させるために、単一テーブルのバッチインポートをサポートします#113

PD

  • リージョンメタデータを個別に格納するにはRegionStorage追加します#1237
  • シャッフルホットリージョンスケジューラ#1361を追加
  • スケジュールパラメータ関連のメトリック#1406を追加する
  • クラスターラベル関連のメトリック#1402を追加する
  • インポートデータシミュレータ#1263を追加
  • リーダー選挙に関するWatch問題を修正#1396

ティクヴ

  • 分散GC #3179サポート
  • 書き込みストール#3606を回避するために、スナップショットを適用する前に RocksDB レベル 0 ファイルをチェックします。
  • リバースraw_scanraw_batch_scan #3742をサポート
  • HTTPを使用した監視情報の取得をサポート#3855
  • DST をより良くサポート#3786
  • バッチ#3931でのRaftメッセージの受信と送信をサポート
  • 新しいstorageエンジン Titan #3985を導入
  • gRPCをv1.17.2にアップグレード#4023
  • バッチ#4043でクライアント要求を受信して​​応答を送信することをサポートします。
  • マルチスレッド対応#4044
  • マルチスレッドRaftstore #4066サポート

このページは役に立ちましたか?

Playground
登録なしで TiDB の機能をワンストップでインタラクティブに体験できます。
製品
TiDB Dedicated
TiDB Serverless
TiDB
価格
PoC お問い合わせ
エコシステム
TiKV
TiFlash
OSS Insight
© 2024 PingCAP. All Rights Reserved.
Privacy Policy.