たとえば:
BEGIN
DBMS_CLOUD.CREATE_HYBRID_PART_TABLE(
table_name =>'HPT1',
credential_name =>'DEF_CRED_NAME',
format => json_object('delimiter' value ',', 'recorddelimiter' value 'newline', 'characterset' value 'us7ascii'),
column_list => 'col1 number, col2 number, col3 number',
partitioning_clause => 'partition by range (col1)
(partition p1 values less than (1000) external location
( ''https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/file_11.txt'') ,
partition p2 values less than (2000) external location
( ''https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/file_21.txt'') ,
partition p3 values less than (3000) )'
);
END;
/
パラメータは次のとおりです:
-
table_name: ハイブリッド・パーティション表名です。
-
credential_name: 前のステップで作成した資格証明の名前です。
-
partitioning_clause: これは、個別パーティションのロケーション情報など、完全なパーティション化句です。
-
format: ソース・ファイルの形式を記述するために指定できるオプションを定義します。
ソース・ファイル内のデータが暗号化されている場合は、encryptionオプションを指定してformatパラメータを指定して、データを復号化します。 データの復号化の詳細は、「オブジェクト・ストレージからのインポート中のデータの復号化」を参照してください。
-
column_list: ソース・ファイル内の列定義のカンマ区切りリストです。
この例では、namespace-stringがOracle Cloud Infrastructureオブジェクト・ストレージのネームスペースで、bucketnameがバケット名です。 詳細については、「オブジェクト・ストレージのネームスペースについて」を参照してください。
これで、前のステップで作成したハイブリッド・パーティション表に対して問合せを実行できます。 Autonomous AI Databaseは、ハイブリッド・パーティション表のパーティション化情報を利用して、問合せがオブジェクト・ストア内の関連データファイルにのみアクセスできるようにします。 たとえば、次の問合せはパーティションP1からデータファイルのみを読み取ります:
SELECT * FROM hpt1 WHERE col1 < 750;
DBMS_CLOUD.CREATE_HYBRID_PART_TABLEを使用して作成するハイブリッド・パーティション表には、2つの非表示列file$pathおよびfile$nameが含まれます。 これらの列は、レコードの起点となるファイルの識別に役立ちます。 詳細については、「外部表のMetadata列」を参照してください。
指定したフォーマット・オプションと一致しない行がソース・ファイル内にある場合、問合せはエラーを通知します。 これらのエラーを抑制するには、rejectlimitなどのDBMS_CLOUDパラメータを使用できます。 かわりに、作成したハイブリッド・パーティション表を検証してエラー・メッセージと拒否行を表示し、書式オプションを適宜変更することもできます。 詳細については、「外部データの検証」と「ハイブリッド・パーティション・データの検証」を参照してください。
パラメータの詳細は、「CREATE_HYBRID_PART_TABLEプロシージャ」を参照してください。
サポートされているクラウド・オブジェクト・ストレージ・サービスの詳細は、「DBMS_CLOUD URIの書式」を参照してください。