このスライドでは、分散型NewSQLデータベース「TiDB」でより効率良くインデックスを活用できる趣旨に沿いながら、パフォーマンス向上を図ってTiDBのインデックスの活用方法を各観点から解説いたします。インデックスの作成におけるTiDBの内部処理を紹介した上で、インデックス作成のパフォーマンスに有効なパラメータ紹介、また実際のテスト結果を基づいたインデックスの作成によるオンライン業務の影響、インデックスを使用したオプティマイザ演算子、オプティマイザによるインデックスの使用基準について説明します。
トピック
・インデックスのメンテナンス方法
・インデックスの追加によるサービスの影響
・インデックスを使用したオプティマイザ演算子
・オプティマイザによるインデックスの使用基準
アーカイブ動画
https://youtu.be/SpBBBn3jcUI
QUIZ.1(資料P33)の解答:AとD
(解説)
・Aは正しいです。インデックスを作成する際に、対象列に書き込みがある場合、Write Conflict によりonline インデックス作成が失敗することがあります。
・インデックスの作成スピットは対象テーブルのカラム数や既存のインデックスの数とは関係ないため、B、Cは誤りです。
・Tidb_ddl_reorg_worker_cntは索引のデータ作成プロセス re organize の並列度をコントロールするパラメータとなります。大きくすると、インデックスの作成スピードが早まりますので、Dが正しいです。
QUIZ.2(資料P35)の解答:D
(解説)
・ご質問でもいただきました Oracle にあるIndex Skip Scan はTiDB では現時点で実装されておりませんので、DはTiDB のスキャン演算子ではございません。
・他の選択肢A、B、C、EはTiDB には実装されている演算子となります。