ジョブの作成
ジョブ機能によって、前提条件の項で実行されたステップが自動化されます。
次に、「ジョブ」機能を使用してジョブを作成するステップ・バイ・ステップの例を示します。
- Data Studioツールのジョブ機能で、「ジョブの作成」を選択します。
ジョブの作成ウィザードで、一般設定で次のフィールド値を指定します:
- ジョブ名: ジョブの名前を入力します。 たとえば、MY NEW JOBなどです。
- ジョブ摘要: 説明を入力します。 このフィールドは省略可能です。
「次」をクリックして、「ステップ」タブに進みます。
- ステップの追加
「ステップ」タブで、プロセスを自動化するステップを追加します。
データ・ロード・ステップを追加し、作成した表AI支援レシピを追加し、PL/SQLプロシージャを実行して、ジョブのステップとしてRESTコールを実行します。ノート:
「前提条件」セクションでタスクがすでに定義されています。データ・ロード・ステップの追加:- 「+追加ステップ」ドロップダウンで、「データ・ロードの追加」を選択します。
- 「データ・ロードの追加」ダイアログで、次のフィールド値を指定します:
データ・ロードの選択: ドロップダウンから「データ・ロード」を選択します。 この例では、DATA_LOADです。
ロード名: ロード名を入力します。 このフィールドは自動的に入力されます。 これは、ロードにタグ付けする名前です。
「エラー時にジョブを停止」を選択します。
「データ・ロードの追加」をクリックします。新しいステップがジョブのステップのリストに表示されます。 ステップを編集するには、ステップの横にある「鉛筆」アイコンをクリックします。 選択したステップを削除するには、ステップの横にある「削除」アイコンをクリックします。
表AI支援レシピの追加:- 「+追加ステップ」ドロップダウンで、「表AIアシスト・レシピの追加」を選択します。
- 「Table AIレシピを支援」ダイアログで、次のフィールド値を指定します:
表AIアシスト・レシピの選択: ドロップダウンから作成するレシピを選択します。
「エラー時にジョブを停止」を選択します。
「表AIアシスト・レシピの追加」をクリックします。
この新しいステップが、既存の「データ・ロード」ステップの下のステップのリストに追加されます。 ステップを編集するには、ステップの横にある鉛筆アイコンをクリックします。 選択したステップを削除するには、ステップの横にある削除アイコンをクリックします。
プロシージャの追加- 「ステップ」タブの「+ステップの追加」ドロップダウンで、「プロシージャの追加」を選択します。
- 「プロシージャの追加」ダイアログで、次のフィールド値を指定します:
PL/SQLプロシージャ: ドロップダウンから、作成するPL/SQLプロシージャのいずれかを選択します。 この例では、PRINT ITを選択します。
PL/SQLプロシージャの引数: このフィールドには、引数のカンマ区切りリストを指定します。 このフィールドに指定した値は、省略したパラメータのデフォルト値を受け入れるプロシージャに実際のパラメータに渡されます。 これらの引数は、PL/SQLプロシージャに渡されます。 引数には、数値、文字列、ブール値、または$で始まる特殊値のいずれかを指定できます。 この場合、プロシージャをコールすると、$job_nameが
My New Jobに変更されます。たとえば、出力で
$job_nameをPLSQL_JOBに置き換えるには、このフィールドにPLSQL_JOBパラメータを渡す必要があります。「エラー時にジョブを停止」を選択します。
「プロシージャの追加」をクリックします。
RESTコールの追加:- 「+追加ステップ」ドロップダウンで、「RESTコールの追加」を選択します。
ノート:
RESTコールを使用して、様々な操作を実行できます。 これらは、独自のカスタム・アプリケーション、クラウド・プロバイダまたはその他のサードパーティ・ベンダーに対して発生する可能性があります。 たとえば、Oracle Cloud Infrastructure (OCI)は、次の場所で包括的に説明されている様々なエンドポイントを提供: https://docs.oracle.com/en-us/iaas/api/。 このスコープは、OCIのみに限定されないことに注意してください。この例では、OCIのオブジェクト・ストアRESTコールをコールして、オブジェクト・ストアからファイルを読み取るエンドポイントにアクセスします。
- ジョブ・ステップを設定するには、「RESTの追加」ダイアログで次のフィールド値を指定します:
メソッド: GET。
このメソッドは、Oracleデータベースからデータを取得します。
GETメソッドは、表からの行や問合せの結果などのデータをフェッチするために使用されます。 データは変更されません。実行する操作に応じて、次のいずれかのメソッドを選択できます:- POST:
このメソッドは、新しいデータを挿入するか、データを変更するプロセスを起動します。 Oracleデータベースにデータを送信します。通常は、新しいレコードを作成したり、データを変更するプロシージャを実行します。
- DELETE:
Oracleデータベースからデータを削除します。 このメソッドは、パラメータまたはパス変数で識別される、表内の行などの指定されたリソースを削除します。
- PATCH: 既存のデータを部分的に更新します。 このメソッドは、レコード全体を置換せずに行の特定の列を更新するなど、リソースに部分的な変更を適用します。
Url: アクセスするRESTサービスのオブジェクト・ストレージのロケーションを指定し、サーバー上の正しいリソースにリクエストを転送します。 この例では、https://objectstorage.us-ashburn-1.oraclecloud.com/n/*********/*/***/*/**/****.csvと入力します。
資格証明: いずれかの資格証明を選択してリクエストを認証し、REST APIリソースに安全にアクセスする権限があることを確認します。ノート:
Urlはパブリック・バケットであるため、この例では資格証明が選択されていません。本文: このフィールドは、サーバーに送信されるデータ(通常はPOSTまたはPUTリクエスト)を指定します。 GET また、DELETEリクエストには、HTTP標準に従った本文がありません。
ヘッダー: ヘッダーは、JSONオブジェクトの各キー/バリュー・ペアがリクエストのヘッダーおよび値として使用されるJSONオブジェクトとして指定する必要があります。 たとえば、 {
"X-My-Header": "My header value"などです。このフィールドは、サーバーへのリクエストまたはクライアントに関する追加情報を指定します。 これらのヘッダーは、コンテンツ・タイプ、認可資格証明、カスタム・パラメータ、リクエストの処理に必要なその他の制御情報などのメタデータを指定できます。 通常、ヘッダーはPUT,PATCH,POSTおよびDELETEメソッドで使用され、このような詳細を伝達します。「エラー時にジョブを停止」を選択します。
「ステップの追加」をクリックします。
- POST:
前に追加した手順の下に、新しいステップがジョブ・ステップのリストに表示されます。 ステップを編集するには、ステップの横にある「鉛筆」アイコンをクリックします。 選択したステップを削除するには、ステップの横にある「削除」アイコンをクリックします。
「ジョブの作成」ダイアログを使用してすべてのステップをジョブ機能に追加すると、次にジョブのステータスがレポートされます。
「次」をクリックして、「レポート」タブに進みます。
- 電子メール・レポートを送信:
「レポート」タブで、レポート機能の電子メール更新を電子メールで送信するために使用可能なオプションのいずれかを選択します:
- 完了したジョブ: ジョブが完了すると、電子メールが更新されます。
- 失敗したジョブ: ジョブが失敗すると、電子メールが更新されます。
- ジョブのエラー時: ジョブにエラーがあると、電子メール更新が送信されます。
ノート:
-
ジョブ機能で通知を送信するには、Data Studio設定でSimple Mail Transfer Protocol (SMTP)設定を構成する必要があります。
-
詳細は、「Autonomous DatabaseにEメールを送信」の章を参照してください。
-
構成の詳細は、「Data Studio設定」を参照してください。
「次」をクリックして、「スケジュール」タブに進みます。
- ジョブ・スケジュールの作成:
-
「スケジュール」タブで、ジョブを実行するタイミングと頻度を定義します。
スケジューリングに使用可能: このオプションを選択して、ジョブ機能を実行するスケジュールを設定します。つまり、データ・ソースを定期的にポーリングします:- 時間間隔フィールドに数値を入力し、時間タイプおよび新規または変更ファイルのバケットをポーリングする日数を選択します。 たとえば、月曜日、水曜日および金曜日に2時間ごとにポーリングするには、2と入力し、「時間」を選択します。 「平日」ドロップダウンから、「すべての日」、「月曜日から金曜日」、「日曜日から木曜日」または「カスタム」を選択できます。 「カスタム」フィールドでは、適切なフィールドで「月曜日」、「火曜日」、「水曜日」、「木曜日」および「金曜日」を選択できます。
- 開始日と終了日の開始日と終了日を選択します。 開始日を選択しない場合、現在の日時が開始日として使用されます。 終了日はオプションです。 ただし、終了日がない場合、ライブ・フィードは引き続きポーリングされます。
「次」をクリックして、「API詳細」タブに進みます。
-
- ジョブの手動実行:
ジョブ機能は、
DBMS_SCHEDULERまたはAPI’sで作成した後に実行できます。「ジョブの作成」ダイアログの「API詳細」タブでは、左側のナビゲーションで次のペインを表示できます:- ジョブの実行: REST APIで文をコピーし、cURLを使用してGETリクエストをRESTリソースに送信して、特定のジョブを実行します。
curl -u admin:<password> 'https://*******.******.*******.oraclecloud.com:****/ords/admin/_/db-api/latest/data-tools/jobs/run' -X POST -H 'Content-Type: application/json;charset=UTF-8' -d '{"job_name":"My New Job","owner":"admin"}'これはサンプル・コードです。
SQLワークシートでジョブを実行するには、「SQL」セクションに表示されている次のサンプル・コードをコピーして貼り付けます:begin c#***$service.dbms_data_tools.run_job('My New Job'); end;前述のサンプルSQLコードでは、特定のジョブ機能が実行されます。 このコードをSQLワークシートで実行して、ジョブ機能を実行できます。
- ジョブ・アクティビティ詳細: このオプションは、進行中のジョブ実行のステータスを確認するためのREST APIおよびSQL問合せを表示します。 たとえば、ジョブに10時間かかる場合、ジョブが進行中かどうか、失敗したかどうかを確認できます。
ノート:
ジョブが実行されるたびに、すべてのステップのフロー全体が最初から開始されます。
「作成」をクリックします。
My New Jobが作成されたことを示す確認メッセージが表示されます。新しく作成されたジョブは、「ジョブ」ページにリストされます。
- ジョブの実行: REST APIで文をコピーし、cURLを使用してGETリクエストをRESTリソースに送信して、特定のジョブを実行します。










