メインコンテンツまでスキップ

SHOW LOAD

SHOW LOAD

説明

データベース内のすべてのロードジョブまたは指定されたロードジョブの情報を表示します。このステートメントは、Broker LoadINSERT、またはSpark Loadを使用して作成されたロードジョブのみ表示できます。curlコマンドを使用してもロードジョブの情報を表示できます。v3.1以降、information_schemaデータベースのloadsテーブルを使用して、Broker LoadまたはInsertジョブの結果をクエリするためにSELECTステートメントを使用することをお勧めします。詳細については、HDFSからデータをロードクラウドストレージからデータをロードINSERTを使用したデータのロード、およびApache Spark™を使用したバルクロードを参照してください。

上記のロード方法に加えて、StarRocksではStream LoadとRoutine Loadを使用してデータをロードすることもサポートしています。 Stream Loadは同期操作であり、Stream Loadジョブの情報を直接返します。Routine Loadは非同期操作であり、Routine Loadジョブの情報を表示するためにSHOW ROUTINE LOADステートメントを使用できます。

構文

SHOW LOAD [ FROM db_name ]
[
WHERE [ LABEL { = "label_name" | LIKE "label_matcher" } ]
[ [AND] STATE = { "PENDING" | "ETL" | "LOADING" | "FINISHED" | "CANCELLED" } ]
]
[ ORDER BY field_name [ ASC | DESC ] ]
[ LIMIT { [offset, ] limit | limit OFFSET offset } ]

注記

\ Gオプションをステートメントに追加することで、通常の水平な表形式ではなく、縦に出力することもできます(例:SHOW LOAD WHERE LABEL = "label1" \ G;)。詳細については、例1を参照してください。

パラメータ

パラメータ

必須

説明

db_name

No

データベース名。このパラメータが指定されていない場合、デフォルトで現在のデータベースが使用されます。

LABEL = "label_name"

No

ロードジョブのラベル。

LABEL LIKE "label_matcher"

No

このパラメータが指定されている場合、ラベルがlabel_matcherを含むロードジョブの情報が返されます。

AND

No

  • WHERE句で1つのフィルタ条件のみを指定する場合、このキーワードは指定しないでください。例:WHERE STATE = "PENDING"
  • WHERE句で2つまたは3つのフィルタ条件を指定する場合、このキーワードを指定する必要があります。例:WHERE LABEL = "label_name" AND STATE = "PENDING"

STATE

No

ロードジョブのステート。ステートはロード方法によって異なります。

  • Broker Load
    • PENDING:ロードジョブが作成されました。
    • QUEUEING:ロードジョブはスケジュール待ちのキューにあります。
    • LOADING:ロードジョブが実行中です。
    • PREPARED:トランザクションが確定しました。
    • FINISHED:ロードジョブが成功しました。
    • CANCELLED:ロードジョブが失敗しました。
  • Spark Load
    • PENDING:StarRocksクラスタがETLに関連する設定を準備し、その後、Apache Spark™クラスタにETLジョブを送信する準備を行っています。
    • ETL:SparkクラスタがETLジョブを実行し、その後、データを対応するHDFSクラスタに書き込みます。
    • LOADING:HDFSクラスタのデータがStarRocksクラスタにロードされています。つまり、ロードジョブが実行中です。
    • PREPARED:トランザクションが確定しました。
    • FINISHED:ロードジョブが成功しました。
    • CANCELLED:ロードジョブが失敗しました。
  • INSERT
    • FINISHED:ロードジョブが成功しました。
    • CANCELLED:ロードジョブが失敗しました。

ステートパラメータが指定されていない場合、デフォルトですべてのステートのロードジョブの情報が返されます。ステートパラメータが指定されている場合、指定されたステートのロードジョブの情報のみが返されます。たとえば、 STATE = "PENDING"では、PENDINGステートのロードジョブの情報が返されます。

ORDER BY field_name [ASC | DESC]

No

このパラメータが指定されている場合、指定されたフィールドに基づいて出力が昇順または降順にソートされます。以下のフィールドがサポートされています:JobIdLabelStateProgressTypeEtlInfoTaskInfoErrorMsgCreateTimeEtlStartTimeEtlFinishTimeLoadStartTimeLoadFinishTimeURL、およびJobDetails

  • 昇順で出力をソートするには、 ORDER BY field_name ASCを指定します。
  • 降順で出力をソートするには、 ORDER BY field_name DESC を指定します。

フィールドとソート順の両方を指定しない場合、デフォルトでJobIdの昇順で出力がソートされます。

