CALIBRATE RESOURCE

CALIBRATE RESOURCEステートメントは、現在のクラスターの「リクエストユニット(RU)」容量を推定して出力するために使用されます。

注記:

この機能は TiDB Self-Hosted にのみ適用され、 TiDB Cloudでは使用できません。

概要

CalibrateResourceStmt
CALIBRATERESOURCEWorkloadOption
WorkloadOption
WORKLOADTPCCOLTP_READ_WRITEOLTP_READ_ONLYOLTP_WRITE_ONLYSTART_TIMETIMESTAMPDURATIONstringLitEND_TIMETIMESTAMP

権限

このコマンドを実行するには、次の要件が満たされていることを確認してください。

  • tidb_enable_resource_control有効にしました。
  • ユーザーにはSUPERまたはRESOURCE_GROUP_ADMIN権限があります。
  • ユーザーには、 METRICS_SCHEMAスキーマ内のすべてのテーブルに対するSELECT権限があります。

容量を推定する方法

TiDB は推定に 2 つの方法を提供します。

実際の作業負荷に基づいて容量を見積もる

アプリケーションがすでに本番環境で実行されている場合、または実際のビジネス テストを実行できる場合は、一定期間の実際のワークロードを使用して合計容量を見積もることをお勧めします。見積りの精度を向上させるには、次の制約に従ってください。

  • START_TIMEパラメータを使用して、推定を開始する時点を2006-01-02 15:04:05の形式で指定します。デフォルトの推定終了時刻は現在の時刻です。
  • START_TIMEパラメータを指定した後、 END_TIMEパラメータを使用して推定終了時間を指定するか、 DURATIONパラメータを使用してSTART_TIMEからの推定時間ウィンドウを指定できます。
  • 時間枠は 10 分から 24 時間までです。
  • 指定された時間枠内で、TiDB と TiKV の CPU 使用率が低すぎる場合、容量を見積もることはできません。

注記:

TiKV は macOS 上の CPU 使用率メト​​リックを監視しません。macOS 上の実際のワークロードに基づく容量推定はサポートされていません。

ハードウェアの展開に基づいて容量を見積もる

この方法は、主に現在のクラスター構成と、さまざまなワークロードで観測された経験値に基づいて容量を推定します。ワークロードの種類によって必要なハードウェアの比率が異なるため、同じハードウェア構成の出力容量は異なる場合があります。ここでのWORKLOADパラメーターは、次の異なるワークロード タイプを受け入れます。デフォルト値はTPCCです。

  • TPCC : 大量のデータ書き込みを伴うワークロードに適用されます。 TPC-Cと同様のワークロード モデルに基づいて推定されます。
  • OLTP_WRITE_ONLY : 大量のデータ書き込みを伴うワークロードに適用されます。 sysbench oltp_write_onlyと同様のワークロード モデルに基づいて推定されます。
  • OLTP_READ_WRITE : 偶数データの読み取りと書き込みのワークロードに適用されます。 sysbench oltp_read_writeと同様のワークロード モデルに基づいて推定されます。
  • OLTP_READ_ONLY : 大量のデータ読み取りが行われるワークロードに適用されます。 sysbench oltp_read_onlyと同様のワークロード モデルに基づいて推定されます。
  • TPCH_10 : AP クエリに適用されます。2 からの 22 のクエリに基づいて推定されますTPCH-10G

注記:

クラスターの RU 容量は、クラスターのトポロジと各コンポーネントのハードウェアおよびソフトウェア構成によって異なります。各クラスターが提供できる実際の RU も、実際のワークロードに関連します。ハードウェア展開に基づく推定値は参考値のみであり、実際の最大値とは異なる場合があります実際の作業負荷に基づいて容量を見積もるにすることをお勧めします。

実際のワークロードに応じて RU 容量を表示するには、開始時刻START_TIMEと時間ウィンドウDURATIONを指定します。

CALIBRATE RESOURCE START_TIME '2023-04-18 08:00:00' DURATION '20m'; +-------+ | QUOTA | +-------+ | 27969 | +-------+ 1 row in set (0.01 sec)

実際のワークロードに応じて RU 容量を表示するには、開始時刻START_TIMEと終了時刻END_TIMEを指定します。

CALIBRATE RESOURCE START_TIME '2023-04-18 08:00:00' END_TIME '2023-04-18 08:20:00'; +-------+ | QUOTA | +-------+ | 27969 | +-------+ 1 row in set (0.01 sec)

時間ウィンドウ範囲DURATION 10 分から 24 時間の範囲にない場合は、エラーが発生します。

CALIBRATE RESOURCE START_TIME '2023-04-18 08:00:00' DURATION '25h'; ERROR 1105 (HY000): the duration of calibration is too long, which could lead to inaccurate output. Please make the duration between 10m0s and 24h0m0s CALIBRATE RESOURCE START_TIME '2023-04-18 08:00:00' DURATION '9m'; ERROR 1105 (HY000): the duration of calibration is too short, which could lead to inaccurate output. Please make the duration between 10m0s and 24h0m0s

実際の作業負荷に基づく容量推定機能の監視メトリックには、 tikv_cpu_quotatidb_server_maxprocsresource_manager_resource_unitprocess_cpu_usagetiflash_cpu_quotatiflash_resource_manager_resource_unit 、およびtiflash_process_cpu_usage含まれます。CPU クォータ監視データが空の場合、次の例に示すように、対応する監視メトリック名にエラーが発生します。

CALIBRATE RESOURCE START_TIME '2023-04-18 08:00:00' DURATION '60m'; Error 1105 (HY000): There is no CPU quota metrics, metrics 'tikv_cpu_quota' is empty

時間ウィンドウ内のワークロードが低すぎる場合、またはresource_manager_resource_unitprocess_cpu_usage監視データが欠落している場合は、次のエラーが報告されます。また、TiKV は macOS 上の CPU 使用率を監視しないため、実際のワークロードに基づく容量推定をサポートしておらず、このエラーも報告されます。

CALIBRATE RESOURCE START_TIME '2023-04-18 08:00:00' DURATION '60m'; ERROR 1105 (HY000): The workload in selected time window is too low, with which TiDB is unable to reach a capacity estimation; please select another time window with higher workload, or calibrate resource by hardware instead

RU 容量を表示するにはWORKLOAD指定します。デフォルト値はTPCCです。

CALIBRATE RESOURCE; +-------+ | QUOTA | +-------+ | 190470 | +-------+ 1 row in set (0.01 sec) CALIBRATE RESOURCE WORKLOAD OLTP_WRITE_ONLY; +-------+ | QUOTA | +-------+ | 27444 | +-------+ 1 row in set (0.01 sec)

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