カタログの管理
カタログ・ツールを使用して、複数のカタログを有効にできるようになりました。
同じテナンシに他のAutonomous Databasesから追加のカタログをマウントできるため、複数のデータベース間でデータを検索できます。
カタログとしてAutonomous Databaseをマウント
既存のAutonomous Databaseを使用してデータベース・リンクを作成し、それをマウントするためのカタログ名を指定します。
Autonomous Databaseをカタログとしてマウントするには、CREATE DATABASE LINK
およびCREATE ANY DIRECTORY
システム権限が必要です。ADMINユーザーには、CREATE DATABASE LINK
およびCREATE ANY DIRECTORY
システム権限が付与されます。CREATE DATABASE LINK
およびCREATE ANY DIRECTORY
システム権限を他のユーザーに付与できます。
- オブジェクト・ストレージ資格証明をAutonomous Databaseに格納します
- データベース・リンクの作成、または既存のデータベース・リンクの使用
- データベース・リンクをカタログとしてマウントします。
-
「カタログ」ページで、「カタログの管理」を選択します。+Addをクリックします
- 「カタログの追加」ページで、カタログ・ソースとして「Autonomous Database」を選択します。
- ドロップダウンから「データベース名」を選択します。例: TESTING
- データベース名を選択した後、次のフィールドを表示できます。次のフィールド値を指定します。
- カタログ名: データベース・リンクをマウントするカタログの名前を入力します。例: TESTING
- データベース・リンク名: ツールが既存のデータベースを使用して作成するデータベース・リンクの名前を入力します。たとえば、TESTING_LINKです。
- データベース資格証明: データベース・リンクの作成に必要な資格証明をドロップダウンから選択します。たとえば、AWSGLUE_CREDです。
既存の資格証明がない場合は、「資格証明の作成」をクリックします。
- 「拡張オプションの表示」で、ドロップダウンから「Walletディレクトリ名」を選択します。ディレクトリにアクセスする権限が必要です。たとえば、WALLET_DIR-TESTINGです。
ノート
ウォレット・ファイルは、データベースのユーザーIDおよびパスワードと組み合せて、ターゲットOracle Autonomous Database内のデータへのアクセスを可能にします。 - 「テスト」をクリックして、データベース・リンクの作成をテストします。
「作成」をクリックして、自律型データベースをカタログとして作成します。
作成に成功すると、「カタログの管理」の下にリストされた自律型データベースを表示できます。
既存のデータベース・リンクをカタログとしてマウント
カタログ・スキーマは、ローカル・データベース・ユーザーとしてインスタンス化できます。データベース・リンクがすでに設定されている場合は、リンクされたデータベース上にカタログをマウントして、そのデータベースのデータ・セットを検索および検出できます。
- データベース・リンクの名前
- データにアクセスするために必要なクラウド資格証明
データベースの1つにデータベース・リンクを追加し、そのメタデータを新しいカタログとしてマウントできます。
- 「カタログ」ページで、「カタログの管理」を選択します。
- +Addをクリックします
- 「カタログの追加」ページで、「カタログ・ソース」から「データベース・リンク」を選択します。
- 「データベース・リンク」タブを選択します。
- ドロップダウンから「データベース・リンク名」を選択します。たとえば、AA-TESTING_LINKです。
- 「カタログ名」フィールドにカタログの名前を入力します。たとえば、AA-TESTING_LINKです。
- 「作成」をクリックします。
新しくマウントされたカタログは、「カタログの管理」ダイアログ・ボックスで表示できます。
データベース・リンクを使用して接続されたデータベース上に新しいカタログを正常にマウントした後、カタログ・エクスプローラでカタログを選択し、その中のデータを検索できます。
カタログとしてライブ共有またはデルタ共有プロバイダをマウントします
登録されたデータ共有からカタログをマウントできます。これにより、コンシューマは、他のデータベース内の他のプロバイダによって定義された表にアクセスできます。外部表は1回のみ定義する必要があります。
- 「カタログ」ページで、「カタログの管理」を選択します。+Addをクリックします
- 「カタログの追加」ページで、「カタログ・ソース」から「データ共有」を選択します。
- 「次」をクリックして、「プロバイダ設定の共有」タブに進みます。
「共有ソース」で、使用可能なオプションのいずれかを選択します。
- ライブ共有プロバイダからの選択
- デルタ共有プロバイダJSON
この例では、ライブ共有プロバイダから共有ソースを選択します。
「プロバイダ詳細の共有」で、次の詳細を指定します:
- プロバイダ名: 共有プロバイダの名前を入力します。例: TEST-PROVIDER
- 説明: 説明を入力します。このフィールドはオプションです。
- 「次」をクリックして、「共有の選択」タブに移動します。
- 「シェアプロバイダ設定」タブで、カタログとしてマウントするシェアを「使用可能なシェア」から「選択したシェア」にドラッグ&ドロップします。
- 「次」をクリックして、「カタログ詳細」タブに進みます。「カタログ詳細」タブで、次の詳細を指定します。
- カタログ名: 任意のカタログ名を入力します。
- カタログの説明: 説明を入力します。
- ライブ・シェアまたはデルタ・シェアをカタログとしてマウントするには、「作成」を選択します。
共有上に新しいカタログを正常にマウントした後、カタログ・エクスプローラでカタログを選択し、その中のデータを検索できます。
カタログとしてAmazon Glueをマウント
登録済みのAWS Glueデータ接続からカタログをマウントできます。
- 「カタログ」ページで、「カタログの管理」を選択します。
- +Addをクリックします
- 「カタログの追加」ページで、「カタログ・ソース」から「Amazon Glue」を選択します。
- 「次」をクリックして、「Amazon Glueカタログ」タブに進みます。
- 「Amazon Glue Catalog」タブで、次の詳細を指定します:
- データ・カタログ接続の資格証明: ドロップダウンから資格証明を選択します。
- リージョン: ドロップダウンからリージョンを選択します。
- 「次」をクリックして、「カタログ詳細」タブに進みます。「カタログ詳細」タブで、次のフィールド値を指定します:
- カタログ名: Data Studioでカタログを参照するために使用する名前を入力します。
- カタログの説明: カタログの説明を入力します。
- 「作成」をクリックして、AWS Glueデータ・カタログ・リージョンをカタログとしてマウントします。
AWS Glue Data Catalogリージョンに新しいカタログを正常にマウントした後、カタログ・エクスプローラでカタログを選択し、その中のデータを検索できます。
カタログとしてのOCIデータ・カタログのマウント
登録されたOCIデータ・カタログからカタログをマウントできます。
- 「カタログ」ページで、「カタログの管理」を選択します。+Addをクリックします
- 「カタログの追加」ページで、「カタログ・ソース」から「OCIデータ・カタログ」を選択します。
- 「次」をクリックして、「OCIデータ・カタログ」タブに進みます。
- 「OCIデータ・カタログ」タブで、次のフィールド値を指定します。
-
データ・カタログ接続の資格証明: ドロップダウンから資格証明を選択します。このフィールドは必須です。例: BASICOCICRED
-
リージョン: ドロップダウンからリージョンを選択します。このフィールドは必須です。例: us-phoenix-1
-
データ・カタログID: ドロップダウンからデータ・カタログIDを選択します。データ・カタログIDは、データ・カタログが属するアカウントのIDです。例: catalog1
選択した資格証明以外の別の資格証明を使用するには、「オブジェクト・ストレージに個別の資格証明を使用」を選択します。
-
- 「次」をクリックして、「カタログ詳細」タブに進みます。
- 「カタログ詳細」タブで、次のフィールド値を指定します:
- カタログ名: Data Studioでカタログを参照するために使用する名前を入力します。たとえば、TEST_CATALOGです。
- カタログの説明: カタログの説明を入力します。
- 「作成」をクリックして、OCIデータ・カタログをカタログとしてマウントします。
OCIデータ・カタログ上に新しいカタログを正常にマウントした後、カタログ・エクスプローラでカタログを選択し、その中のデータを検索できます。
Icebergデータ・カタログへのカタログのマウント
Icebergデータ・カタログにカタログを追加できます。カタログとIcebergデータの統合には、UnityやPolarisなどのサポートされているカタログとの接続が含まれます。Data Studio経由でIcebergデータカタログを統合するには、Icebergカタログが適切に構成され、アクセス可能であることを確認する必要があります。
- Icebergエンドポイント: Iceberg REST APIを使用してPolarisまたはUnityカタログを設定します。これには、カタログ・タイプ、URIおよびウェアハウスの場所の指定が含まれます。外部IcebergカタログのRESTエンドポイントが必要になります。これは、Icebergメタデータへのアクセスを提供するURLです。
例: https://your-iceberg-catalog.com/api/v1/iceberg
- トークン・エンドポイント: /v1/oauth/tokensエンドポイントは、Bearer Tokenを発行するためにIceberg RESTカタログによって提供されます。
- クライアントIDおよびクライアント・シークレット: これらは、アプリケーションを識別するためにOAuthサーバーによって提供される資格証明です(この場合はUnityおよびPolarisカタログの統合)。これらの資格証明を使用してBearerトークンを生成します。
- Bearerトークン: Iceberg RESTエンドポイントへのリクエストを認証するには、クライアント資格証明でOAuthを使用します。カタログ・ツールは、Bearer Tokenを受信するためにトークン・エンドポイントをコールします。
- ネームスペース: ネームスペースは、データベース内のスキーマと同等です。この場所は、カタログ内のIcebergテーブルのリポジトリとして機能します。Icebergカタログは、表をネームスペースにグループ化し、他のネームスペース内にネストできます。Icebergの仕様は、任意のレベルの入れ子をサポートしています。
たとえば、
SALES
表は、STORES
ネームスペース内で定義できます。このネームスペースは、RETAIL
ネームスペースで定義され、CORPORATE
ネームスペース内で定義されます。このような表のIcebergの場所はCORPORATE.RETAIL.STORES.SALES
です。
CREATE OR REPLACE CATALOG INTEGRATION tabular_catalog_int
CATALOG_SOURCE = ICEBERG_REST
TABLE_FORMAT = ICEBERG
CATALOG_NAMESPACE = 'default'
REST_CONFIG = (
CATALOG_URI = 'https://api.tabular.io/ws'
CATALOG_NAME = '<tabular_warehouse_name>'
)
REST_AUTHENTICATION = (
TYPE = OAUTH
OAUTH_TOKEN_URI = 'https://api.tabular.io/ws/v1/oauth/tokens'
OAUTH_CLIENT_ID = '<oauth_client_id>'
OAUTH_CLIENT_SECRET = '<oauth_secret>'
OAUTH_ALLOWED_SCOPES = ('catalog')
)
ENABLED = TRUE;
ここで、CATALOG_URI
はウェアハウスにアクセスするためのRESTエンド・ポイントです。
REST_AUTHENTICATION
プロシージャは、BEARER TOKEN
を作成し、それを使用して資格証明を作成するために必要なすべてのパラメータで構成されます。
詳細は、Apache IcebergTM RESTカタログのカタログ統合の構成を参照してください。
- 「カタログ」ページで、「カタログの管理」を選択します。+Addをクリックします
- 「カタログの追加」ダイアログで、「カタログ・ソース」タブから「Icebergカタログ」を選択します。
「次へ」をクリックします
-
「カタログの追加」ダイアログの「カタログ」ソース・タブで、次のフィールド値を指定します。
- カタログ名: Icebergカタログをマウントするカタログの名前を入力します。
たとえば、Polarisです。
-
Icebergカタログ・タイプ: ドロップダウン・フィールドから「Polaris」を選択します。
- Icebergカタログ・エンドポイント: Polarisカタログ・アカウントURLを指定します。SnowflakeのPolarisカタログのエンドポイントは、通常、https://<account_locator>.snowflakecomputing.com/polaris/api/catalogの形式です。アカウント識別子フォーマットの詳細は、Snowflakeのドキュメントを参照してください。
- Icebergカタログ資格証明: ドロップダウン・リストの使用可能な資格証明のリストから資格証明を選択します。資格証明がない場合は作成できます。「資格証明の作成」を選択します。「資格証明の作成」ダイアログで、次のフィールド値を指定します。
- 資格証明名: 資格証明の名前を入力します。たとえば、POLARIS_CREDです。
「新規Bearerトークンの取得」で、
- アクセス・トークン・エンドポイント: Iceberg REST仕様エンドポイントを入力します。これにより、
/v1/oauth/tokens
として定義されたOAuth2を使用してアクセス・トークンが生成されます。このエンドポイントは、クライアント資格証明(クライアントIDおよびシークレット)をアクセス・トークンと交換することによって、認証を容易にするように設計されています。
ノート
/v1/oauth/tokens
エンドポイントは、Icebergバージョン1.6.0では非推奨であり、バージョン2.0では削除されます。かわりに、外部のOAuth2プロバイダを使用することをお薦めします。詳細は、OAuth認証を参照してください。 - 付与タイプ: 「クライアント資格証明」を選択します。
- クライアントID: クライアントIDを指定します。
- クライアント・シークレット: クライアント・シークレットを指定します。
- スコープ: PRINCIPAL_ROLE:ALL。
「トークンの取得」をクリックします。
「Bearer token」フィールドに値が移入されます。
「資格証明の作成」をクリックします。
POLARIS_CREDは、Icebergカタログ資格証明として表示されます。
ノート
資格証明は、バックエンドのプロシージャ
DBMS_CLOUD.CREATE_CREDENTIAL
を使用して格納されます。前述の例では、プロシージャは次のようになります。BEGIN dbms_cloud.create_credential( credential_name => 'POLARIS_CRED', username => 'BEARER_TOKEN', password => '<BEARER_TOKEN_VALUE This is generated using token endpoint, client id, client secret>' ); END;
- アクセス・トークン・エンドポイント: Iceberg REST仕様エンドポイントを入力します。これにより、
この資格証明により、Oracle Autonomous DatabaseはIceberg表にアクセスできます。
- 資格証明名: 資格証明の名前を入力します。たとえば、POLARIS_CREDです。
- バケット資格証明: この資格証明には、Iceberg表をParquet形式で格納するためのクラウド・ストレージ・ボリュームが格納されます。このフィールドは、Polarisカタログには必須です。
「次」をクリックして、「Icebergカタログ」タブに進みます。
- カタログ名: Icebergカタログをマウントするカタログの名前を入力します。
-
「Iceberg catalog」タブで、次のフィールド値を指定できます:
- Icebergカタログ・ネームスペース: このフィールドには、表の階層編成が表示されます。Icebergカタログ・エンドポイントは、ルート・ネームスペースで構成されます。カタログをマウントするネームスペースを選択します。
- ネームスペース・セパレータ・スタイル: 「ポラリス・スタイル」を選択します。これはデフォルト値です。カタログの構成方法に基づいて任意の値を選択します。
ノート
デフォルト値は保持することをお薦めします。 - バケット・リージョン: バケット・リージョンを入力します。例: us-west-2
Icebergカタログ・エンドポイントは、S3などのクラウド・ストレージに格納されているIceberg表を管理するためのインタフェースとして機能します。バケット・リージョンは、S3バケットがホストされている地理的な場所を参照します。
これはPolarisカタログの必須フィールドです。
「追加」をクリックします。
Icebergカタログ上に新しいカタログを正常にマウントした後、「カタログの管理」ページでPolarisカタログを表示できます。このページからカタログを無効化および削除できます。
カタログ・エクスプローラでのマウントされたPolarisカタログの表示
- 「カタログ」ツールで、「カタログの選択...」をクリックします。
- 「カタログおよびスキーマ」ウィザードで「POLARIS _CATALOG」フィルタをクリックして、POLARIS_CATALOGカタログを表示します。
- 「適用」をクリックして、「カタログ」ページに結果を表示します。
- 「カタログ」ページで、「カタログの管理」を選択します。+Addをクリックします
- 「カタログの追加」ダイアログで、「Icebergカタログ」を選択します。
- 「次へ」をクリックします
- 「カタログの追加」ダイアログの「カタログ」ソース・タブで、次のフィールド値を指定します。
- カタログ名: Icebergカタログをマウントするカタログの名前を入力します。
たとえば、Unityです。
- Icebergカタログ・タイプ: ドロップダウン・フィールドから「Unity」を選択します。
- Icebergカタログ・エンドポイント:
Unity Catalogの場合、通常はDatabricks REST APIを使用します。Unity Catalogを介してIceberg表にアクセスするためのエンドポイントは通常、https://<databricks-instance-url>/api/2.1/unity-catalog/icebergの形式です。
- Icebergカタログ資格証明: ドロップダウン・リストの使用可能な資格証明のリストから資格証明を選択します。資格証明がない場合は作成できます。「資格証明の作成」を選択します。
「資格証明の作成」ダイアログで、次の値を指定します。
- 資格証明名: 資格証明の名前を入力します。たとえば、UNITY_CREDです。
- Bearerトークン: Bearerトークン値を貼り付けます。
「資格証明の作成」を選択します。
UNITY_CREDは、Icebergカタログ資格証明として表示されます。
「次」をクリックして、「Icebergカタログ」タブに進みます。
「Iceberg catalog」タブで、次のフィールド値を指定できます:
- Icebergカタログ・ネームスペース: アクセスする必要があるスキーマのいずれかを選択します。
- ネームスペース・セパレータ・スタイル: ネームスペース・セパレータ・スタイルは、通常、カタログ内でネームスペースを構造化および分離する方法を表します。デフォルトでは、「データブリック・スタイル」が選択されています。
- バケット・リージョン: このフィールドは必須ではありません。
「追加」をクリックします。
Icebergカタログ上に新しいカタログを正常にマウントした後、「カタログの管理」ページでUnityカタログを表示できます。このページからカタログを無効化および削除できます。
- カタログ名: Icebergカタログをマウントするカタログの名前を入力します。
カタログツールにマウントされたUnityカタログを表示する
- 「カタログ」ツールで、「カタログの選択...」をクリックします。
- 「カタログおよびスキーマ」ウィザードで「UNITY _CATALOG」フィルタをクリックして、UNITY_CATALOGカタログを表示します。
- 「適用」をクリックして、「カタログ」ページに結果を表示します。
- カタログ・ツールからのデルタ共有のインライン・データ・ロード
カタログ・ツールでロードせずに、カタログ・ツールからデルタ共有をロードできます。 - リモート・カタログおよびデータベースの問合せ
カタログをマウントすることで、外部データにアクセスして問い合せることができます。この機能では、データベース・リンクを使用したデータの問合せ方法に似た単純なSQL構文を使用します。
親トピック: カタログ・ツール