バルク・ファイル管理のためのDBMS_CLOUD
前提条件
開発者は、Oracle Public Cloud、MulticloudまたはExadata Cloud@CustomerにデプロイされたAutonomous AI DatabaseでDBMS_CLOUDプロシージャを使用できます。
デプロイメントの選択に応じて、DBMS_CLOUDプロシージャをAmazon S3、Azure Blob StorageおよびGoogle Cloud Storageサービス・プロバイダで使用するには、次の前提条件を満たす必要があります。
アウトバウンド接続は、次に説明するようにフリート管理者がNATゲートウェイを使用して構成されている必要があります。
-
Oracle Cloud InfrastructureドキュメントのNAT Gatewayの作成の手順に従って、Autonomous AI Databaseリソースが存在しているVirtual Cloud Network (VCN)にNAT Gatewayを作成します。
-
NATゲートウェイを作成したら、Autonomous AI Databaseリソースが存在する各サブネット(VCN内)にルート・ルールおよびエグレス・セキュリティ・ルールを追加して、これらのリソースがゲートウェイを使用してAzure ADインスタンスから公開キーを取得できるようにします:
-
サブネットの「サブネットの詳細」ページに移動します。
-
「サブネット情報」タブで、サブネットの「ルート表」の名前をクリックして、その「ルート表の詳細」ページを表示します。
-
既存のルート・ルールの表では、次の特性を持つルールがすでに存在するかどうかを確認します:
-
宛先: 0.0.0.0/0
-
ターゲット・タイプ: NAT Gateway
-
ターゲット: VCN内に作成したNATゲートウェイの名前
そのようなルールが存在しない場合は、「ルート・ルールの追加」をクリックし、これらの特性を持つルート・ルールを追加します。
-
-
サブネットの「サブネットの詳細」ページに戻ります。
-
サブネットの「セキュリティ・リスト」表で、サブネット セキュリティ・リストの名前をクリックして、その「セキュリティ・リストの詳細」ページを表示します。
-
サイド・メニュー内の「リソース」で、「エグレス・ルール」をクリックします。
-
既存のエグレス・ルールの表では、次の特性を持つルールがすでに存在するかどうかを確認します:
-
宛先タイプ:CIDR
-
宛先:0.0.0.0/0
-
IPプロトコル:TCP
-
ソース・ポート範囲:443
-
宛先ポート範囲:すべて
そのようなルールが存在しない場合は、「エグレス・ルールの追加」をクリックし、これらの特性を持つエグレス・ルールを追加します。
-
-
ご使用の環境のHTTPプロキシ設定では、データベースがクラウド・サービス・プロバイダにアクセスできるようにする必要があります。
これらの設定は、コンソールを使用したExadata Database Service on Cloud@Customerのプロビジョニングの説明に従って、Exadata Cloud@Customerインフラストラクチャの作成時にフリート管理者によって定義されます。
ノート: HTTPプロキシを含むネットワーク構成は、Exadataインフラストラクチャが「アクティブ化が必要」状態になるまで編集できます。アクティブ化した後は、これらの設定を編集できません。
すでにプロビジョニングされているExadataインフラストラクチャのHTTPプロキシを設定するには、My Oracle Supportでサービス・リクエスト(SR)が必要です。詳細は、My Oracle Supportでのサービス・リクエストの作成を参照してください。
バルク・ファイル管理のためのDBMS_CLOUDサブページプログラムの要約
DBMS_CLOUDパッケージ内のバルク・ファイル操作用のサブプログラム。
| サブプログラム | 説明 |
|---|---|
| BULK_COPYプロシージャ | このプロシージャは、あるクラウド・オブジェクト・ストレージ・バケットから別のクラウド・オブジェクト・ストレージ・バケットにファイルをコピーします。 |
| BULK_DELETEプロシージャ | このプロシージャは、クラウド・オブジェクト・ストレージ・バケットまたはフォルダからファイルを削除します。 |
| BULK_DOWNLOADプロシージャ | このプロシージャは、クラウド・オブジェクト・ストア・バケットからAutonomous AI Databaseのディレクトリにファイルをダウンロードします。 |
| BULK_MOVEプロシージャ | このプロシージャは、あるCloud Object Storageバケットから別のCloud Object Storageバケットにファイルを移動します。 |
| BULK_UPLOADプロシージャ | このプロシージャは、Autonomous AI Databaseのディレクトリからクラウド・オブジェクト・ストレージにファイルをアップロードします。 |
BULK_COPYプロシージャ
このプロシージャは、あるクラウド・オブジェクト・ストレージ・バケットから別のクラウド・オブジェクト・ストレージ・バケットにファイルを一括コピーします。オーバーロード・フォームでは、operation_idパラメータを使用できます。
REGEXP_LIKE演算子と互換性のある正規表現パターンを使用して、削除するファイルのリストをフィルタできます。
ソース・バケットおよびターゲット・バケットまたはフォルダは、同じクラウド・オブジェクト・ストア・プロバイダまたは異なるクラウド・オブジェクト・ストア・プロバイダに配置できます。
ソースとターゲットが別々のオブジェクト・ストアにある場合、または同じクラウド・プロバイダで異なるアカウントを持つ場合は、ソースとターゲットの場所に別々の資格証明名を指定できます。
ソース資格証明名は、ターゲットの場所でもデフォルトで使用されます。
構文
DBMS_CLOUD.BULK_COPY (
source_credential_name IN VARCHAR2 DEFAULT NULL,
source_location_uri IN VARCHAR2,
target_location_uri IN VARCHAR2,
target_credential_name IN VARCHAR2 DEFAULT NULL,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL
);
DBMS_CLOUD.BULK_COPY (
source_credential_name IN VARCHAR2 DEFAULT NULL,
source_location_uri IN VARCHAR2,
target_location_uri IN VARCHAR2,
target_credential_name IN VARCHAR2 DEFAULT NULL,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL,
operation_id OUT NUMBER
);
Parameters
| パラメータ | 説明 |
|---|---|
source_credential_name |
クラウド・オブジェクト・ストレージにアクセスするための資格証明の名前。
|
source_location_uri |
ソースのオブジェクト・ストレージ・バケットまたはフォルダの場所を指すURIを指定します。 このパラメータは必須です。 クラウドのソース・ファイルURI クラウドのソース・ファイルURIのファイル名には、ワイルドカードおよび正規表現を使用できます。 正規表現は、 文字"*"および"?"は、 正規表現パターンは、URI内のファイル名またはサブフォルダ・パスでのみサポートされ、パターン一致は 正規表現を使用する例: ワイルドカードを使用した例: URIのフォーマットは、使用中のクラウド・オブジェクト・ストレージ・サービスによって異なります。詳細は、「クラウド・オブジェクト・ストレージURIフォーマット」をご覧ください。
|
target_location_uri |
ファイルをコピーする必要があるターゲット・オブジェクト・ストレージ・バケットまたはフォルダのURIを指定します。 このパラメータは必須です。 ソースのオブジェクト・ストレージ・バケットまたはフォルダの場所を指すURIを指定します。 このパラメータは必須です。 URIのフォーマットは、クラウド・オブジェクト・ストレージ・サービスによって異なります。詳細は、DBMS_CLOUDパッケージ・ファイル・クラウド・オブジェクト・ストレージのURI形式を参照してください。 |
target_credential_name |
ターゲットのクラウド・オブジェクト・ストレージの場所にアクセスするための資格証明の名前です。
|
regex_filter |
ファイルをフィルタするREGEX式を指定します。REGEX式パターンは、
詳細は、REGEXP_LIKE条件を参照してください。 |
format |
ファイル操作の追加構成オプションを指定します。これらのオプションはJSON文字列として指定されます。 サポートされているフォーマット・オプションは次のとおりです。
|
operation_id |
このパラメータを使用して、USER_LOAD_OPERATIONSビューで、ロード操作の進行状況および最終ステータスを対応するIDとして追跡します。 |
ノート:ソースURIとターゲットURIが同じオブジェクト・ストレージ・バケットまたはフォルダを指している場合、エラーが戻されます。
例
BEGIN
DBMS_CLOUD.BULK_COPY (
source_credential_name => 'OCI_CRED',
source_location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname1/o',
target_location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname2/o',
format => JSON_OBJECT ('logretention' value 7, 'logprefix' value 'BULKOP')
);
END;
/
BULK_DELETEプロシージャ
このプロシージャは、クラウド・オブジェクト・ストレージからファイルを一括削除します。オーバーロード・フォームでは、operation_idパラメータを使用できます。REGEXP_LIKE演算子と互換性のある正規表現パターンを使用して、削除するファイルのリストをフィルタできます。
構文
DBMS_CLOUD.BULK_DELETE(
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL
);
DBMS_CLOUD.BULK_DELETE (
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL,
operation_id OUT NUMBER
);
Parameters
| パラメータ | 説明 |
|---|---|
credential_name |
クラウド・オブジェクト・ストレージにアクセスするための資格証明の名前。
|
location_uri |
Autonomous AI Databaseのオブジェクト・ストレージの場所を指すURIを指定します。 このパラメータは必須です。 クラウドのソース・ファイルURI クラウドのソース・ファイルURIのファイル名には、ワイルドカードおよび正規表現を使用できます。 正規表現は、
正規表現パターンは、URI内のファイル名またはサブフォルダ・パスでのみサポートされ、パターン一致は たとえば: URIのフォーマットは、使用中のクラウド・オブジェクト・ストレージ・サービスによって異なります。詳細は、「クラウド・オブジェクト・ストレージURIフォーマット」をご覧ください。
URIのフォーマットは、クラウド・オブジェクト・ストレージ・サービスによって異なります。詳細は、DBMS_CLOUDパッケージ・ファイル・クラウド・オブジェクト・ストレージのURI形式を参照してください。 |
regex_filter |
ファイルをフィルタするREGEX式を指定します。REGEX式パターンは、
詳細は、REGEXP_LIKE条件を参照してください。 |
format |
ファイル操作の追加構成オプションを指定します。これらのオプションはJSON文字列として指定されます。 サポートされているフォーマット・オプションは次のとおりです。
|
operation_id |
このパラメータを使用して、USER_LOAD_OPERATIONSビューで、ロード操作の進行状況および最終ステータスを対応するIDとして追跡します。 |
例
BEGIN
DBMS_CLOUD.BULK_DELETE (
credential_name => 'OCI_CRED',
location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
format => JSON_OBJECT ('logretention' value 5, 'logprefix' value 'BULKDEL')
);
END;
/
BULK_DOWNLOADプロシージャ
このプロシージャは、クラウド・オブジェクト・ストレージからAutonomous AI Databaseディレクトリにファイルをダウンロードします。オーバーロード・フォームでは、operation_idパラメータを使用できます。REGEXP_LIKE演算子と互換性のある正規表現パターンを使用して、ダウンロードするファイルのリストをフィルタできます。
構文
DBMS_CLOUD.BULK_DOWNLOAD (
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
directory_name IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL
);
DBMS_CLOUD.BULK_DOWNLOAD (
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
directory_name IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL,
operation_id OUT NUMBER
);
Parameters
| パラメータ | 説明 |
|---|---|
credential_name |
クラウド・オブジェクト・ストレージにアクセスするための資格証明の名前。
|
location_uri |
Autonomous AI Databaseのオブジェクト・ストレージの場所を指すURIを指定します。 このパラメータは必須です。 クラウドのソース・ファイルURI クラウドのソース・ファイルURIのファイル名には、ワイルドカードおよび正規表現を使用できます。 正規表現は、 文字"*"および"?"は、 正規表現パターンは、URI内のファイル名またはサブフォルダ・パスに対してのみサポートされ、パターン一致は たとえば: URIのフォーマットは、使用中のクラウド・オブジェクト・ストレージ・サービスによって異なります。詳細は、「クラウド・オブジェクト・ストレージURIフォーマット」をご覧ください。
|
directory_name |
ファイルをダウンロードするAutonomous AI Database上のディレクトリの名前。 このパラメータは必須です。 |
regex_filter |
ファイルをフィルタするREGEX式を指定します。REGEX式パターンは、
詳細は、REGEXP_LIKE条件を参照してください。 |
format |
ファイル操作の追加構成オプションを指定します。これらのオプションはJSON文字列として指定されます。 サポートされているフォーマット・オプションは次のとおりです。
|
operation_id |
このパラメータを使用して、USER_LOAD_OPERATIONSビューで、ロード操作の進行状況および最終ステータスを対応するIDとして追跡します。 |
例
BEGIN
DBMS_CLOUD.BULK_DOWNLOAD (
credential_name => 'OCI_CRED',
location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
directory_name => 'BULK_TEST',
format => JSON_OBJECT ('logretention' value 7, 'logprefix' value 'BULKOP')
);
END;
/
BULK_MOVEプロシージャ
このプロシージャは、ファイルをクラウド・オブジェクト・ストレージ・バケットまたはフォルダ間で一括移動します。オーバーロード・フォームでは、operation_idパラメータを使用できます。
REGEXP_LIKE演算子と互換性のある正規表現パターンを使用して、削除するファイルのリストをフィルタできます。
ソース・バケットおよびターゲット・バケットまたはフォルダは、同じクラウド・オブジェクト・ストア・プロバイダまたは異なるクラウド・オブジェクト・ストア・プロバイダに配置できます。
ソースとターゲットが別々のオブジェクト・ストアにある場合、または同じクラウド・プロバイダで異なるアカウントを持つ場合は、ソースとターゲットの場所に別々の資格証明名を指定できます。
ソース資格証明名は、ターゲット資格証明名が指定されていない場合、ターゲットの場所でもデフォルトで使用されます。
ファイルを移動する最初のステップは、それらをターゲットの場所にコピーしてから、ソース・ファイルが正常にコピーされたら削除することです。
オブジェクト・ストアでソース・ロケーションとターゲット・ロケーション間の名前変更操作が許可されている場合、オブジェクトは移動されるのではなく名前が変更されます。
構文
DBMS_CLOUD.BULK_MOVE (
source_credential_name IN VARCHAR2 DEFAULT NULL,
source_location_uri IN VARCHAR2,
target_location_uri IN VARCHAR2,
target_credential_name IN VARCHAR2 DEFAULT NULL,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL
);
DBMS_CLOUD.BULK_MOVE (
source_credential_name IN VARCHAR2 DEFAULT NULL,
source_location_uri IN VARCHAR2,
target_location_uri IN VARCHAR2,
target_credential_name IN VARCHAR2 DEFAULT NULL,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL,
operation_id OUT NUMBER
);
Parameters
| パラメータ | 説明 |
|---|---|
source_credential_name |
ソース・クラウドのオブジェクト・ストレージにアクセスするための資格証明の名前です。
|
source_location_uri |
ソースのオブジェクト・ストレージ・バケットまたはフォルダの場所を指すURIを指定します。 このパラメータは必須です。 クラウドのソース・ファイルURI クラウドのソース・ファイルURIのファイル名には、ワイルドカードおよび正規表現を使用できます。 正規表現は、 文字"*"および"?"は、 正規表現パターンは、URI内のファイル名またはサブフォルダ・パスでのみサポートされ、パターン一致は 正規表現を使用する例: ワイルドカードを使用した例: URIのフォーマットは、使用中のクラウド・オブジェクト・ストレージ・サービスによって異なります。詳細は、「クラウド・オブジェクト・ストレージURIフォーマット」をご覧ください。
|
target_location_uri |
ファイルを移動する必要があるターゲット・オブジェクト・ストレージ・バケットまたはフォルダのURIを指定します。 このパラメータは必須です。 URIのフォーマットは、使用中のクラウド・オブジェクト・ストレージ・サービスによって異なります。詳細は、「クラウド・オブジェクト・ストレージURIフォーマット」をご覧ください。 |
target_credential_name |
ターゲットのクラウド・オブジェクト・ストレージの場所にアクセスするための資格証明の名前です。
|
regex_filter |
ファイルをフィルタするREGEX式を指定します。REGEX式パターンは、
詳細は、REGEXP_LIKE条件を参照してください。 |
format |
ファイル操作の追加構成オプションを指定します。これらのオプションはJSON文字列として指定されます。 サポートされているフォーマット・オプションは次のとおりです。
|
operation_id |
このパラメータを使用して、USER_LOAD_OPERATIONSビューで、ロード操作の進行状況および最終ステータスを対応するIDとして追跡します。 |
例
BEGIN
DBMS_CLOUD.BULK_MOVE (
source_credential_name => 'OCI_CRED',
source_location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname1/o',
target_location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname2/o',
format => JSON_OBJECT ('logretention' value 7, 'logprefix' value 'BULKMOVE')
);
END;
/
ノート:ソースURIとターゲットURIが同じオブジェクト・ストレージ・バケットまたはフォルダを指している場合、エラーが戻されます。
BULK_UPLOADプロシージャ
このプロシージャは、Autonomous AI Databaseディレクトリからクラウド・オブジェクト・ストレージにファイルをコピーします。オーバーロード・フォームでは、operation_idパラメータを使用できます。
構文
DBMS_CLOUD.BULK_UPLOAD (
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
directory_name IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL
);
DBMS_CLOUD.BULK_UPLOAD (
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
directory_name IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL,
operation_id OUT NUMBER
);
Parameters
| パラメータ | 説明 |
|---|---|
credential_name |
クラウド・オブジェクト・ストレージにアクセスするための資格証明の名前。
|
location_uri |
ファイルをアップロードするオブジェクト・ストレージの場所を指すURIを指定します。 このパラメータは必須です。 URIのフォーマットは、クラウド・オブジェクト・ストレージ・サービスによって異なります。詳細は、DBMS_CLOUDパッケージ・ファイル・クラウド・オブジェクト・ストレージのURI形式を参照してください。 |
directory_name |
ファイルをアップロードするAutonomous AI Database上のディレクトリの名前。 このパラメータは必須です。 ディレクトリ 1つのディレクトリと1つ以上のファイル名を指定することも、ディレクトリとファイル名のカンマ区切りリストを使用することもできます。ディレクトリを指定する形式は、 ディレクトリにファイル名を指定する場合、正規表現はサポートされません。ワイルドカードを使用して、ディレクトリ内のファイル名を指定できます。文字「*」は複数の文字のワイルドカードとして使用でき、文字「?」は1文字のワイルドカードとして使用することができます。例: 複数のディレクトリを指定するには、ディレクトリのカンマ区切りリストを使用します。例: 大/小文字を区別するディレクトリ名を指定するには、二重引用符を使用します。例: 引用符文字を含めるには、2つの引用符を使用します。例: |
regex_filter |
ファイルをフィルタするREGEX式を指定します。REGEX式パターンは、
詳細は、REGEXP_LIKE条件を参照してください。 |
format |
ファイル操作の追加構成オプションを指定します。これらのオプションはJSON文字列として指定されます。 サポートされているフォーマット・オプションは次のとおりです。
|
operation_id |
このパラメータを使用して、USER_LOAD_OPERATIONSビューで、ロード操作の進行状況および最終ステータスを対応するIDとして追跡します。 |
例
BEGIN
DBMS_CLOUD.BULK_UPLOAD (
credential_name => 'OCI_CRED',
location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
directory_name => 'BULK_TEST',
format => JSON_OBJECT ('logretention' value 5, 'logprefix' value 'BULKUPLOAD')
);
END;
/