すべてのプロダクト
Search
ドキュメントセンター

AnalyticDB:ジョブリソースグループの優先度付きキュー

最終更新日:Mar 29, 2026

ジョブリソースグループ内で多数のジョブが同時に実行される場合、それらのジョブはグループが提供可能なリソース量を超えて競合する可能性があります。たとえば、上流のダッシュボードに依存する重大な集約ジョブは、低優先度のデータ同期ジョブよりも先に実行される必要があります — 両方のジョブが同時に待機中であっても同様です。AnalyticDB for MySQL Data Lakehouse Edition (V3.0) では、即座に実行できないジョブをキューに格納し、リソースが利用可能になるまで「送信済み」状態で保持します。優先度付きキューを使用すると、どのジョブがキューの先頭に移動するかを制御できます。

前提条件

開始する前に、以下の条件を満たしていることを確認してください。

  • AnalyticDB for MySQL Data Lakehouse Edition (V3.0) クラスターが V3.1.6.3 以降のバージョンで実行中であること

  • 少なくとも 1 つのジョブが送信済みのジョブリソースグループが存在すること

優先度レベル

利用可能な優先度レベルは 4 つあり、最も高い順に以下のように並びます。

レベル説明
HIGHジョブは高優先度キューに入り、すべての低優先度ジョブより先に実行されます。
NORMALデフォルトのレベルです。抽出・変換・ロード(ETL)クエリおよび SELECT クエリは、特に設定がない限りこのレベルを使用します。
LOWジョブは低優先度キューに入り、NORMAL および HIGH のジョブに対して譲ります。
LOWESTジョブは、リソースが利用可能になったときに最後に実行されます。

ジョブ優先度の設定

コンソールでの表示

ジョブリソースグループ内のジョブ優先度は、以下のいずれかの方法で確認できます。

重要

ジョブの優先度は、送信前に設定してください。ジョブが「送信済み」状態になると — 実行中かどうかにかかわらず — 優先度を変更することはできません。

設定方法はジョブの種類によって異なります。

ジョブタイプ設定方法キー
XIHE バルク同期並列(BSP)SQL ヒントquery_priority
Spark SQLSET 文spark.adb.priority
Spark バッチconf パラメーターspark.adb.priority

XIHE BSP ジョブ

クエリの直前にヒントを追加します。

/*+ query_priority=<priority_level>*/ <your_query>

以下の例では、優先度を HIGH に設定しています。

/*+ query_priority=HIGH*/ SELECT * FROM test_table;

Spark SQL ジョブ

同一セッション内で、クエリの前に SET 文を実行します。

SET spark.adb.priority = <priority_level>;
<your_query>

以下の例では、優先度を LOW に設定しています。

SET spark.adb.priority = LOW;
SELECT * FROM test_table;

Spark バッチジョブ

ジョブ送信ペイロードの conf オブジェクト内に spark.adb.priority を含めます。

{
    "comments": [
        "-- これは SparkPi の一例です。内容を変更して、ご自身の Spark プログラムを実行してください。"
    ],
    "args": [
        "1000"
    ],
    "file": "local:///tmp/spark-examples.jar",
    "name": "SparkPi",
    "className": "org.apache.spark.examples.SparkPi",
    "conf": {
        "spark.driver.resourceSpec": "medium",
        "spark.executor.instances": 2,
        "spark.executor.resourceSpec": "medium",
        "spark.adb.priority": "HIGH"
    }
}

ジョブ優先度の表示

XIHE BSP および Spark SQL ジョブ

  1. AnalyticDB for MySQL コンソール にログインします。

  2. クラスターの左側ナビゲーションウィンドウで、ジョブ開発 > SQL 開発 を選択します。

  3. 実行記録 タブで、各ジョブの優先度を確認します。

控制台优先级..png

Spark バッチジョブ

  1. AnalyticDB for MySQL コンソール にログインします。

  2. クラスターの左側ナビゲーションウィンドウで、ジョブ開発 > Spark JAR 開発 を選択します。

  3. アプリケーション タブで、各ジョブの優先度を確認します。

Jar优先级..png

SQL を使用した表示

SHOW job status WHERE job = '<JobId>'; 文を実行します。