重要
このページは英語版のページを機械翻訳しています。原文はこちらからご覧ください。

TiFlashのパフォーマンスを調整する

このドキュメントでは、マシンリソースの計画やTiDBパラメータの調整など、TiFlashのパフォーマンスを調整する方法を紹介します。

リソースを計画する

マシンリソースを節約したいが、分離の要件がない場合は、TiKVとTiFlashの両方の展開を組み合わせた方法を使用できます。 TiKVとTiFlashにそれぞれ十分なリソースを節約し、ディスクを共有しないことをお勧めします。

TiDBパラメータを調整する

  1. OLAP / TiFlash専用のTiDBノードの場合、このノードのtidb_distsql_scan_concurrency構成項目の値を80に増やすことをお勧めします。

    set @@tidb_distsql_scan_concurrency = 80;
    
  2. スーパーバッチ機能を有効にします。

    tidb_allow_batch_cop変数を使用して、TiFlashから読み取るときにリージョンリクエストをマージするかどうかを設定できます。

    クエリに関係するリージョンの数が比較的多い場合は、この変数を1 (TiFlashにプッシュダウンされるaggregationのオペレーターを持つコプロセッサー要求に有効)に設定するか、この変数を2 (すべてのコプロセッサー要求に有効)に設定してみてください。 TiFlashにプッシュダウン)。

    set @@tidb_allow_batch_cop = 1;
    
  3. JOINUNIONなどのTiDB演算子の前に集計関数をプッシュダウンする最適化を有効にします。

    tidb_opt_agg_push_down変数を使用してオプティマイザーを制御し、この最適化を実行できます。クエリで集計操作が非常に遅い場合は、この変数を1に設定してみてください。

    set @@tidb_opt_agg_push_down = 1;
    
  4. JOINUNIONなどのTiDB演算子の前にDistinctを使用して集計関数をプッシュダウンする最適化を有効にします。

    tidb_opt_distinct_agg_push_down変数を使用してオプティマイザーを制御し、この最適化を実行できます。クエリでDistinctの集計操作が非常に遅い場合は、この変数を1に設定してみてください。

    set @@tidb_opt_distinct_agg_push_down = 1;