カタログの管理

カタログ・ツールを使用して、複数のカタログを有効にできるようになりました。

同じテナンシに他の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に格納します
  • データベース・リンクの作成、または既存のデータベース・リンクの使用
  • データベース・リンクをカタログとしてマウントします。
  1. 「カタログ」ページで、「カタログの管理」を選択します。+Addをクリックします

  2. 「カタログの追加」ページで、カタログ・ソースとして「Autonomous Database」を選択します。



  3. ドロップダウンから「データベース名」を選択します。例: TESTING
  4. データベース名を選択した後、次のフィールドを表示できます。次のフィールド値を指定します。



    • カタログ名: データベース・リンクをマウントするカタログの名前を入力します。例: TESTING
    • データベース・リンク名: ツールが既存のデータベースを使用して作成するデータベース・リンクの名前を入力します。たとえば、TESTING_LINKです。
    • データベース資格証明: データベース・リンクの作成に必要な資格証明をドロップダウンから選択します。たとえば、AWSGLUE_CREDです。

      既存の資格証明がない場合は、「資格証明の作成」をクリックします。

    • 「拡張オプションの表示」で、ドロップダウンから「Walletディレクトリ名」を選択します。ディレクトリにアクセスする権限が必要です。たとえば、WALLET_DIR-TESTINGです。
      ノート

      ウォレット・ファイルは、データベースのユーザーIDおよびパスワードと組み合せて、ターゲットOracle Autonomous Database内のデータへのアクセスを可能にします。
    • 「テスト」をクリックして、データベース・リンクの作成をテストします。

    「作成」をクリックして、自律型データベースをカタログとして作成します。

作成に成功すると、「カタログの管理」の下にリストされた自律型データベースを表示できます。

既存のデータベース・リンクをカタログとしてマウント

カタログ・スキーマは、ローカル・データベース・ユーザーとしてインスタンス化できます。データベース・リンクがすでに設定されている場合は、リンクされたデータベース上にカタログをマウントして、そのデータベースのデータ・セットを検索および検出できます。

カタログをマウントするには、次の情報が必要です。
  • データベース・リンクの名前
  • データにアクセスするために必要なクラウド資格証明

データベースの1つにデータベース・リンクを追加し、そのメタデータを新しいカタログとしてマウントできます。

  1. 「カタログ」ページで、「カタログの管理」を選択します。
  2. +Addをクリックします
  3. 「カタログの追加」ページで、「カタログ・ソース」から「データベース・リンク」を選択します。



  4. 「データベース・リンク」タブを選択します。



  5. ドロップダウンから「データベース・リンク名」を選択します。たとえば、AA-TESTING_LINKです。
  6. 「カタログ名」フィールドにカタログの名前を入力します。たとえば、AA-TESTING_LINKです。
  7. 「作成」をクリックします。

    新しくマウントされたカタログは、「カタログの管理」ダイアログ・ボックスで表示できます。

    データベース・リンクを使用して接続されたデータベース上に新しいカタログを正常にマウントした後、カタログ・エクスプローラでカタログを選択し、その中のデータを検索できます。

カタログとしてライブ共有またはデルタ共有プロバイダをマウントします

登録されたデータ共有からカタログをマウントできます。これにより、コンシューマは、他のデータベース内の他のプロバイダによって定義された表にアクセスできます。外部表は1回のみ定義する必要があります。

  1. 「カタログ」ページで、「カタログの管理」を選択します。+Addをクリックします
  2. 「カタログの追加」ページで、「カタログ・ソース」から「データ共有」を選択します。



  3. 「次」をクリックして、「プロバイダ設定の共有」タブに進みます。
    「共有ソース」で、使用可能なオプションのいずれかを選択します。
    • ライブ共有プロバイダからの選択
    • デルタ共有プロバイダJSON

    この例では、ライブ共有プロバイダから共有ソースを選択します。

    「プロバイダ詳細の共有」で、次の詳細を指定します:

    • プロバイダ名: 共有プロバイダの名前を入力します。例: TEST-PROVIDER
    • 説明: 説明を入力します。このフィールドはオプションです。



  4. 「次」をクリックして、「共有の選択」タブに移動します。
  5. 「シェアプロバイダ設定」タブで、カタログとしてマウントするシェアを「使用可能なシェア」から「選択したシェア」にドラッグ&ドロップします。
  6. 「次」をクリックして、「カタログ詳細」タブに進みます。「カタログ詳細」タブで、次の詳細を指定します。
    • カタログ名: 任意のカタログ名を入力します。
    • カタログの説明: 説明を入力します。
  7. ライブ・シェアまたはデルタ・シェアをカタログとしてマウントするには、「作成」を選択します。

共有上に新しいカタログを正常にマウントした後、カタログ・エクスプローラでカタログを選択し、その中のデータを検索できます。

カタログとしてAmazon Glueをマウント

