パイプラインの制御(パイプラインの起動、停止、削除またはリセット)
パイプラインを作成してテストした後、パイプラインを開始、停止または削除してパイプラインを制御します。パイプラインをリセットすることもできます。
パイプラインの開始
パイプラインを作成した後、パイプラインを開始できます。
パイプラインが開始されると、パイプラインはスケジュール済ジョブで継続的に実行されます。パイプラインのスケジュール済ジョブは、デフォルトで15分ごと、またはinterval属性で設定した間隔で繰り返されます。
-
パイプラインを開始します。
BEGIN DBMS_CLOUD_PIPELINE.START_PIPELINE( pipeline_name => 'EMPLOYEE_PIPELINE' ); END; /デフォルトでは、パイプラインが開始されるとすぐにパイプライン・ジョブが開始されます。パイプライン・ジョブを後で開始するには、
start_dateパラメータを使用して有効な将来の日付またはタイムスタンプを指定します。詳細は、START_PIPELINEプロシージャを参照してください。
-
パイプラインが開始されていることを確認します。
たとえば:
SELECT pipeline_name, status from USER_CLOUD_PIPELINES WHERE pipeline_name = 'EMPLOYEE_PIPELINE'; PIPELINE_NAME STATUS ------------------------ ------- EMPLOYEE_PIPELINE STARTED
パイプラインの停止
パイプラインを停止するには、STOP_PIPELINEを使用します。パイプラインが停止すると、そのパイプラインに対して将来のジョブはスケジュールされません。
デフォルトでは、現在実行中のジョブはパイプラインの停止時に完了します。実行中のジョブを終了し、パイプラインをただちに停止するには、forceパラメータをTRUEに設定します。
-
パイプラインを停止します。
BEGIN DBMS_CLOUD_PIPELINE.STOP_PIPELINE( pipeline_name => 'EMPLOYEE_PIPELINE' ); END; /詳細は、STOP_PIPELINEプロシージャを参照してください。
-
パイプラインが停止していることを確認します。
SELECT pipeline_name, status from USER_CLOUD_PIPELINES WHERE pipeline_name = 'EMPLOYEE_PIPELINE'; PIPELINE_NAME STATUS ------------------------ ------- EMPLOYEE_PIPELINE STOPPED
詳細は、STOP_PIPELINEプロシージャを参照してください。
パイプラインの削除
プロシージャDROP_PIPELINEは、既存のパイプラインを削除します。
パイプラインが開始されている場合は、パイプラインを削除する前にパイプラインを停止する必要があります。詳細は、STOP_PIPELINEプロシージャを参照してください。
起動されたパイプラインを削除するには、forceパラメータをTRUEに設定して実行中のジョブを終了し、パイプラインをただちに削除します。
-
パイプラインを削除します。
BEGIN DBMS_CLOUD_PIPELINE.DROP_PIPELINE( pipeline_name => 'EMPLOYEE_PIPELINE' ); END; / -
パイプラインが削除されたことを確認します。
SELECT pipeline_name, status from USER_CLOUD_PIPELINES WHERE pipeline_name = 'EMPLOYEE_PIPELINE'; No rows selected
詳細は、DROP_PIPELINEプロシージャを参照してください。
パイプラインのリセット
パイプラインのリセット操作を使用して、パイプラインのレコードを初期状態にクリアします。
ノート
ノート:オプションで、リセット・パイプラインを使用して、ロード・パイプラインに関連付けられたデータベース表のデータをパージしたり、エクスポート・パイプラインのオブジェクト・ストア内のファイルを削除できます。通常、このオプションは、パイプライン開発中にパイプラインをテストするときに使用されます。
リセット・パイプラインは次のように動作します。
-
ロード・パイプライン: ロード・パイプラインの場合、パイプラインをリセットすると、パイプラインによってロードされているファイルのレコードがクリアされます。ロード・パイプラインのリセット後に
START_PIPELINEまたはRUN_PIPELINE_ONCEをコールすると、パイプラインはデータ・ロードを繰り返し、オブジェクト・ストアの場所にあるすべてのファイルを含めます。purge_dataがTRUEに設定されている場合、プロシージャはデータベース表のデータを切り捨てます。 -
パイプラインのエクスポート: エクスポート・パイプラインの場合、パイプラインをリセットすると、データベース表の最後の追跡データがクリアされます。エクスポート・パイプラインのリセット後に
START_PIPELINEまたはRUN_PIPELINE_ONCEをコールすると、パイプラインは表または問合せからのデータのエクスポートを繰り返します。purge_dataがTRUEに設定されている場合、プロシージャは、location属性で指定されたオブジェクト・ストアの場所にある既存のファイルを削除します。
パイプラインをリセットするには:
-
リセットするパイプラインを停止します。
データ・パイプラインをリセットするには、データ・パイプラインが停止状態である必要があります。詳細は、STOP_PIPELINEプロシージャを参照してください。
-
パイプラインをリセットします。
BEGIN DBMS_CLOUD_PIPELINE.RESET_PIPELINE( pipeline_name => 'EMPLOYEE_PIPELINE', purge_data => TRUE); END; /データベース表、ロード・パイプラインまたはエクスポート・パイプラインのオブジェクト・ストア内のファイルをクリアする場合は、値
TRUEのpurge_dataパラメータのみを使用します。通常、このオプションは、パイプライン開発中にパイプラインをテストするときに使用されます。詳細は、RESET_PIPELINEプロシージャを参照してください。