このトピックでは、AnalyticDB for MySQL Data Lakehouse Edition (V3.0) でジョブリソースグループのジョブ優先度を設定および表示する方法について説明します。
前提条件
V3.1.6.3以降のAnalyticDB for MySQL Data Lakehouse Edition (V3.0) クラスターが作成されます。
ジョブリソースグループが作成されます。 ジョブが送信され、ジョブリソースグループで実行されます。
使用上の注意
ジョブが実行されているかどうかに関係なく、送信されたジョブの優先順位を変更できません。
概要
ジョブ優先度は、キュー内のジョブにリソースが割り当てられる優先度を指す。 AnalyticDB for MySQL Data Lakehouse Edition (V3.0) クラスターのジョブリソースグループで多数のジョブが同時に実行されている場合、ジョブにはリソースグループの容量よりも多くのリソースが必要になる場合があります。 AnalyticDB for MySQL Data Lakehouse Edition (V3.0) は、ジョブキュー機能をサポートしています。 リソースが不十分な場合、新しいジョブはキューに入れられ、送信済み状態のままになります。
たとえば、キーメトリックが上流ジョブの中間結果に依存する場合、ジョブに十分なリソースを提供するために、上流ジョブに対してより高い優先度を設定する必要があります。 AnalyticDB for MySQL Data Lakehouse Edition (V3.0) は、ジョブリソースグループ内のジョブの優先キュー機能を提供します。 ジョブの優先順位を設定して、ジョブがLOWEST、LOW、NORMAL、HIGHの優先順位キューに入ることを許可できます。 優先度の高いジョブは優先的に実行される。
ジョブの優先度の設定
ジョブには、HIGH、NORMAL、LOW、LOWESTの優先順位を設定できます。 ジョブの優先度を設定しない場合、ジョブにはNORMAL優先度が割り当てられます。
Extract-transform-load (ETL) クエリとSELECTクエリは、NORMALの優先順位です。
ジョブの優先度の設定方法は、ジョブの種類によって異なります。 次のセクションでは、ジョブの優先度を設定する方法について説明します。
XIHE BSPジョブの優先度の設定
ヒントを追加する: /* + query_priority= <priority level>*/
例: XIHEバルク同期並列 (BSP) ジョブの優先度をHIGHに設定して、ジョブがHIGHキューに入るようにします。
/* + query_priority=HIGH */ SELECT * FROM test_table;
Spark SQLジョブの優先度の設定
SETステートメントを実行します。SET spark.adb.priority = <priority level>
例: Spark SQLジョブの優先度をLOWに設定して、ジョブがLOWキューに入るようにします。
SET spark.adb.priority = LOW;
SELECT * FROM test_table;
Sparkバッチジョブの優先度の設定
confパラメーターを設定します。"conf": { "spark.adb.priority": "<priority level>"}
例: Sparkバッチジョブの優先度をHIGHに設定して、ジョブがHIGHキューに入るようにします。
{
"comments": [
"-これはSparkPiのほんの一例です。 コンテンツを変更し、スパークプログラムを実行します。
],
"args": [
「1000」
],
"file": "local:/// tmp/spark-examples.jar" 、
"name": "SparkPi" 、
"className": "org.apache.spark.examples.SparkPi" 、
"conf": {
"spark.driver.resourceSpec": "medium" 、
"spark.exe cutor.instances": 2、
"spark.exe cutor.resourceSpec": "medium" 、
"spark.adb.priority": "HIGH"
}
}
ジョブの優先度の表示
XIHE BSPおよびSpark SQLジョブの優先度の表示
AnalyticDB for MySQLコンソールにログインします。 クラスターの左側のナビゲーションウィンドウで、[ジョブの開発]> [SQLの開発] を選択します。 [実行レコード] タブで、XIHE BSPおよびSpark SQLジョブの優先順位を表示します。
Sparkバッチジョブの優先度の表示
AnalyticDB for MySQLコンソールにログインします。 クラスターの左側のナビゲーションウィンドウで、[ジョブの開発]> [Spark JARの開発] を選択します。 [アプリケーション] タブで、Sparkバッチジョブの優先順位を表示します。