51 DBMS_CLOUD_PIPELINE
DBMS_CLOUD_PIPELINEパッケージを使用すると、クラウドでデータをロードおよびエクスポートするためのデータ・パイプラインを作成できます。このパッケージは、オブジェクト・ストア内のファイルの、データベースへの継続的な増分データ・ロードをサポートしています。DBMS_CLOUD_PIPELINEは、タイムスタンプ列に基づいた、データベースからオブジェクト・ストアへの、表データまたは問合せ結果の継続的な増分エクスポートもサポートしています。
51.1 DBMS_CLOUD_PIPELINEサブプログラムの要約
この表は、DBMS_CLOUD_PIPELINEパッケージに含まれているサブプログラムの概要を示しています。
ノート:
DBMS_CLOUD_PIPELINEパッケージは、Autonomous AI Databaseバージョン19.22以降でのみ使用できます。| サブプログラム | 説明 |
|---|---|
|
新しいデータ・パイプラインを作成します。 |
|
|
既存のデータ・パイプラインを削除します。 |
|
|
データ・パイプラインの追跡状態をリセットします。パイプラインのリセットを使用して、データ・ロードまたはエクスポートの初期状態からそのパイプラインをもう一度開始します。オプションで、パイプラインのリセットにより、パイプラインのタイプに応じて、データベース内またはオブジェクト・ストア内のデータをパージできます。 |
|
|
現在のフォアグラウンド・セッションで(スケジュール済ジョブではない)パイプラインのオンデマンド実行を行います。 |
|
|
パイプライン属性を設定します。2種類のオーバーロードされたプロシージャがあります。一方は単一の属性を設定し、もう一方は、属性名/値のペアのJSONドキュメントを使用して複数の属性を設定します |
|
|
データ・パイプラインを開始します。パイプラインが開始されると、パイプライン操作は、パイプライン属性を使用して構成されている"interval"に従って、スケジュール済ジョブで継続的に実行されるようになります。 |
|
|
データ・パイプラインを停止します。パイプラインが停止されると、そのパイプラインに対して将来のジョブはスケジュールされなくなります。 |
51.1.1 CREATE_PIPELINEプロシージャ
このプロシージャは、新しいデータ・パイプラインを作成します。
構文
DBMS_CLOUD_PIPELINE.CREATE_PIPELINE(
pipeline_name IN VARCHAR2,
pipeline_type IN VARCHAR2,
attributes IN CLOB DEFAULT NULL,
description IN VARCHAR2 DEFAULT NULL
);
パラメータ
| パラメータ | 説明 |
|---|---|
|
|
パイプラインの名前を指定します。このパイプライン名は、Oracle SQL識別子のネーミング規則に従っている必要があります。 このパラメータは必須です。 |
|
|
パイプライン・タイプを指定します。 有効な値: このパラメータは必須です。 |
|
|
JSON形式でのパイプライン属性。 デフォルト値: 詳細は、「DBMS_CLOUD_PIPELINEの属性」を参照してください。 |
|
|
パイプラインの説明。 デフォルト値: |
51.1.2 DROP_PIPELINEプロシージャ
このプロシージャは、既存のデータ・パイプラインを削除します。パイプラインが開始されている場合は、それを削除する前に停止する必要があります。
構文
DBMS_CLOUD_PIPELINE.DROP_PIPELINE(
pipeline_name IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE
);
パラメータ
| パラメータ | 説明 |
|---|---|
|
|
パイプライン名を指定します。 このパラメータは必須です。 |
|
|
パイプラインを、開始状態であっても強制的に削除します。 有効な値: デフォルト値: |
使用上のノート
-
開始状態のパイプラインを削除するには、
forceパラメータをTRUEに設定します。
51.1.3 RESET_PIPELINEプロシージャ
データ・パイプラインの追跡状態をリセットします。パイプラインのリセットを使用して、データ・ロードまたはエクスポートの初期状態からそのパイプラインをもう一度開始します。オプションで、パイプラインのリセットにより、パイプラインのタイプに応じて、データベース内またはオブジェクト・ストア内のデータをパージできます。データ・パイプラインをリセットするには、そのデータ・パイプラインが停止状態である必要があります。
構文
DBMS_CLOUD_PIPELINE.RESET_PIPELINE(
pipeline_name IN VARCHAR2,
purge_data IN BOOLEAN DEFAULT FALSE
);
パラメータ
| パラメータ | 説明 |
|---|---|
|
|
パイプラインの名前を指定します。 このパラメータは必須です。 |
|
|
パージ・データは、ロード・パイプラインまたはエクスポート・パイプラインに適用されます:
有効な値: デフォルト値: |
使用上のノート
-
データ・パイプラインをリセットするには、そのデータ・パイプラインが停止状態である必要があります。詳細は、「STOP_PIPELINEプロシージャ」を参照してください。
-
ロード・パイプラインの場合は、そのパイプラインをリセットすると、そのパイプラインによってロードされているファイルのレコードがクリアされます。ロード・パイプラインのリセット後に
START_PIPELINEまたはRUN_PIPELINE_ONCEをコールすると、そのパイプラインによってデータ・ロードが繰り返され、オブジェクト・ストアの場所にあるファイルすべてが含まれます。purge_dataがTRUEに設定されている場合、DBMS_CLOUD_PIPELINE.RESET_PIPELINEは次のことを実行します:-
table_name属性で指定した、パイプラインのデータベース表にあるデータを切り捨てます。 -
パイプラインのステータス表、およびパイプラインの不良ファイル表とエラー表を削除します(それらが存在する場合)。
-
-
エクスポート・パイプラインの場合は、そのパイプラインをリセットすると、データベース表にある最後に追跡したデータがクリアされます。エクスポート・パイプラインのリセット後に
START_PIPELINEまたはRUN_PIPELINE_ONCEをコールすると、そのパイプラインによって、その表または問合せからのデータのエクスポートが繰り返されます。purge_dataがTRUEに設定されている場合、DBMS_CLOUD_PIPELINE.RESET_PIPELINEは、location属性で指定されているオブジェクト・ストアの場所にある、既存のファイルを削除します。
51.1.4 RUN_PIPELINE_ONCEプロシージャ
このプロシージャは、現在のフォアグラウンド・セッションでパイプラインのオンデマンド実行を行います(スケジュール済ジョブで実行するのではない)。継続的ジョブとしてパイプラインを開始する前に、DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCEを使用してそのパイプラインをテストします。
構文
DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE(
pipeline_name IN VARCHAR2
);
パラメータ
| パラメータ | 説明 |
|---|---|
|
|
実行するパイプラインの名前を指定します。 このパラメータは必須です。 |
使用上のノート
-
パイプラインのテスト実行の後に、
DBMS_CLOUD_PIPELINE.RESET_PIPELINEを使用してそのパイプラインの状態をリセットできます。これにより、スケジュール済ジョブでそのパイプラインを開始する前に、パイプラインの状態をリセットできます。 -
パイプラインが開始状態の場合は、それをフォアグラウンド・セッションで実行できません。
51.1.5 SET_ATTRIBUTEプロシージャ
このプロシージャは、パイプラインの属性を設定します。2種類のオーバーロードされたプロシージャがあります。一方は単一の属性を設定し、もう一方は、属性名/値のペアのJSONドキュメントを使用して複数の属性を設定します。
構文
PROCEDURE DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE(
pipeline_name IN VARCHAR2,
attribute_name IN VARCHAR2,
attribute_value IN CLOB
);
PROCEDURE DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE(
pipeline_name IN VARCHAR2,
attributes IN CLOB
);
パラメータ
| パラメータ | 説明 |
|---|---|
|
|
属性を設定するパイプラインの名前を指定します。 このパラメータは必須です。 |
|
|
設定する属性の属性名を指定します。 詳細は、「DBMS_CLOUD_PIPELINEの属性」を参照してください。 |
attribute_value |
設定するパイプライン属性の値を指定します。 詳細は、「DBMS_CLOUD_PIPELINEの属性」を参照してください。 |
|
|
属性の名前と値を含むJSONドキュメントを指定します。 詳細は、「DBMS_CLOUD_PIPELINEの属性」を参照してください。 |
使用上のノート
-
DBMS_CLOUD_PIPELINE.SET_ATTRIBUTEを使用してattributesパラメータで複数の属性を設定すると、既存の属性すべてが削除され、そのJSONドキュメントにある指定した属性で上書きされます。
51.1.6 START_PIPELINEプロシージャ
intervalに従って、スケジュール済ジョブで継続的に実行されます。
構文
DBMS_CLOUD_PIPELINE.START_PIPELINE(
pipeline_name IN VARCHAR2,
start_date IN TIMESTAMP WITH TIME ZONE DEFAULT NULL
);
パラメータ
| パラメータ | 説明 |
|---|---|
|
|
パイプラインの名前を指定します。 このパラメータは必須です。 |
|
|
パイプライン・ジョブの開始日を指定します。 デフォルト値: |
使用上のノート
-
デフォルトでは、パイプライン・ジョブは、そのパイプラインが開始されるとすぐに開始されます。パイプライン・ジョブを後で開始するには、
start_dateパラメータを使用して、有効な日付またはタイムスタンプを指定します。 -
パイプラインの
intervalおよびその他のパイプライン属性については、「DBMS_CLOUD_PIPELINEの属性」を参照してください。
51.1.7 STOP_PIPELINEプロシージャ
このプロシージャは、データ・パイプラインを停止します。パイプラインが停止されると、そのパイプラインに対して将来のジョブはスケジュールされなくなります。
構文
DBMS_CLOUD_PIPELINE.STOP_PIPELINE(
pipeline_name IN VARCHAR2,
force IN BOOLEAN DEFAULTFALSE
);
パラメータ
| パラメータ | 説明 |
|---|---|
|
|
パイプラインの名前を指定します。 このパラメータは必須です。 |
|
|
forceパラメータが 有効な値: デフォルト値: |
51.2 DBMS_CLOUD_PIPELINEの属性
属性は、データ・パイプラインの動作の制御と構成のために役立ちます。
属性
ノート:
「パイプライン・タイプ」列に示されているとおり、パイプライン・タイプに応じて(LOADまたはEXPORT)、パイプラインは様々な一連の属性をサポートしています。
| 属性名 | 説明 | パイプライン・タイプ | パイプライン開始後に変更可能 |
|---|---|---|---|
credential_name |
ソースCloud Object Storageにアクセスするための資格証明の名前。 デフォルト値:
|
LOAD、EXPORT |
はい |
field_list |
ソース・ファイル内のフィールドとそのデータ型を識別します。この引数の構文は、通常のOracle外部表の デフォルト値: このデフォルト値にするとそれらのフィールドが指定されます。それらのデータ型は、 |
LOAD |
はい |
format |
パイプラインのタイプの書式を説明するオプション。
データポンプの この属性は、 |
LOAD、EXPORT |
はい |
interval |
スケジュール済パイプライン・ジョブの連続実行間の時間間隔(分)。 デフォルト値: 15分 |
LOAD、EXPORT |
はい |
key_column |
より新しいデータを継続的にオブジェクト・ストアにエクスポートするための、指定した デフォルト値: NULL エクスポート・パイプラインに |
EXPORT |
いいえ |
location |
オブジェクト・ストレージの場所を指すURIを指定します。 URIの形式は、Cloud Object Storageサービスによって異なります。詳細は、「DBMS_CLOUDのURI形式」を参照してください。 この属性は、 |
LOAD、EXPORT |
いいえ |
query |
必要なデータのみがエクスポートされるように、 例:
デフォルト値: エクスポート・パイプラインの場合は、 |
EXPORT |
いいえ |
table_name |
データをロードまたはエクスポートするためのターゲット表の名前を指定します。 ロード・パイプラインの場合、 エクスポート・パイプラインの場合は、 |
LOAD、EXPORT |
いいえ |
table_owner |
データをロードまたはエクスポートするためのターゲット表が存在するスキーマの名前。 デフォルト値:
|
LOAD、EXPORT |
いいえ |