📣
TiDB Cloud Premium はパブリックプレビュー中です。エンタープライズワークロード向けの無制限のスケーリング、即時の弾力性、高度なセキュリティを提供します。このページは自動翻訳されたものです。原文はこちらからご覧ください。

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



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

TiDB

  • 新機能
    • サポートビュー
    • ウィンドウ関数のサポート
    • 範囲分割のサポート
    • ハッシュパーティショニングをサポート
  • 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条件サポートするためにMerge Join演算子を最適化する #9037
    • ログを最適化し、 EXECUTE文を実行するときに使用されるユーザー変数を出力します。 #7684
    • COMMIT文スロークエリ情報を出力するためにログを最適化します #7951
    • SQLチューニングプロセスを容易にするEXPLAIN ANALYZE機能をサポートする#7827
    • 多数の列を持つ幅の広いテーブルの書き込みパフォーマンスを最適化します#7935
    • サポートadmin show next_row_id #8242
    • 実行エンジンで使用される初期Chunkのサイズを制御するためのtidb_init_chunk_size変数を追加します。 #8480
    • shard_row_id_bitsを改善し、AUTO_INCREMENT 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 3.20ハンドシェイクプロトコルサポート #8812
    • 符号なしbigint列をAUTO_INCREMENT列として使用することをサポート #8181
    • 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

TiKV

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

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