LIMIT limit

No

表示が許可されるロードジョブの数です。このパラメータが指定されていない場合、フィルタ条件と一致するすべてのロードジョブの情報が表示されます。このパラメータが指定されている場合、たとえば LIMIT 10と指定すると、フィルタ条件に一致する10件のロードジョブの情報のみが返されます。

OFFSET offset

No

offsetパラメータはスキップするロードジョブの数を定義します。たとえば、OFFSET 5と指定すると、最初の5つのロードジョブはスキップされ、残りが返されます。offsetパラメータの値のデフォルトは0です。

出力

+-------+-------+-------+----------+------+---------+----------+----------+------------+--------------+---------------+---------------+----------------+-----+------------+
| JobId | Label | State | Progress | Type | Priority | EtlInfo | TaskInfo | ErrorMsg | CreateTime | EtlStartTime | EtlFinishTime | LoadStartTime | LoadFinishTime | URL | JobDetails |
+-------+-------+-------+----------+------+---------+----------+----------+------------+--------------+---------------+---------------+----------------+-----+------------+

このステートメントの出力は、ロード方法によって異なります。

フィールド

Broker Load

Spark Load

INSERT

JobId

StarRocksがロードジョブを識別するために割り当てた一意のID。

Spark LoadジョブでのJobIdフィールドの意味はBroker Loadジョブと同じです。

INSERTジョブでのJobIdフィールドの意味はBroker Loadジョブと同じです。

Label

ロードジョブのラベル。ロードジョブのラベルはデータベース内で一意ですが、異なるデータベース間では重複する場合があります。

Spark LoadジョブでのLabelフィールドの意味はBroker Loadジョブと同じです。

INSERTジョブでのLabelフィールドの意味はBroker Loadジョブと同じです。

State

ロードジョブのステート。

  • PENDING:ロードジョブが作成されました。
  • QUEUEING:キューイング中のロードジョブはスケジュール待ちです。
  • LOADING:ロードジョブが実行中です。
  • PREPARED:トランザクションが確定しました。
  • FINISHED:ロードジョブが成功しました。
  • CANCELLED:ロードジョブが失敗しました。

ロードジョブのステート。

  • PENDING:StarRocksクラスタがETLに関連する設定を準備し、その後、Apache Spark™クラスタにETLジョブを送信する準備を行っています。
  • ETL:SparkクラスタがETLジョブを実行し、その後、データを対応するHDFSクラスタに書き込みます。
  • LOADING:HDFSクラスタのデータがStarRocksクラスタにロードされています。つまり、ロードジョブが実行中です。
  • PREPARED:トランザクションが確定しました。
  • FINISHED:ロードジョブが成功しました。
  • CANCELLED:ロードジョブが失敗しました。

ロードジョブのステート。

  • FINISHED:ロードジョブが成功しました。
  • CANCELLED:ロードジョブが失敗しました。

Progress

ロードジョブのステージ。Broker LoadジョブにはLOADステージのみがあり、このステージの進行状況を0%から100%までの範囲で表すことができます。ロードジョブがLOADステージに入ると、StateパラメータにLOADINGが返されます。Broker LoadジョブにはETLステージがありません。 ETLパラメータはSpark Loadジョブにのみ有効です。

注記

  • LOADステージの進捗を計算するための公式:データをロードする予定のStarRocksテーブルの完了データロードの数/データをロードする予定のStarRocksテーブルの数 * 100%。
  • すべてのデータがStarRocksにロードされると、LOADパラメータに99%が返されます。その後、ロードされたデータがStarRocksで有効になります。データが有効になると、LOADパラメータに100%が返されます。
  • LOADステージの進捗は直線的ではありません。したがって、データのロードが続行している場合でも、LOADパラメータの値が一定期間変わらないことがあります。

ロードジョブのステージ。Spark Loadジョブには2つのステージがあります:

  • ETLETLステージの進行状況を0%から100%までの範囲で表します。
  • LOADLoadステージの進行状況を0%から100%までの範囲で表します。

ロードジョブがETLステージに入ると、StateパラメータにETLが返されます。ロードジョブがLOADステージに移行すると、StateパラメータにLOADINGが返されます。

注記はBroker Loadと同じです。

ロードジョブのステージ。INSERTジョブにはLOADステージのみがあり、このステージの進行状況を0%から100%までの範囲で表すことができます。ロードジョブがLOADステージに入ると、LOADINGStateパラメータに返されます。INSERTジョブにはETLステージがないため、このフィールドの値はLoadStartTimeフィールドの値と同じです。

