このトピックでは、Enterprise Distributed Application Service(EDAS)コンソールの [ジョブ] ページ、または SchedulerX コンソールの [タスク管理] ページでジョブを管理する方法について説明します。
ジョブの作成
ジョブを作成する前に、ジョブ用にアプリケーションが作成されていることを確認してください。 詳細については、「アプリケーション管理」をご参照ください。
SchedulerX コンソール にログインします。
にログインします。
左側のナビゲーションウィンドウで、[タスクスケジューリング(SchedulerX)] をクリックします。
上部のナビゲーションバーで、リージョンを選択します。
左側のナビゲーションウィンドウで、[ジョブ] をクリックします。
左側のナビゲーションウィンドウで、[タスク管理] をクリックします。
[ジョブ][タスク管理] ページで、[名前空間] を選択し、[タスクの作成] をクリックします。 [基本設定] ステップで、パラメータを設定し、[次のステップ] をクリックします。
次の表は、基本パラメータについて説明しています。
パラメータ
説明
タスク名
ジョブの名前。
説明
ジョブの説明。 ジョブの検索と管理を容易にするために、簡潔で明確な説明を指定します。
アプリケーション ID
ジョブが属するグループ。 ドロップダウンリストから値を選択します。
タスクタイプ
ジョブの作成に使用するプログラミング言語。 有効な値: Java、XXL-JOB、SpringSchedule、Golang、ScriptTask、Http、DataWorks。 ScriptTask を選択した場合は、Script パラメータに shell、python、または go を選択し、表示されるエディタにスクリプトを入力する必要があります。
クラスの完全なパス
説明このパラメータは、タスクタイプ パラメータが java に設定されている場合にのみ使用できます。
JobProcessor の完全なパス。 例:
xxx.xxx.xxx.HelloProcessor
。実行モード
ジョブが実行されるモード。 有効な値:
スタンドアロン操作:ジョブはランダムなワーカーで実行されます。
ブロードキャスト実行:ジョブはすべてのワーカーで同時に実行され、システムはすべてのワーカーがジョブを完了するまで待機します。
ビジュアル MapReduce:Map モデル。 ジョブリストには 300 件以下のジョブしか許可されていません。
Professional Edition では、最大 1,000 件のジョブが許可され、キーワードでジョブをクエリできます。
MapReduce:通常の MapReduce モデル。 このモードでは、多数のジョブを並列処理できます。 ただし、ジョブの概要情報のみをクエリできます。 ジョブ数が 1,000,000 未満の場合は、このモードを選択することをお勧めします。
シャード実行:このモードは elastic-job モデルに似ています。 シャードは、指定されたシャーディング設定に基づいて複数のエージェントで実行するために均等に分散されます。 この実行モードは、さまざまなプログラミング言語を使用するジョブをサポートしています。
説明ジョブの詳細設定は、ジョブの 実行モード によって異なります。
タスクパラメータ
SchedulerX がジョブを実行するときにコンテキストから取得できる任意の文字列。
次の表は、詳細設定のパラメータについて説明しています。
パラメータ
該当する実行モード
説明
デフォルト値
タスク失敗時の再試行回数
すべてのモード
ジョブが失敗した場合の自動再試行回数。
説明ジョブがワーカーで実行されていて、ワーカーが再起動された場合、ジョブは失敗します。 ジョブをすぐに再実行する場合は、このパラメータを指定できます。
0
タスク失敗時の再試行間隔
すべてのモード
2 回の連続する再試行の間隔。 単位:秒。
30
タスクの同時実行性
すべてのモード
同じジョブを同時に実行するインスタンスの数。 値 1 は、同時実行が許可されていないことを指定します。
1
クリーンアップ戦略
すべてのモード
ジョブ実行履歴のクリーンアップポリシー。
最後の N エントリを保持
保持数
すべてのモード
保持されるジョブ実行レコードの数。
300
単一マシンでの同時サブタスク数
ビジュアル MapReduce
MapReduce
シャード実行
分散モデルで単一ワーカー上で同時に実行されるタスクの数。 実行を高速化するには、より大きな値を指定します。 ダウンストリームまたはデータベースが指定した値に耐えられない場合は、より小さい値を指定できます。
5
サブタスクの失敗再試行回数
ビジュアル MapReduce
MapReduce
シャード実行
分散モデルでタスクが失敗した場合の自動再試行回数。
0
サブタスク失敗時の再試行間隔
ビジュアル MapReduce
MapReduce
シャード実行
分散モデルでタスクが失敗した場合の、2 回の連続する再試行の間隔。 単位:秒。
0
サブタスクフェールオーバー戦略
ビジュアル MapReduce
MapReduce
シャード実行
ワーカーがタスクの実行に失敗して停止した後、タスクを新しいワーカーに配布するかどうかを指定します。 スイッチをオンにすると、フェールオーバーがトリガーされたときに、システムがタスクを複数回実行する可能性があります。 タスクのべき等性を実装する必要があります。
説明このパラメータは、エージェント V1.8.13 以降に適用されます。
マスターノードが実行に参加する
ビジュアル MapReduce
MapReduce
シャード実行
マスターノードがタスクの実行に参加するかどうかを指定します。 タスクを実行するには、少なくとも 2 つのワーカーが使用可能である必要があります。 非常に多数のタスクが存在する場合は、スイッチをオフにすることをお勧めします。
説明このパラメータは、エージェント V1.8.13 以降に適用されます。
サブタスク配布方法
ビジュアル MapReduce
MapReduce
シャード実行
プッシュモデル:タスクはワーカーに均等に配布されます。
プルモデル:すべてのワーカーがタスクをプルします。 木桶理論はこのモデルには適用されません。 プルプロセス中に、すべてのタスクがマスターノードにキャッシュされます。 これにより、メモリに負荷がかかります。 一度に 10,000 件を超えるタスクを配布しないことをお勧めします。
プッシュモデル
配布ポリシー
ビジュアル MapReduce
MapReduce
タスク配布ポリシー。 デフォルト値:ポーリングスキーム。
ポーリングスキーム:システムは、各ワーカーに同じ数のタスクを均等に配布します。 このポリシーは、各ワーカーがタスクの処理にほぼ同じ時間を必要とするシナリオに適しています。
WorkerLoad 最適戦略:マスターノードはワーカーの負荷を自動的に検出します。 このポリシーは、各ワーカーがタスクの処理に必要とする時間の長さに大きな違いがあるシナリオに適しています。
説明このパラメータは、エージェント V1.10.14 以降に適用されます。
配布率
ビジュアル MapReduce
MapReduce
タスク配布率。 1 秒あたりまたは 1 分あたりに配布されるタスク数を指定できます。
一度にプルされるサブタスク数
ビジュアル MapReduce
MapReduce
シャード実行
スレーブノードがマスターノードから一度にプルするタスクの数。 このパラメータは、「サブタスク配布方法」パラメータが「プルモデル」に設定されている場合にのみ表示されます。
5
サブタスクキュー容量
ビジュアル MapReduce
MapReduce
シャード実行
スレーブノードにタスクをキャッシュするキューのサイズ。 このパラメータは、「サブタスク配布方法」パラメータが「プルモデル」に設定されている場合にのみ表示されます。
10
サブタスクのグローバル同時実行性
ビジュアル MapReduce
MapReduce
シャード実行
プルモデルのすべてのワーカーにおける同時タスクの総数。 このパラメータは、同時タスク数を制限するのに役立ちます。 このパラメータは、「サブタスク配布方法」パラメータが「プルモデル」に設定されている場合にのみ表示されます。
1000
[タイミング設定] ステップで、スケジューリング設定と詳細設定を行い、[次のステップ] をクリックします。
次の表は、ジョブスケジューリングのパラメータについて説明しています。
パラメータ
説明
時間タイプ
なし:ジョブはワークフローを使用してトリガーされます。
cron:ジョブは CRON 式に基づいてトリガーされます。
api:ジョブは API 操作の呼び出しによってトリガーされます。
fixed_rate:ジョブは指定された間隔でトリガーされます。
second_delay:ジョブは数秒の遅延でトリガーされます。
one_time:ジョブは、指定された時点で 1 回だけトリガーされます。
unix cron:ジョブは、UNIX システムで使用可能な CRON 式に基づいてトリガーされます。
Cron 式
cron 構文に準拠する CRON 式を入力するか、SchedulerX が提供するツールを使用して式を生成します。 次に、CRON 式を確認します。 このパラメータは、「時間タイプ」パラメータが「cron」に設定されている場合にのみ使用できます。
固定頻度
ジョブがトリガーされる間隔を指定します。 このパラメータは、「時間タイプ」パラメータが「fixed_rate」に設定されている場合にのみ使用できます。 値は 60 より大きい必要があります。 単位:秒。 たとえば、値 200 は、ジョブが 200 秒間隔でトリガーされることを示します。
固定遅延
遅延を指定します。 このパラメータは、「時間タイプ」パラメータが「second_delay」に設定されている場合にのみ使用できます。 有効な値:1 ~ 60。 単位:秒。 たとえば、値 5 は、ジョブが 5 秒の遅延でトリガーされることを示します。
スケジューリング時間
ジョブがトリガーされる日時を指定します。 このパラメータは、「時間タイプ」パラメータが「one_time」に設定されている場合にのみ使用できます。 例:
2023-7-13 00:00:00
。Unix Cron 式
UNIX システムで使用可能な CRON 式を入力します。 このパラメータは、「時間タイプ」パラメータが「unix cron」に設定されている場合にのみ使用できます。
次の表は、詳細設定のパラメータについて説明しています。
パラメータ
説明
時間オフセット
処理されるデータのタイムスタンプとジョブがトリガーされる時間との間のオフセット。 SchedulerX がジョブを実行するときに、コンテキストからオフセット値を取得できます。
タイムゾーン
国または地域のタイムゾーンを選択します。 ビジネス要件に基づいて、協定世界時(UTC)タイムゾーンを選択することもできます。
[通知設定] ステップで、アラート設定と連絡先を設定します。 次に、[完了] をクリックします。
[通知チャネルと連絡先] パラメータには、[アプリケーショングループの連絡先] または [ユーザー定義] を選択できます。
アプリケーショングループの連絡先
すべてのアプリケーショングループの連絡先は通知を受信できます。
ユーザー定義
通知を受信できる [連絡先グループ] または [連絡先] を指定できます。
連絡先グループ
連絡先グループを追加します。 連絡先グループ内のすべての連絡先は通知を受信できます。 連絡先グループの作成方法の詳細については、「通知の連絡先と通知の連絡先グループ」トピックの 通知の連絡先と通知の連絡先グループを作成する セクションをご参照ください。
連絡先
1. 通知を受信する連絡先を追加します。 一度に複数の連絡先を追加できます。 連絡先を作成していない場合は、[連絡先を追加] をクリックし、次に [連絡先の作成] をクリックします。
2. 表示されたページで、[新しい連絡先] をクリックし、連絡先情報を入力します。
[タスク管理] ページに戻り、ジョブが存在し、指定された設定を使用しているかどうかを確認します。
説明デフォルトでは、ジョブは作成後に有効になります。 ビジネス要件に基づいて、ジョブを有効または無効にすることができます。 詳細については、このトピックの ジョブを有効または無効にする セクションをご参照ください。
ジョブの変更
[タスク管理] ページで、管理するジョブを見つけ、[編集][操作] 列の をクリックします。
[編集] パネルで、基本設定、スケジューリング設定、およびアラート設定を変更します。
説明ジョブの [アプリケーション ID] パラメータと [タスクタイプ] パラメータの値は変更できません。 その他のパラメータは、ジョブの作成時と同じ方法で設定できます。
ジョブの実行
[タスク管理] ページで、管理するジョブを見つけ、[操作] 列の [1 回実行] をクリックして、ジョブを 1 回実行します。
ジョブを有効または無効にする
単一ジョブを有効または無効にする
[タスク管理] ページで、管理するジョブを探し、[詳細] > [無効化] または [有効化] を [操作] 列で選択します。
表示されたダイアログボックスで、[確認] をクリックします。
複数のジョブを同時に有効または無効にする
Professional Edition では、複数のジョブを同時に有効または無効にすることができます。 [タスク管理] ページで、管理するジョブを選択し、ジョブリストの下にある [一括無効化] または [一括有効化] をクリックします。
ジョブを複製する
[タスク管理] ページで、管理するジョブを見つけ、[操作] 列で [詳細] > [複製] を選択します。 ジョブの設定をコピーし、コピーしたジョブの設定を変更して新しいジョブを作成できます。
ジョブ出力の更新
ワークロードが更新された場合は、対応するジョブを再実行して、特定の期間内のデータを再処理できます。 たとえば、データベースに新しいフィールドを追加した場合、または前月の特定の時点で生成されたデータにエラーが含まれている場合は、対応するジョブの出力を更新できます。
ジョブとワークフローの出力を更新できます。 更新するデータポイントの間隔は 1 日である必要があります。
ジョブの出力に偏差が含まれている場合、または出力にいくつかの値が欠落している場合は、ジョブのスケジューリングパラメータを変更し、特定のジョブプロパティを設定してジョブ出力を更新できます。
SchedulerX コンソール にログインします。
[タスク管理] ページで、管理するジョブを見つけ、[詳細] > [タスクの再ブラシ] を [操作] 列で選択します。
[タスクの再ブラッシュ] パネルで、[開始日と終了日] パラメータと [データ時間] パラメータを指定し、[OK] をクリックします。
開始日と終了日:ジョブの時間範囲を指定します。
データ時間:更新するデータの時点を指定します。
設定例:
現在の時刻は 2019 年 1 月 1 日 10:00:00 です。
ジョブの時間範囲は 2018 年 10 月 1 日から 2018 年 10 月 7 日です。 デフォルトの開始時刻は 2018 年 10 月 1 日 00:00:00、デフォルトの終了時刻は 2018 年 10 月 7 日 23:59:59 です。
再処理されるデータの時点は 11:11:11 です。
ジョブは 7 回再実行され、7 つのジョブインスタンスが生成されます。
S/N
スケジューリング時間
データが再処理される時点
1
2019.1.1 10:00:00
2018.10.1 11:11:11
2
2019.1.1 10:00:00
2018.10.2 11:11:11
3
2019.1.1 10:00:00
2018.10.3 11:11:11
4
2019.1.1 10:00:00
2018.10.4 11:11:11
5
2019.1.1 10:00:00
2018.10.5 11:11:11
6
2019.1.1 10:00:00
2018.10.6 11:11:11
7
2019.1.1 10:00:00
2018.10.7 11:11:11
ジョブの操作レコードと実行レコードを表示する
実行レコードの表示:[タスク管理] ページで、管理するジョブを見つけ、[操作] 列で [詳細] > [履歴レコード] を選択します。
操作レコードの表示:[タスク管理] ページで、管理するジョブを見つけ、[操作] 列で [詳細] > [操作レコード] を選択します。
ジョブの削除
SchedulerX の課金を停止するには、アプリケーションのジョブを削除または無効にして、スケジューリング期間中に料金が発生しないようにします。
ジョブがオーケストレーションされている場合は、ジョブを無効化または削除する前に、関連するワークフローを削除します。
SchedulerX の課金対象項目と課金方法については、「SchedulerX サーバーレスインスタンスの課金説明」をご参照ください。
[タスク管理] ページで、管理するジョブを見つけ、詳細削除[操作] 列で > を選択します。
表示されたダイアログボックスで、[確認] をクリックします。
ジョブのインポートまたはエクスポート
[タスク管理] ページで、Professional Edition のアプリケーションを選択します。
[タスクのインポート] または [タスクのエクスポート] をクリックします。