TiFlashのパフォーマンスを調整する
このドキュメントでは、マシンリソースの計画やTiDBパラメータの調整など、TiFlashのパフォーマンスを調整する方法を紹介します。
リソースを計画する
マシンリソースを節約し、分離の要件がない場合は、TiKVとTiFlashの両方の展開を組み合わせた方法を使用できます。 TiKVとTiFlashにそれぞれ十分なリソースを節約し、ディスクを共有しないことをお勧めします。
TiDBパラメータを調整する
OLAP / TiFlash専用のTiDBノードの場合、このノードの
tidb_distsql_scan_concurrency
構成項目の値を80
に増やすことをお勧めします。set @@tidb_distsql_scan_concurrency = 80;スーパーバッチ機能を有効にします。
tidb_allow_batch_cop
変数を使用して、TiFlashから読み取るときにRegionリクエストをマージするかどうかを設定できます。クエリに関係するリージョンの数が比較的多い場合は、この変数を
1
(TiFlashにプッシュダウンされるaggregation
のオペレーターを持つコプロセッサー要求に有効)に設定するか、この変数を2
(すべてのコプロセッサー要求に有効)に設定してみてください。 TiFlashにプッシュダウン)。set @@tidb_allow_batch_cop = 1;JOIN
やUNION
などのTiDB演算子の前に集計関数をプッシュダウンする最適化を有効にします。tidb_opt_agg_push_down
変数を使用してオプティマイザーを制御し、この最適化を実行できます。クエリで集計操作が非常に遅い場合は、この変数を1
に設定してみてください。set @@tidb_opt_agg_push_down = 1;JOIN
やUNION
などのTiDB演算子の前にDistinct
を使用して集計関数をプッシュダウンする最適化を有効にします。tidb_opt_distinct_agg_push_down
変数を使用してオプティマイザーを制御し、この最適化を実行できます。クエリでDistinct
の集計操作が非常に遅い場合は、この変数を1
に設定してみてください。set @@tidb_opt_distinct_agg_push_down = 1;