カタログ機能
Oracle Data Studioカタログまたはカタログは、現在接続されているAutonomous Database内のデータおよびその他のオブジェクトを検索する方法を提供するマルチカタログ・ツールであり、また、他の様々な接続システムでも検索できます。
カタログAPI機能を使用すると、クラウド内外のどこからでも、接続されたデータ・アセットを参照、検索および検出できます。
また、他のシステムに新しいカタログをマウントし、接続されたAutonomous Databaseでデータやその他の項目を検索することもできます。
- テナンシ内の他のAutonomous Databases。
- DBリンクを使用して接続できるその他のデータベース(たとえば、Autonomous Databaseが接続できるオンプレミス・データベース)。
- 共有データ。たとえば、Delta Sharingを使用してDataBricksから共有されるデータ。
- AWS GlueやOCI Data Catalogなどの既存の外部データカタログ。
次の項では、Oracle Data StudioカタログAPIの使用を開始する際に役立つファンクションの例を示します。
import adp as ords
adp = ords.login('<protocol://host:port>', 'schema_name', 'schema_password')
Catalog = adp.Catalogカタログの取得手順
このファンクションは、カタログのリストを受け取ります。
構文
Catalog.get_catalogs(search)- 検索(文字列): ユーザー指定のカタログ検索テキストです。このパラメータは、リクエストを行うときにユーザーが指定する必要はなく、省略すると、自動的にデフォルト値
Noneが使用されます。
戻り値の型
JSON文字列です
'[
{"label": catalog name (String),
"type": catalog type (String),
"id": catalog id (String),
"details" : catalog details (JSON Nested Object),
"enabled": catalog enabled status (true | false),
"created": catalog create date (String)
"updated": catalog update date (String)},
...
]'
import json
import pandas as pd
# catalog api function call
r = Catalog.get_catalogs()
# pandas data frame representation
j = json.loads(r)
pd.json_normalize(j)エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message
(String)}'
カタログ・エンティティの取得手順
この関数は、カタログ・エンティティのリストを受け取ります。
構文
Catalog.get_catalog_entities(catalog_name, type, search)- catalog_name (String): ユーザー指定のカタログ名です。
- type (String): ユーザー指定のカタログ・エンティティ・タイプです。このパラメータは、リクエストを行うときにユーザーが指定する必要はなく、省略すると、自動的にデフォルト値
TABLEが使用されます。 - カタログ・エンティティ・タイプ: 'TABLE'、'VIEW'、'SCHEMA'など
- 検索(文字列): ユーザー指定のカタログ検索テキストです。
import json
import pandas as pd
# catalog api function call
r = Catalog.get_catalog_entities('CATALOG_DELTA_SHARING_1')
# pandas data frame representation
j = json.loads(r)
pd.json_normalize(j)戻り値の型
JSON文字列です。
'[
{"label": catalog entity name (String),
"type": catalog entity type (String),
"schema": catalog schema (String),
"id": catalog entity id (String).
"details" : catalog entity details (JSON Nested Object),
"created": catalog entity create date (String)
"updated": catalog entity update date (String)},
...
]'エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'
データベース・リンクの取得プロシージャ
この関数は、カタログ・エンティティのリストを受け取ります。
構文
Catalog.get_database_links(catalog_name, owner, search)- catalog_name (String): ユーザー指定のカタログ名です。
- owner (String): ユーザー指定のカタログ所有者名です。
- 検索(文字列): ユーザー指定のカタログ検索テキストです。このパラメータは、リクエストを行うときにユーザーが指定する必要はなく、省略すると、自動的にデフォルト値
NONEが使用されます。
戻り値の型
JSON文字列です。
'[
{"label": data base link name (String),
"type": database link type (String),
"catalog": data base link catalog (String),
"application": data base link application (String).
"credentialName": data base link credential name (String),
"credentialOwner": data base link credential owner (String),
"hidden": data base link is hidden (String),
"valid": data base link is valid (String),
"created": database link created create date (String)
"updated": database link created update date (String),
]'エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'
Autonomous Databaseプロシージャの取得
このファンクションは、Oracle Data Studio Catalog自律型データベースを受信します。
構文
Catalog.get_autonomous_database(search)- 検索(文字列): ユーザー指定のカタログ検索テキストです。このパラメータは、リクエストを行うときにユーザーが指定する必要はなく、省略すると、自動的にデフォルト値
NONEが使用されます。
戻り値の型
JSON文字列です。
'[
{"label": autonomous database name (String),
"type": autonomous database type (String),
"catalog": autonomous database catalog (String),
"application": autonomous database application (String).
"schema": autonomous database schema (String),
"workloadType": autonomous database workload type (String),
"lifecycleState": autonomous database life cycle state (String),
"ocid": autonomous database ocid (String),
"created": autonomous database create date (String)
"updated": autonomous database update date (String),
]'エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'
カタログ・プロシージャの有効化
このファンクションは、Oracle Data Studioカタログを有効にします。
構文
Catalog.enable_catalog(catalog_name)- catalog_name (String): ユーザー指定のカタログ名です。
# catalog api function call
Catalog.enable_catalog('CATALOG_DELTA_SHARING_1')'{ "updated": true }'戻り値の型
JSON文字列です。
'{ "updated": operation status (True | False)}'エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'
カタログ・プロシージャの無効化
このファンクションは、Oracle Data Studioカタログを無効にします。
構文
Catalog.enable_catalog(catalog_name)- catalog_name (String): ユーザー指定のカタログ名です。
# catalog api function call
Catalog.disable_catalog('CATALOG_DELTA_SHARING_1')出力
'{ "updated": true }'戻り値の型
JSON文字列です。
'{ "updated": operation status (True | False)}'エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'
カタログのアンマウント手順
このファンクションは、Oracle Data Studioカタログを無効にします。
構文
Catalog.unmount_catalog(catalog_name)- catalog_name (String): ユーザー指定のカタログ名です。
# catalog api function call
Catalog.unmount_catalog('CATALOG_DELTA_SHARING_1')'{ "unmounted": true }'戻り値の型
JSON文字列です。
'{ "unmounted": operation status (true | false)}'エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'
カタログ表のプレビュー・プロシージャ
このファンクションは、Oracle Data Studioカタログ表をプレビューします。
構文
Catalog.preview_catalog_table(catalog_name, table_name, schema_name,
row_limit)- catalog_name (String): カタログ名を指定します。
- table_name (String): カタログ表名を指定します。
- schema_name (String): カタログ・スキーマ名を指定します。
- row_limit (Number): カタログ表のプレビュー行制限を指定します。このパラメータは、リクエストを行うときにユーザーが指定する必要はなく、省略すると、自動的にデフォルト値
100が使用されます。
import pandas as pd
# catalog api function call
q = Catalog.preview_catalog_table(
catalog_name = 'CATALOG_DELTA_SHARING_1',
table_name = 'COVID_19_NYT',
schema_name = 'DEFAULT')
# pandas data frame representation
pd.DataFrame.from_records(q)出力
戻り値の型
JSON文字列です。
'[{"columnName": "row_value",.. }, {}, ...]'エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'
OCIデータ・カタログ・プロシージャのマウント
この関数は、OCIデータ・カタログをマウントします。
構文
Catalog.mount_oci_data_catalog(catalog_name, oci_catalog_credential, oci_catalog_region, oci_catalog_name, oci_storage_credential)- catalog_name (String): カタログ名を指定します。
- oci_catalog_credential (String): OCIカタログ資格証明を指定します。
- oci_catalog_region (String): OCIカタログ・リージョンを指定します。
- oci_catalog_name (String): OCIカタログ名を指定します。
- oci_storage_credential (String): OCIストレージ資格証明を指定します。このパラメータは、リクエストを行うときにユーザーが指定する必要はなく、省略すると、自動的にデフォルト値
Noneが使用されます。
戻り値の型
JSON文字列です。
'[{"catalogName": catalog name (String),
"shareName": share name (String)}]'エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'
Autonomous Database共有カタログのマウント・プロシージャ
このファンクションは、自律型データベース共有カタログをマウントします。
構文
Catalog.mount_autonomous_database_catalog(catalog_name, database_name, create_database_link,
database_link_name, credential_name)- catalog_name (String): カタログ名を指定します。
- database_name (String): 自律型データベース名を指定します。
- create_database_link (ブール): データベース・リンク名モードを作成します。このパラメータは、リクエストを行うときにユーザーが指定する必要はなく、省略すると、自動的にデフォルト値
Falseが使用されます。 - database_link_name (String): データベース・リンク名です。このパラメータは、リクエストを行うときにユーザーが指定する必要はなく、省略すると、自動的にデフォルト値
Falseが使用されます。 - credential_name (String): スウィフト資格証明名です。このパラメータは、リクエストを行うときにユーザーが指定する必要はなく、省略すると、自動的にデフォルト値
Falseが使用されます。
戻り値の型
JSON文字列です。
'[{"catalogName": catalog name (String),
"shareName": share name (String)}]'エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'
シェアカタログのマウント手順
このファンクションは、Oracle Data Studio共有カタログをマウントします。
構文
Catalog.mount_shares_catalog(catalog_name, share_name,
share_provider)- catalog_name (String): カタログ名を指定します。
- share_name (String): シェア名です。
- share_provider (String): 共有プロバイダ名です。
Mount Shares Catalog# catalog api function call
Catalog.mount_shares_catalog (
catalog_name = 'CATALOG_DELTA_SHARING_1',
share_name = 'DELTA_SHARING',
share_provider = 'PROVIDER_DELTA_SHARING_1')'[{"catalogName":"CATALOG_DELTA_SHARING_1","shareName":"DELTA_SHARING"}]'戻り値の型
JSON文字列です。
'[{"catalogName": catalog name (String),
"shareName": share name (String)}]'エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'


