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 からの読み取り時にリージョンリクエストをマージするかどうかを設定できます。クエリに含まれるリージョンの数が比較的多い場合は、この変数を
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;