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

コントロール実行計画



SQLチューニングの最初の2章では、TiDBの実行計画の理解方法と、TiDBが実行計画を生成する方法について解説します。本章では、実行計画の問題点を特定した際に、実行計画の生成を制御するために使用できる方法について説明します。本章の主な内容は以下の3点です。

  • オプティマイザのヒントでは、TiDB が実行計画を生成するようにヒントを使用する方法を学びます。
  • しかし、ヒントはSQL文を侵襲的に変更します。場合によっては、ヒントを単純に挿入することはできません。SQL SQLプラン管理では、TiDBが別の構文を使用して実行計画の生成を非侵襲的に制御する方法と、バックグラウンドで実行計画を自動的に進化させる方法について説明しています。この方法は、バージョンアップグレードやクラスタのパフォーマンス低下によって引き起こされる実行計画の不安定性などの問題に対処するのに役立ちます。
  • 最後に、最適化ルールと式のプッシュダウンのブロックリストでブロックリストの使用方法を学びます。

上記の方法に加えて、実行計画はいくつかのシステム変数にも影響されます。システムレベルまたはセッションレベルでこれらの変数を変更することで、実行計画の生成を制御できます。v6.5.3およびv7.1.0以降、TiDBは比較的特殊な変数tidb_opt_fix_controlを導入しました。この変数は複数の制御項目を受け入れることができ、クラスタのアップグレード後にオプティマイザの動作変更によって発生するパフォーマンスの低下を防ぐために、オプティマイザの動作をよりきめ細かく制御できます。詳細についてはオプティマイザー修正コントロールを参照してください。

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