DBMS_DCATパッケージ

DBMS_DCATパッケージには、Autonomous AI DatabaseユーザーがOCIデータ・カタログのデータ検出および一元化されたメタデータ管理システムを活用するのに役立つファンクションおよびプロシージャが用意されています。

ノート: DBMS_DCATのサポートは、バージョン19.30以降のOracle AI Database 19cおよびバージョン23.26.1以降のAutonomous AI Database 26aiで使用できます。

データ・カタログは、データ・レイクのオブジェクト・ストレージ・アセットからメタデータを収集します。収集プロセスによって論理エンティティが作成されます。論理エンティティは、列および関連付けられたデータ型を持つ表と考えることができます。DBMS_DCATプロシージャおよびファンクションは、Autonomous AI Databaseをデータ・カタログに接続し、アセットをデータベースと同期して、保護されたスキーマおよび外部表を作成します。その後、これらの外部表を使用してオブジェクト・ストアに問い合せ、外部データをAutonomous AI Databaseに格納されたデータと簡単に結合できます。これにより、管理プロセスが大幅に簡素化され、複数のOCIサービス(Autonomous AIデータベースを含む)で共有される、一元管理されたメタデータ・ストアが1つあります。また、Autonomous AI Databaseディクショナリ・ビューもあり、SQLを使用してデータ・カタログの内容を検査し、これらのデータ・カタログ・エンティティがAutonomous AI Databaseスキーマおよび表にどのようにマップされるかを示します。

データ・カタログのユーザーおよびロール

DBMS_DCATパッケージは、同期されたユーザー/スキーマ、dcat_adminユーザーおよびローカル・ユーザーをサポートします。このパッケージを使用できるようにするには、ユーザーにdcat_syncロールが必要です。

データカタログユーザー

データカタログ役割

必要な資格証明およびIAMポリシー

このトピックでは、Autonomous AI Databaseユーザーにデータ・カタログの管理およびオブジェクト・ストレージからの読取り権限を付与するために必要なOracle Cloud Infrastructure Identity and Access Management (IAM)ユーザー資格証明およびポリシーについて説明します。

OCIデータ・カタログの資格証明およびポリシーの要件:

AWS Glueデータカタログの資格とポリシー要件

Autonomous AI DatabaseユーザーにAmazon Web Services (AWS) Glue Data CatalogsへのアクセスおよびS3オブジェクト・ストレージからの読取り権限を付与するには、次のユーザー資格証明およびポリシーが必要です:

例: OCIネイティブ認証資格証明オブジェクトの作成

この例では、データ・カタログまたはオブジェクト・ストア資格証明オブジェクトの作成時に使用できるOCIネイティブ認証資格証明を作成します。詳細は、「DBMS_DCAT」を参照してください。SET_DATA_CATALOG_CREDENTIALプロシージャおよびDBMS_DCAT.SET_OBJECT_STORE_CREDENTIALプロシージャ。

OCIネイティブ認証では、DBMS_CLOUD.CREATE_CREDENTIALプロシージャにパラメータcredential_nameuser_ocidtenancy_ocidprivate_keyおよびfingerprintが含まれています。このプロシージャの詳細は、「DBMS_CLOUD CREATE_CREDENTIALプロシージャ」を参照してください。

credential_nameは、資格証明オブジェクトの名前です。The user_ocid and tenancy_ocid parameters correspond to the user’s and tenancy’s OCIDs respectively.

private_keyパラメータは、生成された秘密キーをPEM形式で指定します。パスフレーズ付きで生成された秘密キーはサポートされていません。したがって、パスフレーズなしで鍵を生成する必要があります。パスフレーズなしで秘密キーを作成する方法の詳細は、「API署名キーの生成方法」を参照してください。また、このパラメータに指定する秘密キーには、ヘッダーまたはフッターなしのキー自体のみが含まれている必要があります(例: '—BEGIN RSA PRIVATE KEY—'、'—END RSA PRIVATE KEY— —')。

fingerprintパラメータは、公開キーをコンソールにアップロードした後、またはOpenSSLコマンドを使用して取得するフィンガープリントを指定します。フィンガープリントの取得の詳細は、公開キーのアップロード方法およびキーのフィンガープリントの取得方法を参照してください。

必要な情報がすべて収集され、秘密キーが生成されると、次のCREATE_CREDENTIALプロシージャを実行する準備が整います。

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL (
    credential_name => 'OCI_NATIVE_CRED',
    user_ocid              => 'ocid1.user.oc1..aaaaaaaatfn77fe3fxux3o5lego7glqjejrzjsqsrs64f4jsjrhbsk5qzndq',
    tenancy_ocid           => 'ocid1.tenancy.oc1..aaaaaaaapwkfqz3upqklvmelbm3j77nn3y7uqmlsod75rea5zmtmbl574ve6a',
    private_key            => 'MIIEogIBAAKCAQEA...t9SH7Zx7a5iV7QZJS5WeFLMUEv+YbYAjnXK+dOnPQtkhOblQwCEY3Hsblj7Xz7o=',
    fingerprint            => '4f:0c:d6:b7:f2:43:3c:08:df:62:e3:b2:27:2e:3c:7a');
END;
/

資格証明オブジェクトを作成すると、dba_credentials表に表示されます。

SELECT owner, credential_name
FROM dba_credentials
WHERE credential_name LIKE '%NATIVE%';
OWNER CREDENTIAL_NAME
----- ---------------
ADMIN OCI_NATIVE_CRED

例: ユーザープリンシパルの使用

この例では、user1はグループadb-adminsのメンバーです。このグループのすべてのメンバーには、mycompartment内のすべてのデータ・カタログを管理し、mycompartmentのオブジェクト・ストアから読み取る権限が付与されます。

  1. adb-adminsのメンバーであるユーザーが、mycompartment内のすべてのデータ・カタログを管理できるようにします。

     allow group adb-admins to manage data-catalog-family in compartment mycompartment
    
  2. adb-adminsのメンバーであるユーザーが、mycompartment内の任意のバケット内の任意のオブジェクトを読み取ることができます。

     allow group adb-admins to read objects in compartment mycompartment