注記はBroker Loadと同じです。

Type

ロードジョブのメソッド。このパラメータの値はデフォルトで BROKERです。

ロードジョブのメソッド。このパラメータの値はデフォルトでSPARKです。

ロードジョブのメソッド。このパラメータの値はデフォルトでINSERTです。

Priority

ロードジョブの優先度。有効な値:LOWEST、LOW、NORMAL、HIGH、HIGHEST。

EtlInfo

ETLに関連するメトリクス。

  • unselected.rows:WHERE句によってフィルタリングされた行数。
  • dpp.abnorm.ALL:データ品質の問題によりフィルタリングされた行数の合計(例:ソーステーブルとStarRocksテーブルのデータ型や列数の不一致など)。
  • dpp.norm.ALL:StarRocksクラスタにロードされた行数。

前述のメトリクスの合計は生データの総行数です。max-filter-ratioパラメータの値を超える不適格なデータの割合を計算するために、次の式を使用できます:dpp.abnorm.ALL/(unselected.rows + dpp.abnorm.ALL + dpp.norm.ALL)。

Spark LoadジョブでのEtlInfoフィールドの意味はBroker Loadジョブと同じです。

ETLに関連するメトリクス。INSERTジョブにはETLステージがないため、NULLが返されます。

TaskInfo

ロードジョブの作成時に指定されたパラメータ。

  • resource:このパラメータはSpark Loadジョブにのみ有効です。
  • timeout:ロードジョブの実行に許可される期間。単位:秒。
  • max-filter-ratio:データ品質の問題によりフィルタリングされた行の最大割合。

詳細については、 BROKER LOAD を参照してください。

ロードジョブの作成時に指定されたパラメータ。

  • resource:リソース名。
  • timeout:ロードジョブの実行に許可される期間。単位:秒。
  • max-filter-ratio:データの品質によってフィルタリングされた行の最大割合。

詳細については、 SPARK LOAD を参照してください。

ロードジョブの作成時に指定されたパラメータ。

  • resource:このパラメータはSpark Loadジョブにのみ有効です。
  • timeout:ロードジョブの実行に許可される期間。単位:秒。
  • max-filter-ratio:データの品質によってフィルタリングされた行の最大割合。

詳細については、 INSERT を参照してください。

ErrorMsg

ロードジョブが失敗した場合に返されるエラーメッセージ。ロードジョブのステートがPENDINGLOADING、またはFINISHEDの場合、ErrorMsgフィールドにはNULLが返されます。ロードジョブのステートがCANCELLEDの場合、ErrorMsgフィールドには2つの部分から構成される値が返されます:typemsg

  • type部分は次のいずれかの値を取ります:
    • USER_CANCEL:ロードジョブが手動でキャンセルされました。
    • ETL_SUBMIT_FAIL:ロードジョブの送信に失敗しました。
    • ETL-QUALITY-UNSATISFIED:不適格なデータの割合がmax-filter-ratioパラメータの値を超えたため、ロードジョブが失敗しました。
    • LOAD-RUN-FAIL:ロードジョブがLOADステージで失敗しました。
    • TIMEOUT:指定したタイムアウト期間内でロードジョブが完了できませんでした。
    • UNKNOWN:ロードジョブが不明なエラーで失敗しました。
  • msg部分は、ロードの失敗の詳細な原因を提供します。

ロードジョブのステートがPENDINGLOADING、またはFINISHEDの場合、ErrorMsgフィールドにはNULLが返されます。ロードジョブのステートがCANCELLEDの場合、ErrorMsgフィールドには2つの部分から構成される値が返されます:typemsg

  • type部分は次のいずれかの値を取ります:
    • USER_CANCEL:ロードジョブが手動でキャンセルされました。
    • ETL_SUBMIT_FAIL:StarRocksがSparkにETLジョブを提出できませんでした。
    • ETL-RUN-FAIL:SparkがETLジョブを実行できませんでした。
    • ETL-QUALITY-UNSATISFIED:ロードジョブが不適格なデータの割合がmax-filter-ratioパラメータの値を超えたために失敗しました。
    • LOAD-RUN-FAIL:ロードジョブがLOADステージで失敗しました。
    • TIMEOUT:指定されたタイムアウト期間内でロードジョブが完了できませんでした。
    • UNKNOWN:不明なエラーのため、ロードジョブが失敗しました。
  • msg部分は、ロードの失敗の詳細な原因を提供します。