登録済みのAWS Glueデータ接続からカタログをマウントできます。

  1. 「カタログ」ページで、「カタログの管理」を選択します。
  2. +Addをクリックします
  3. 「カタログの追加」ページで、「カタログ・ソース」から「Amazon Glue」を選択します。



  4. 「次」をクリックして、「Amazon Glueカタログ」タブに進みます。
  5. 「Amazon Glue Catalog」タブで、次の詳細を指定します:
    • データ・カタログ接続の資格証明: ドロップダウンから資格証明を選択します。
    • リージョン: ドロップダウンからリージョンを選択します。
  6. 「次」をクリックして、「カタログ詳細」タブに進みます。「カタログ詳細」タブで、次のフィールド値を指定します:
    • カタログ名: Data Studioでカタログを参照するために使用する名前を入力します。
    • カタログの説明: カタログの説明を入力します。
  7. 「作成」をクリックして、AWS Glueデータ・カタログ・リージョンをカタログとしてマウントします。

AWS Glue Data Catalogリージョンに新しいカタログを正常にマウントした後、カタログ・エクスプローラでカタログを選択し、その中のデータを検索できます。

カタログとしてのOCIデータ・カタログのマウント

登録されたOCIデータ・カタログからカタログをマウントできます。

  1. 「カタログ」ページで、「カタログの管理」を選択します。+Addをクリックします
  2. 「カタログの追加」ページで、「カタログ・ソース」から「OCIデータ・カタログ」を選択します。



  3. 「次」をクリックして、「OCIデータ・カタログ」タブに進みます。
  4. 「OCIデータ・カタログ」タブで、次のフィールド値を指定します。
    • データ・カタログ接続の資格証明: ドロップダウンから資格証明を選択します。このフィールドは必須です。例: BASICOCICRED

    • リージョン: ドロップダウンからリージョンを選択します。このフィールドは必須です。例: us-phoenix-1

    • データ・カタログID: ドロップダウンからデータ・カタログIDを選択します。データ・カタログIDは、データ・カタログが属するアカウントのIDです。例: catalog1

      選択した資格証明以外の別の資格証明を使用するには、「オブジェクト・ストレージに個別の資格証明を使用」を選択します。



  5. 「次」をクリックして、「カタログ詳細」タブに進みます。
  6. 「カタログ詳細」タブで、次のフィールド値を指定します:
    • カタログ名: Data Studioでカタログを参照するために使用する名前を入力します。たとえば、TEST_CATALOGです。
    • カタログの説明: カタログの説明を入力します。



  7. 「作成」をクリックして、OCIデータ・カタログをカタログとしてマウントします。

OCIデータ・カタログ上に新しいカタログを正常にマウントした後、カタログ・エクスプローラでカタログを選択し、その中のデータを検索できます。

Icebergデータ・カタログへのカタログのマウント

Icebergデータ・カタログにカタログを追加できます。カタログとIcebergデータの統合には、UnityやPolarisなどのサポートされているカタログとの接続が含まれます。Data Studio経由でIcebergデータカタログを統合するには、Icebergカタログが適切に構成され、アクセス可能であることを確認する必要があります。

Icebergカタログを構成してアクセスするには、次のものが必要です。
  1. Icebergエンドポイント: Iceberg REST APIを使用してPolarisまたはUnityカタログを設定します。これには、カタログ・タイプ、URIおよびウェアハウスの場所の指定が含まれます。外部IcebergカタログのRESTエンドポイントが必要になります。これは、Icebergメタデータへのアクセスを提供するURLです。

    例: https://your-iceberg-catalog.com/api/v1/iceberg

  2. トークン・エンドポイント: /v1/oauth/tokensエンドポイントは、Bearer Tokenを発行するためにIceberg RESTカタログによって提供されます。
  3. クライアントIDおよびクライアント・シークレット: これらは、アプリケーションを識別するためにOAuthサーバーによって提供される資格証明です(この場合はUnityおよびPolarisカタログの統合)。これらの資格証明を使用してBearerトークンを生成します。
  4. Bearerトークン: Iceberg RESTエンドポイントへのリクエストを認証するには、クライアント資格証明でOAuthを使用します。カタログ・ツールは、Bearer Tokenを受信するためにトークン・エンドポイントをコールします。
  5. ネームスペース: ネームスペースは、データベース内のスキーマと同等です。この場所は、カタログ内のIcebergテーブルのリポジトリとして機能します。Icebergカタログは、表をネームスペースにグループ化し、他のネームスペース内にネストできます。Icebergの仕様は、任意のレベルの入れ子をサポートしています。

    たとえば、SALES表は、STORESネームスペース内で定義できます。このネームスペースは、RETAILネームスペースで定義され、CORPORATEネームスペース内で定義されます。このような表のIcebergの場所は CORPORATE.RETAIL.STORES.SALESです。

次に、OAuthを使用してApache Iceberg表に接続するRESTカタログ統合を作成するためのサンプル構成を示します。
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カタログのカタログ統合の構成を参照してください。

