Apache Iceberg表の問合せ
Autonomous AI Databaseでは、Apache Iceberg表の問合せがサポートされています。
- Apache Iceberg表の問合せについて
Autonomous AI Databaseでは、Apache Iceberg表の問合せがサポートされています。 - Apache Iceberg表の問合せに関連する概念
次の概念を理解すると、Apache Iceberg表の問合せに役立ちます。 - Icebergの資格証明: RESTカタログとオブジェクト・ストア
このトピックでは、Apache Icebergが、RESTカタログとオブジェクト・ストアの2つの資格証明を使用してデータを管理およびアクセスする方法について説明します。また、Apache Icebergなどのデータ・レイク表形式で表情報を管理する2つの異なる方法を参照することもできます。 - Apache Iceberg表の問合せの一般的なワークフロー
Apache Iceberg表の問合せを開始する前に、そのワークフローを理解しておく必要があります。この項では、5つの主なステップを持つエンドツーエンドの設定ワークフローとして表示されるデータにアクセスするための外部表の設定方法について説明します。 - プロバイダ・クイックスタート
この章では、様々なクラウド・データ・プロバイダを使用して外部データ・アクセスを設定するプロセスについて説明します。 - 参照
この項では、この章で引用されているリンクの参照のリストを示します。
Apache Iceberg表の問合せについて
Autonomous AI Databaseでは、Apache Iceberg表の問合せがサポートされています。
サポートされる構成
サポートされている構成の互換性マトリックスを次に示します。
カタログ | オブジェクト・ストア | カタログ承認(REST) | ストレージ認証 | メモ |
---|---|---|---|---|
Unity(データブリック) | Amazon S3、Azure ADLS Gen2 | OAuth2サービス・プリンシパル(/oidc/v1/token) - 推奨、PAT - クイック・テスト | S3アクセス/シークレット・キー、ADLS Gen2 SASキー |
|
ポラリス(スノーフレーク) | Amazon S3、Azure ADLS Gen2 | OAuth2 (クライアント資格証明)またはPolarisでサポートされているトークン | S3アクセス/シークレット・キー、ADLS Gen2 SASキー | オブジェクト・ストア資格証明の自動販売はサポートされていません。 |
AWS Glue | Amazon S3 | 該当なし(AWSアカウント認証を使用) | S3アクセス/秘密鍵。 | オブジェクト・ストア資格証明の自動販売はサポートされていません。S3およびGlueには同じ資格証明を使用する必要があります。S3とGlueは同じAWSリージョンに存在する必要があります。 |
JSONメタデータ(カタログ外オプション) | Amazon S3、Azure ADLS Gen2、OCI Object Store | 該当なし(RESTなし) | S3アクセス/シークレット・キー、ADLS Gen2 SASキー、OCIネイティブ資格証明 | ADBをテーブルのmetadata.json (ルート・マニフェスト)にポイントします。Point-in-Timeスナップショット。スキーマ変更または新規スナップショット後に外部表を再作成します。
|
Hadoop (カタログ外) | OCIオブジェクト・ストレージ | 該当なし(RESTなし) | OCIネイティブ資格情報 | データおよびメタデータ・ファイルを含むレイクハウス・フォルダを指します。 |
- Apache Iceberg表の問合せの制限事項
この章では、Apache Iceberg表の問合せの制限事項を示します。
親トピック: Apache Iceberg表の問合せ
Apache Iceberg表の問合せの制限事項
この章では、Apache Iceberg表の問合せの制限事項を示します。
-
Unity Native Iceberg(REST): サポートされていません。
回避策: Delta + UniFormを使用して、Unity CatalogのIceberg RESTエンドポイントを介してIceberg読取り可能なビューを公開します。
- 動作保証されたRESTカタログ: ADBは、Iceberg読取りアクセス用にSnowflake PolarisおよびDatabricks Unity Catalog (UniFormのみ)で動作保証されています。
-
カタログ資格証明の自動販売: サポートされません。
自動ロール仮定やSTSによって発行された一時資格証明など、クラウドネイティブのロールベースの自動販売はサポートされていません。明示的なアクセス/秘密鍵または静的トークンを使用します。)
- AWS ARN資格証明: サポートされません。IAMロールARNおよびARN経由のAssumeRoleは受け入れられません。
- パーティション化されたIceberg表はサポートされていません。非パーティション表のみが許可されます。
- 行レベルの更新(読取りマージ):サポートされません。Icebergメタデータがファイルの削除を参照している場合、問合せは失敗します。
- 固定外部表のスキーマは作成で決定され、メタデータ内のIcebergスキーマ・バージョンと一致する必要があります。Icebergスキーマが更新された場合は、外部表を再作成する必要があります。
- 問合せ時移動なし:スナップショット、バージョンまたはタイムスタンプによる問合せはサポートされていません。
- Non_catalogのみ:新しいスナップショットは自動的に選択されません。特定のスナップショットを読み取るには、そのスナップショットのmetadata.jsonをターゲットにし、外部表を再作成します。
- 資格証明の位置合せ: AWS S3およびAWS Glueには、同じ資格証明を使用する必要があります。
- リージョンの共同配置: S3バケットとAWS Glueカタログは同じAWSリージョンにある必要があります。
親トピック: Apache Iceberg表の問合せについて
Apache Iceberg表の問合せに関連する概念
次の概念を理解すると、Apache Iceberg表の問合せに役立ちます。
Icebergカタログ
Icebergカタログは、表メタデータ(表スナップショット、表スキーマおよびパーティション化情報など)を管理するサービスです。Iceberg表の最新のスナップショットを問い合せるには、問合せエンジンはまずカタログにアクセスし、最新のメタデータ・ファイルの場所を取得する必要があります。AWS Glue、Hive、Nessie、Hadoopなど、使用可能なカタログ実装はすでに数多くあります。自律型AIデータベースは、AWS Glueカタログと、Sparkで使用されるHadoopCatalog実装をサポートしています。
詳細は、オプティミスティック同時実行性を参照してください。
メタデータ・ファイル
メタデータ・ファイルは、表のスナップショット、パーティション化スキームおよびスキーマ情報を追跡するJSONドキュメントです。メタデータファイルは、マニフェストリストとマニフェストファイルの階層へのエントリポイントです。マニフェストは、パーティショニングや列の統計などの情報とともにテーブルのデータファイルを追跡します。詳細は、Iceberg Table Specificationを参照してください。
トランザクション
Icebergでは、copy-on-writeまたはmerge-on-readのいずれかを使用して表に対する行レベルの更新がサポートされています。Copy-on-writeでは、更新された行を反映する新しいデータ・ファイルが生成され、merge-on-readでは、読取り時にデータ・ファイルとマージする必要がある新しい削除ファイルが生成されます。Oracleでは、copy-on-writeがサポートされています。削除ファイルが検出されると、氷山表に対する問合せは失敗します。詳細については、RowLevelOperationModeを参照してください。
スキーマ展開
Icebergはスキーマの進化をサポートしています。スキーマの変更は、スキーマIDを使用してIcebergメタデータに反映されます。Oracle外部表には、表の作成時に最新のスキーマ・バージョンによって決定される固定スキーマがあります。アイスバーグ問合せは、問合せ対象のメタデータが表作成時に使用されたものとは異なるスキーマ・バージョンを指している場合、失敗します。詳細は、スキーマの進化を参照してください。
パーティション化
Icebergは、コストのかかるデータ・レイアウトの変更なしに表のメタデータの処理/変更に依存する、非表示のパーティション化やパーティションの展開などの高度なパーティション化オプションをサポートしています。
親トピック: Apache Iceberg表の問合せ
Icebergの資格証明: RESTカタログとオブジェクト・ストア
このトピックでは、Apache Icebergが、RESTカタログとオブジェクト・ストアの2つの資格証明を使用してデータを管理およびアクセスする方法について説明します。また、Apache Icebergなどのデータ・レイク表形式で表情報を管理する2つの異なる方法を参照することもできます。
カタログ管理表とダイレクト・メタデータの外部表
次の項では、カタログ管理の外部表をダイレクト・メタデータ外部表と比較し、主な違いを強調表示します。
-
カタログ管理(Unity/Polaris/AWS Glue)
内容: RESTカタログを介して解決されるメタデータ、スキーマおよび現在のスナップショット。
動作:カタログの最新のスナップショット(集中管理された権限、タグおよび系統)を自動的に反映します。
最適:エンタープライズ・データ製品、クロスエンジンの共有、一貫したガバナンス、検出性(カタログは信頼できる唯一の情報源)です。
-
-
ダイレクト・メタデータ(
metadata.json
を介したファイル・システム)内容:外部表は、特定の
metadata.json
を直接指します。動作:修正された再現可能なスナップショット。自動的には進歩せず、ガバナンスはオブジェクト・ストアACLに限定されます。
最適:実験、テスト、監査。
-
RESTとオブジェクト・ストアの資格証明
RESTカタログ資格証明
Apache Iceberg RESTカタログに接続する場合は、REST資格証明が必要です。RESTカタログは、RESTfulエンドポイントを公開して、Iceberg表のメタデータを管理します。認証には、多くの場合、REST資格証明はOAuthベースであるため、client ID
およびsecret
を使用してトークン・エンドポイントからベアラー・トークンを取得する必要があります。
-
rest_auth_cred
: カタログ・サービス(UnityやPolarisなど)で認証します。 credential_name
: Icebergのデータおよびメタデータが存在するオブジェクト・ストアに対して認証します。
資格証明の保留は現時点ではサポートされていません。資格証明の自動送信とは、アクセス資格証明(ユーザー名とパスワード、APIキー、トークンなど)が必要になったときに、構成ファイルまたはスクリプトに静的に格納するのではなく、多くの場合、自動またはオンデマンドで配布またはフェッチする制御されたプロセスを指します。
オブジェクト・ストア資格証明
オブジェクト・ストア資格証明は、Apache Iceberg表がOracle Cloud Infrastructure (OCI) Object StorageやAmazon S3などのクラウド・オブジェクト・ストレージに直接格納されている場合に使用されます。
資格証明により、Autonomous AI Databaseは、クラウド・オブジェクト・ストアから直接ファイル(Parquetデータやメタデータ・マニフェストなど)にアクセスして読み取ることができます。
OCI/S3バケット内のParquet/メタデータ・ファイルを直接指す外部表を定義する場合は、オブジェクト・ストア資格証明を使用します。
親トピック: Apache Iceberg表の問合せ
Apache Iceberg表の問合せの一般的なワークフロー
Apache Iceberg表の問合せを開始する前に、ワークフローに精通している必要があります。この項では、5つの主なステップを持つエンドツーエンドの設定ワークフローとして表示されるデータにアクセスするための外部表の設定方法について説明します。
- アクセス・モデルの決定:
- カタログ管理: このモデルは、継続的に更新され、管理されたカタログをデータ・メタデータの信頼できる唯一の情報源として機能させる場合に使用します。この中央カタログは、データの一貫性とガバナンスを維持するのに役立ちます。
- ダイレクト・メタデータ: このモデルは、メタデータの固定スナップショット(metadata.json経由)を操作する場合に使用します。このモデルは、よりシンプルですが静的で、自動更新やガバナンスがないため、本番環境にはお薦めしません。
- 必要なものの収集:
- カタログ管理: カタログ・エンドポイント(該当する場合)、正確な表パスおよび実際のデータ・ファイルが存在するオブジェクト・ストアの場所にアクセスできる必要があります。
- ダイレクト・メタデータ: ルート
metadata.json
ファイルを指すURIと、これらのデータ・ファイルのオブジェクト・ストアの場所のみが必要です。
- 資格証明の準備:
- カタログ管理設定の場合は、カタログにアクセスするための資格証明を取得します。
- オブジェクト・ストア資格証明は、データ・ファイルとメタデータ・ファイルの両方を読み取るモデルに関係なく常に必要です。
ノート
自動資格証明の自動販売およびカタログ・アクセス用のAWS AssumeRoleはサポートされていません。
- 外部表の作成:
- 「カタログ管理」では、表はカタログを介してデータを問い合せ、オブジェクト・ストア内のファイルにアクセスします。
- Direct-Metadataでは、表はカタログに関与することなく、特定の
metadata.json
ファイルを直接指します。
-
クイック・チェックと期待事項:
COUNT(*)
などの単純な問合せを実行して、表の設定を確認し、データに正しくアクセスできることを確認します。
親トピック: Apache Iceberg表の問合せ
プロバイダのクイックスタート
この章では、様々なクラウド・データ・プロバイダで外部データ・アクセスを設定するプロセスについて説明します。
トピック:
- Databricks Unityカタログ
この項では、DatabricksをUniFormを介してオープン・テーブル・フォーマットにリンクするワークフローについて説明し、Icebergをサポートする環境でのDelta Lakeデータへのアクセスを容易にします。 - スノーフレーク・ポラリス
このトピックでは、OAuth2認証を使用してREST APIを介してApache Polaris Iceberg表へのセキュアなアクセスを許可するスノーフレーク・ポラリス(RESTカタログ)について説明します。 - AWS Glueカタログ
このトピックでは、AWS資格証明を使用して、登録済のIceberg表を含むGlue Data Catalogを介してAmazon S3データにアクセスする方法について説明します。 - Hadoop/ファイルシステム(ダイレクト・メタデータ・ファイル)
このトピックでは、ADLS、S3、OCIなどのオブジェクト・ストアから直接Iceberg表のメタデータ・ファイルにアクセスするためのストレージ資格証明を作成する方法について説明します。ここでは、カタログ・サービスを使用せずに、ファイル・システム(通常はHadoop互換ファイル・システム)に直接格納されているIceberg表の直接メタデータ管理のタイプの分類について説明します。
親トピック: Apache Iceberg表の問合せ
Databricks Unityカタログ
この項では、DatabricksをUniFormを介してオープン・テーブル・フォーマットにリンクするワークフローについて説明し、Icebergをサポートする環境でのDelta Lakeデータへのアクセスを容易にします。
Databricks Unityカタログ(UniFormパス)
- Icebergクライアントが読み取ることができるように、UniFormで作成されたDelta表。
- Azure ADLS Gen2またはAWS S3の表ファイル。
- 外部アクセス用のUnityカタログ権限(外部データ・アクセスの有効化など)。プリンシパルに
EXTERNAL USE SCHEMA
を付与します。 - 認証: OAuth2 (推奨)または個人アクセス・トークン(クイック・テスト用)。
Iceberg REST経由のネイティブIcebergは、当社の統合によってまだサポートされていません。Delta with UniForm (Iceberg-readable)を使用し、Unity Iceberg REST (https://<workspace-host>/api/2.1/unity-catalog/iceberg)を介して公開します。
データブリックにUniForm (アイスバーグ読取り可能)表を作成します:
customers_iceberg
という名前のUniForm (アイスバーグ読取り可能)表を作成します。USE CATALOG <your_catalog>;
USE SCHEMA <your_schema>;
CREATE TABLE customers_iceberg (
id INT,
name STRING
)
TBLPROPERTIES(
'delta.columnMapping.mode'='name',
'delta.enableIcebergCompatV2'='true',
'delta.universalFormat.enabledFormats'='iceberg'
);
INSERT INTO customers_iceberg (id, name) VALUES
(1,'Alice'), (2,'Bob'), (3,'Carol');
オブジェクト・ストア資格証明(ADLS Gen2)
BEGIN
BEGIN DBMS_CLOUD.DROP_CREDENTIAL('AZURE_BLOB_CRED'); EXCEPTION WHEN OTHERS THEN NULL; END;
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'AZURE_BLOB_CRED',
username => '<storage-account-or-sas-username>',
password => '<storage-key-or-sas-token>'
);
END;
/
OAuth2を使用したRESTカタログ資格証明の作成
-- Databricks service principal (client_id / client_secret)
BEGIN
BEGIN DBMS_CLOUD.DROP_CREDENTIAL('UNITY_OAUTH'); EXCEPTION WHEN OTHERS THEN NULL; END;
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'UNITY_OAUTH',
username => '<client_id>',
password => '<client_secret>'
);
END;
/
BEGIN
DBMS_CLOUD.CREATE_EXTERNAL_TABLE(
table_name => 'CUSTOMERS_ICEBERG',
credential_name => 'AZURE_BLOB_CRED',
format => '{
"access_protocol": {
"protocol_type": "iceberg-rest",
"protocol_config": {
"iceberg_catalog_type": "unity",
"rest_catalog_endpoint": "https://<workspace-host>/api/2.1/unity-catalog/iceberg",
"rest_authentication": {
"rest_auth_cred": "UNITY_OAUTH",
"rest_auth_endpoint": "https://<workspace-host>/oidc/v1/token"
},
"table_path": ["<your_catalog>","<your_schema>","customers_iceberg"]
}
}
}'
);
END;
/
SELECT COUNT(*) FROM CUSTOMERS_ICEBERG;
個人アクセス・トークン(PAT)を使用したRESTカタログ資格証明の作成
BEGIN
BEGIN DBMS_CLOUD.DROP_CREDENTIAL('UNITY_PAT'); EXCEPTION WHEN OTHERS THEN NULL; END;
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'UNITY_PAT',
username => 'token',
password => '<dapiXXXXXXXXXXXXXXXXXXXXXXXX>'
);
END;
/
BEGIN
DBMS_CLOUD.CREATE_EXTERNAL_TABLE(
table_name => 'CUSTOMERS_ICEBERG',
credential_name => 'AZURE_BLOB_CRED',
format => '{
"access_protocol": {
"protocol_type": "iceberg-rest",
"protocol_config": {
"iceberg_catalog_type": "unity",
"rest_catalog_endpoint": "https://<workspace-host>/api/2.1/unity-catalog/iceberg",
"rest_authentication": { "rest_auth_cred": "UNITY_PAT" },
"table_path": ["<your_catalog>","<your_schema>","customers_iceberg"]
}
}
}'
);
END;
/
SELECT COUNT(*) FROM CUSTOMERS_ICEBERG;
親トピック: プロバイダ・クイックスタート
スノーフレークポラリス
このトピックでは、OAuth2認証を使用してREST APIを介してApache Polaris Iceberg表へのセキュア・アクセスを許可するSnowflake Polaris (RESTカタログ)について説明します。
Snowflake Polaris (RESTカタログ)
- Polaris Icebergのカタログとエンドポイントがアカウントで利用可能です。
- オブジェクト・ストアでアクセス可能な表ファイル(該当する場合はS3/ADLS)。
- 認証: OAuth2推奨(クライアント資格証明)または別のPolarisでサポートされているトークン・メカニズム。
OAuth2資格証明を作成します:
次のプロシージャは、Apache Polaris Icebergカタログへのアクセスを認証するために、POLARIS_OAUTH
という名前のOAuth2資格証明を作成します。
BEGIN
BEGIN DBMS_CLOUD.DROP_CREDENTIAL('POLARIS_OAUTH'); EXCEPTION WHEN OTHERS THEN NULL; END;
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'POLARIS_OAUTH',
username => '<client_id>',
password => '<client_secret>'
);
END;
/
ストレージ資格証明の作成
次の手順では、AWSアクセス・キーIDおよびシークレット・アクセス・キーを使用してオブジェクト・ストレージ(例: Amazon S3)にアクセスするためのS3_CRED
という名前のストレージ資格証明を作成します。
-- Storage credential for your object store (example: S3)
BEGIN
BEGIN DBMS_CLOUD.DROP_CREDENTIAL('S3_CRED'); EXCEPTION WHEN OTHERS THEN NULL; END;
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'S3_CRED',
username => '<aws_access_key_id>',
password => '<aws_secret_access_key>'
);
END;
/
外部表の作成
SALES_POLARIS
という外部表を定義します。BEGIN
DBMS_CLOUD.CREATE_EXTERNAL_TABLE(
table_name => 'SALES_POLARIS',
credential_name => 'S3_CRED',
format => '{
"access_protocol": {
"protocol_type": "iceberg-rest",
"protocol_config": {
"iceberg_catalog_type": "polaris",
"rest_catalog_endpoint": "<https://<your-polaris-endpoint>/...>",
"rest_authentication": {
"rest_auth_cred": "POLARIS_OAUTH",
"rest_auth_endpoint": "<https://<your-oauth-token-endpoint>>"
},
"table_path": ["<db>","<schema>","<table>"]
}
}
}'
);
END;
/
クイック機能チェック
SELECT COUNT(*) FROM SALES_POLARIS;
エンドポイントおよびトークンURLプレースホルダは、Polaris構成によって異なるため保持します。
親トピック: プロバイダ・クイックスタート
AWS Glueカタログ
このトピックでは、AWS資格情報を使用して、登録済みのIcebergテーブルでGlue Data Catalog経由で Amazon S3データにアクセスする方法について説明します。
-
Iceberg表が登録されているGlueデータ・カタログ(アクセス可能なS3オブジェクト)。
Glueのリージョン名(
us-east-1
など)。 -
認証: S3のアクセス・キー/シークレット。カタログ構成を介した接着アクセス。
- AWS ARNによる資格情報の送信はサポートされていません。明示的な資格証明を指定する必要があります。
ストレージ資格証明を作成します。
次のプロシージャは、Amazon S3バケットに格納されているデータへのアクセスを有効にするために、データブリックにS3_CRED
という名前のストレージ資格証明を作成します。
-- S3 credential
BEGIN
BEGIN DBMS_CLOUD.DROP_CREDENTIAL('S3_CRED'); EXCEPTION WHEN OTHERS THEN NULL; END;
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'S3_CRED',
username => '<aws_access_key_id>',
password => '<aws_secret_access_key>'
);
END;
/
外部Iceberg表の作成
ORDERS_GLUE
という名前の外部Iceberg表を作成します。BEGIN
DBMS_CLOUD.CREATE_EXTERNAL_TABLE(
table_name => 'ORDERS_GLUE',
credential_name => 'S3_CRED',
format => '{
"access_protocol": {
"protocol_type": "iceberg",
"protocol_config": {
"iceberg_catalog_type": "aws_glue",
"iceberg_glue_region": "us-east-1",
"table_path": ["<database>","<table>"]
}
}
}'
);
END;
/
クイック機能チェック
ORDERS_GLUE
内のすべての行をカウントし、接続およびデータ・アクセシビリティを検証します。SELECT COUNT(*) FROM ORDERS_GLUE;
親トピック: プロバイダ・クイックスタート
Hadoop/ファイルシステム(ダイレクト・メタデータ・ファイル)
このトピックでは、ADLS、S3、OCIなどのオブジェクト・ストアから直接Iceberg表のメタデータ・ファイルにアクセスするためのストレージ資格証明を作成する方法について説明します。ここでは、カタログ・サービスを使用せずに、ファイル・システム(通常はHadoop互換ファイル・システム)に直接格納されているIceberg表の直接メタデータ管理のタイプの分類について説明します。
例: JSONメタデータを使用したIceberg表の問合せ
- 表のIcebergルート・マニフェスト(
metadata.json
)には、オブジェクト・ストア(ADLS/S3/OCI)でアクセスできます。 - このパスはポイントインタイムです。新しいスナップショットをたどるには、外部表を再作成します。
ストレージ資格証明の作成
このプロシージャは、STORE_CRED
という既存の資格証明が存在する場合は、まず削除を試行します(エラーは無視されます)。次に、STORE_CRED
という名前の新しい資格証明を作成します。
-- Storage credential for wherever the metadata.json lives
BEGIN
BEGIN DBMS_CLOUD.DROP_CREDENTIAL('STORE_CRED'); EXCEPTION WHEN OTHERS THEN NULL; END;
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'STORE_CRED',
username => '<user-or-key>',
password => '<secret-or-token>'
);
END;
/
外部表の作成
CUSTOMERS_META
という名前の外部表が作成されます。BEGIN
DBMS_CLOUD.CREATE_EXTERNAL_TABLE(
table_name => 'CUSTOMERS_META',
credential_name => 'STORE_CRED',
file_uri_list => 'https://<bucket-or-container>/<path>/metadata.json',
format => '{"access_protocol":{"protocol_type":"iceberg"}}'
);
END;
/
クイック機能チェック
次のプロシージャは、外部表のすべての行をカウントする問合せを実行します。
SELECT COUNT(*) FROM CUSTOMERS_META;
例: OCI上のHadoopカタログを使用したIceberg表の問合せ
この例では、OCIデータ・フローを使用して作成されたIceberg表db.icebergTablePy
を問い合せます。ここで、SparkはIcebergカタログにHadoopCatalog実装を使用します。HadoopCatalogは、バケットmy-iceberg-bucket
内のレイクハウス・フォルダiceberg
を使用し、Icebergメタデータをこのディレクトリの下の$database_name/$table_name
サブフォルダに配置します。また、最新のメタデータ・ファイル・バージョンのバージョン番号を含むversion-hint.text
ファイルも使用します。
db.icebergTablePy
の外部表を作成します。BEGIN
DBMS_CLOUD.CREATE_EXTERNAL_TABLE (
table_name => 'iceberg_parquet_time_dim3',
credential_name => 'OCI_CRED',
format => '{
"access_protocol": {
"protocol_type": "iceberg",
"protocol_config": {
"iceberg_catalog_type": "hadoop",
"iceberg_lakehouse": "https://objectstorage.uk-cardiff-1.oraclecloud.com/n/my-tenancy/b/my-iceberg-bucket/o/iceberg",
"iceberg_table_path": "db.icebergTablePy"
}
}
}'
);
END;
/
親トピック: プロバイダ・クイックスタート