ロードジョブのステートがFINISHEDの場合、ErrorMsgフィールドにはNULLが返されます。ロードジョブのステートがCANCELLEDの場合、ErrorMsgフィールドには2つの部分から構成される値が返されます:typemsg

  • type部分は次のいずれかの値を取ります:
    • USER_CANCEL:ロードジョブが手動でキャンセルされました。
    • ETL_SUBMIT_FAIL:ロードジョブの提出に失敗しました。
    • ETL_RUN_FAIL:ロードジョブの実行に失敗しました。
    • ETL_QUALITY_UNSATISFIED:データの品質の問題により、ロードジョブが失敗しました。
    • LOAD-RUN-FAIL:ロードジョブがLOADステージで失敗しました。
    • TIMEOUT:指定されたタイムアウト期間内でロードジョブが完了できませんでした。
    • UNKNOWN:不明なエラーのため、ロードジョブが失敗しました。
    • TXN_UNKNOWN:ロードジョブのトランザクションのステートが不明なため、失敗しました。
  • msg部分は、ロードの失敗の詳細な原因を提供します。

CreateTime

ロードジョブが作成された時刻。

Spark LoadジョブでのCreateTimeフィールドの意味はBroker Loadジョブと同じです。

INSERTジョブでのCreateTimeフィールドの意味はBroker Loadジョブと同じです。

EtlStartTime

Broker LoadジョブにはETLステージがないため、このフィールドの値はLoadStartTimeフィールドの値と同じです。

ETLステージが開始される時刻。

INSERTジョブにはETLステージがないため、このフィールドの値はLoadStartTimeフィールドの値と同じです。

EtlFinishTime

Broker LoadジョブにはETLステージがないため、このフィールドの値はLoadStartTimeフィールドの値と同じです。

ETLステージが終了する時刻。

INSERTジョブにはETLステージがないため、このフィールドの値はLoadStartTimeフィールドの値と同じです。

LoadStartTime

LOADステージが開始される時刻。

Spark LoadジョブでのLoadStartTimeフィールドの意味はBroker Loadジョブと同じです。

INSERTジョブでのLoadStartTimeフィールドの意味はBroker Loadジョブと同じです。

LoadFinishTime

ロードジョブの終了時刻。

Spark LoadジョブでのLoadFinishTimeフィールドの意味はBroker Loadジョブと同じです。

INSERTジョブでのLoadFinishTimeフィールドの意味はBroker Loadジョブと同じです。

URL

ロードジョブで検出された不適格データにアクセスするために使用するURLです。curlコマンドまたはwgetコマンドを使用してURLにアクセスし、不適格データを取得できます。不適格データが検出されない場合、NULLが返されます。

Spark LoadジョブでのURLフィールドの意味はBroker Loadジョブと同じです。

INSERTジョブでのURLフィールドの意味はBroker Loadジョブと同じです。

JobDetails

ロードジョブに関連するその他の情報。

  • 未完了のバックエンド:データのロードが完了していないBEのID。
  • ScannedRows:StarRocksにロードされた総行数とフィルタリングされた行数。
  • TaskNumber:1つまたは複数のタスクに分割される場合があります。これは、同時に実行されるロードタスクの数を示します。
  • 全バックエンド:データのロードを実行しているBEのID。
  • FileNumber:ソースデータファイルの数。
  • FileSize:ソースデータファイルのデータ容量。単位: バイト。

Spark LoadジョブでのJobDetailsフィールドの意味はBroker Loadジョブと同じです。

INSERTジョブでのJobDetailsフィールドの意味はBroker Loadジョブと同じです。

使用上の注意

  • SHOW LOADステートメントが返す情報は、ロードジョブのLoadFinishTimeから3日間有効です。3日経過すると、情報は表示できなくなります。デフォルトの有効期間を変更するには、label_keep_max_secondパラメータを使用できます。

    ADMIN SET FRONTEND CONFIG ("label_keep_max_second" = "value");
  • LoadStartTimeフィールドの値が長時間N/Aのままの場合、ロードジョブが大量に重なっています。ロードジョブの作成頻度を減らすことをお勧めします。

  • ロードジョブにかかる総時間 = LoadFinishTime - CreateTime

  • ロードジョブがLOADステージで消費する総時間 = LoadFinishTime - LoadStartTime

例1:現在のデータベース内のすべてのロードジョブを縦に表示します。