Icebergデータ・カタログにPolarisカタログをマウントするには:
  1. 「カタログ」ページで、「カタログの管理」を選択します。+Addをクリックします
  2. 「カタログの追加」ダイアログで、「カタログ・ソース」タブから「Icebergカタログ」を選択します。



    「次へ」をクリックします

  3. 「カタログの追加」ダイアログの「カタログ」ソース・タブで、次のフィールド値を指定します。
    • カタログ名: 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;



      この資格証明により、Oracle Autonomous DatabaseはIceberg表にアクセスできます。

    • バケット資格証明: この資格証明には、Iceberg表をParquet形式で格納するためのクラウド・ストレージ・ボリュームが格納されます。このフィールドは、Polarisカタログには必須です。

      「次」をクリックして、「Icebergカタログ」タブに進みます。

  4. 「Iceberg catalog」タブで、次のフィールド値を指定できます:

    • Icebergカタログ・ネームスペース: このフィールドには、表の階層編成が表示されます。Icebergカタログ・エンドポイントは、ルート・ネームスペースで構成されます。カタログをマウントするネームスペースを選択します。
    • ネームスペース・セパレータ・スタイル: 「ポラリス・スタイル」を選択します。これはデフォルト値です。カタログの構成方法に基づいて任意の値を選択します。
      ノート

      デフォルト値は保持することをお薦めします。
    • バケット・リージョン: バケット・リージョンを入力します。例: us-west-2

      Icebergカタログ・エンドポイントは、S3などのクラウド・ストレージに格納されているIceberg表を管理するためのインタフェースとして機能します。バケット・リージョンは、S3バケットがホストされている地理的な場所を参照します。

      これはPolarisカタログの必須フィールドです。



    「追加」をクリックします。

    Icebergカタログ上に新しいカタログを正常にマウントした後、「カタログの管理」ページでPolarisカタログを表示できます。このページからカタログを無効化および削除できます。



カタログ・エクスプローラでのマウントされたPolarisカタログの表示

新しいカタログをマウントしたら、マウントされたカタログから表をロードできます。カタログを検索するには:
  1. 「カタログ」ツールで、「カタログの選択...」をクリックします。
  2. 「カタログおよびスキーマ」ウィザードで「POLARIS _CATALOG」フィルタをクリックして、POLARIS_CATALOGカタログを表示します。
  3. 「適用」をクリックして、「カタログ」ページに結果を表示します。





Icebergデータ・カタログ上にUnityカタログをマウントするには:
  1. 「カタログ」ページで、「カタログの管理」を選択します。+Addをクリックします
  2. 「カタログの追加」ダイアログで、「Icebergカタログ」を選択します。



  3. 「次へ」をクリックします
  4. 「カタログの追加」ダイアログの「カタログ」ソース・タブで、次のフィールド値を指定します。
    • カタログ名: Icebergカタログをマウントするカタログの名前を入力します。

      たとえば、Unityです。

    • Icebergカタログ・タイプ: ドロップダウン・フィールドから「Unity」を選択します。
    • Icebergカタログ・エンドポイント:

      Unity Catalogの場合、通常はDatabricks REST APIを使用します。Unity Catalogを介してIceberg表にアクセスするためのエンドポイントは通常、https://<databricks-instance-url>/api/2.1/unity-catalog/icebergの形式です。

      ノート

      詳細は、https://docs.databricks.com/aws/en/external-access/icebergを参照してください。
    • Icebergカタログ資格証明: ドロップダウン・リストの使用可能な資格証明のリストから資格証明を選択します。資格証明がない場合は作成できます。「資格証明の作成」を選択します。
      「資格証明の作成」ダイアログで、次の値を指定します。
      • 資格証明名: 資格証明の名前を入力します。たとえば、UNITY_CREDです。
      • Bearerトークン: Bearerトークン値を貼り付けます。

        「資格証明の作成」を選択します。

        UNITY_CREDは、Icebergカタログ資格証明として表示されます。



      「次」をクリックして、「Icebergカタログ」タブに進みます。

      「Iceberg catalog」タブで、次のフィールド値を指定できます:

    • Icebergカタログ・ネームスペース: アクセスする必要があるスキーマのいずれかを選択します。
    • ネームスペース・セパレータ・スタイル: ネームスペース・セパレータ・スタイルは、通常、カタログ内でネームスペースを構造化および分離する方法を表します。デフォルトでは、「データブリック・スタイル」が選択されています。
    • バケット・リージョン: このフィールドは必須ではありません。



      「追加」をクリックします。



    Icebergカタログ上に新しいカタログを正常にマウントした後、「カタログの管理」ページでUnityカタログを表示できます。このページからカタログを無効化および削除できます。

カタログツールにマウントされたUnityカタログを表示する

新しいカタログをマウントしたら、マウントされたカタログから表をロードできます。カタログを検索するには:
  1. 「カタログ」ツールで、「カタログの選択...」をクリックします。
  2. 「カタログおよびスキーマ」ウィザードで「UNITY _CATALOG」フィルタをクリックして、UNITY_CATALOGカタログを表示します。



  3. 「適用」をクリックして、「カタログ」ページに結果を表示します。