SHOW LOAD\G;
*************************** 1. row ***************************
JobId: 976331
Label: duplicate_table_with_null
State: FINISHED
Progress: ETL:100%; LOAD:100%
Type: BROKER
Priority: NORMAL
EtlInfo: unselected.rows=0; dpp.abnorm.ALL=0; dpp.norm.ALL=65546
TaskInfo: resource:N/A; timeout(s):300; max_filter_ratio:0.0
ErrorMsg: NULL
CreateTime: 2022-10-17 19:35:00
EtlStartTime: 2022-10-17 19:35:04
EtlFinishTime: 2022-10-17 19:35:04
LoadStartTime: 2022-10-17 19:35:04
LoadFinishTime: 2022-10-17 19:35:06
URL: NULL
JobDetails: {"Unfinished backends":{"b90a703c-6e5a-4fcb-a8e1-94eca5be0b8f":[]},"ScannedRows":65546,"TaskNumber":1,"All backends":{"b90a703c-6e5a-4fcb-a8e1-94eca5be0b8f":[10004]},"FileNumber":1,"FileSize":548622}

例2:現在のデータベース内のラベルに文字列 null を含む2つのロードジョブを表示します。

SHOW LOAD 
WHERE LABEL LIKE "null"
LIMIT 2;

+-------+---------------------------+----------+---------------------+--------+---------------------------------------------------------+---------------------------------------------------------------------------------------------------------+----------+---------------------+---------------------+---------------------+---------------------+---------------------+--------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| JobId | Label | State | Progress | Type | EtlInfo | TaskInfo | ErrorMsg | CreateTime | EtlStartTime | EtlFinishTime | LoadStartTime | LoadFinishTime | URL | JobDetails |
+-------+---------------------------+----------+---------------------+--------+---------------------------------------------------------+---------------------------------------------------------------------------------------------------------+----------+---------------------+---------------------+---------------------+---------------------+---------------------+--------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 10082 | duplicate_table_with_null | FINISHED | ETL:100%; LOAD:100% | BROKER | unselected.rows=0; dpp.abnorm.ALL=0; dpp.norm.ALL=65546 | resource:N/A; timeout(s):300; max_filter_ratio:0.0 | NULL | 2022-08-02 14:53:27 | 2022-08-02 14:53:30 | 2022-08-02 14:53:30 | 2022-08-02 14:53:30 | 2022-08-02 14:53:31 | NULL | {"Unfinished backends":{"4393c992-5da1-4e9f-8b03-895dc0c96dbc":[]},"ScannedRows":65546,"TaskNumber":1,"All backends":{"4393c992-5da1-4e9f-8b03-895dc0c96dbc":[10002]},"FileNumber":1,"FileSize":548622} |
| 10103 | unique_table_with_null | FINISHED | ETL:100%; LOAD:100% | SPARK | unselected.rows=0; dpp.abnorm.ALL=0; dpp.norm.ALL=65546 | resource:test_spark_resource_07af473a_1230_11ed_b483_00163e0e550b; timeout(s):300; max_filter_ratio:0.0 | NULL | 2022-08-02 14:56:06 | 2022-08-02 14:56:19 | 2022-08-02 14:56:41 | 2022-08-02 14:56:41 | 2022-08-02 14:56:44 | http://emr-header-1.cluster-49091:20888/proxy/application_1655710334658_26391/ | {"Unfinished backends":{"00000000-0000-0000-0000-000000000000":[]},"ScannedRows":65546,"TaskNumber":1,"All backends":{"00000000-0000-0000-0000-000000000000":[-1]},"FileNumber":1,"FileSize":8790855} |
+-------+---------------------------+----------+---------------------+--------+---------------------------------------------------------+---------------------------------------------------------------------------------------------------------+----------+---------------------+---------------------+---------------------+---------------------+---------------------+--------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

Example 3: ラベルに文字列tableを含むexample_dbのロードジョブを表示します。また、返されたロードジョブはLoadStartTimeフィールドの降順で表示されます。

SHOW LOAD FROM example_db 
WHERE LABEL Like "table"
ORDER BY LoadStartTime DESC;

+-------+---------------------------+----------+---------------------+--------+---------------------------------------------------------+---------------------------------------------------------------------------------------------------------+----------+---------------------+---------------------+---------------------+---------------------+---------------------+--------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| JobId | Label | State | Progress | Type | EtlInfo | TaskInfo | ErrorMsg | CreateTime | EtlStartTime | EtlFinishTime | LoadStartTime | LoadFinishTime | URL | JobDetails |
+-------+---------------------------+----------+---------------------+--------+---------------------------------------------------------+---------------------------------------------------------------------------------------------------------+