カタログ関数
Oracle Data Studio Catalogカタログ(カタログ)は、現在接続されているAutonomous Database内だけでなく、様々な他の接続されたシステム内のデータおよびその他のオブジェクトを検索する方法を提供するマルチカタログ・ツールです。
カタログAPI機能を使用すると、クラウド内外のどこからでも、接続されたデータ・アセットを参照、検索および検出できます。
また、他のシステムに新しいカタログをマウントし、接続されたAutonomous Database内のデータやその他のアイテムを検索することもできます。
- テナンシ内の他のAutonomous Database。
- DBリンクを使用して接続できるその他のデータベース(Autonomous Databaseが接続できるオンプレミス・データベースなど)。
- 共有データ(デルタ共有を使用してDataBricksから共有されるデータなど)。
- AWS Glueなどの既存の外部データ・カタログやOCIデータ・カタログ。
次の項では、Oracle Data Studio Catalog APIの使用を開始するのに役立つ関数の例を示します。
import adp as ords
adp = ords.login('<protocol://host:port>', 'schema_name', 'schema_password')
Catalog = adp.Catalog
カタログの取得プロシージャ
この関数はカタログのリストを受け取ります。
構文
Catalog.get_catalogs(search)
- search (String): ユーザー指定のカタログ検索テキストです。このパラメータは、リクエストするときにユーザーが指定する必要はありません。省略すると、デフォルト値の
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
が自動的に使用されます。 - catalog entity types : 'TABLE'、'VIEW'、'SCHEMA'など
- search (String): ユーザー指定のカタログ検索テキストです。
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): ユーザー指定のカタログ所有者名です。
- search (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)
- search (String): ユーザー指定のカタログ検索テキストです。このパラメータは、リクエストするときにユーザーが指定する必要はありません。省略すると、デフォルト値の
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を有効にします。
構文
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を無効にします。
構文
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を無効にします。
構文
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表をプレビューします。
構文
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 (Boolean): データベース・リンク名モードを作成します。このパラメータは、リクエストするときにユーザーが指定する必要はありません。省略すると、デフォルト値の
False
が自動的に使用されます。 - database_link_name (String): データベース・リンク名です。このパラメータは、リクエストするときにユーザーが指定する必要はありません。省略すると、デフォルト値の
False
が自動的に使用されます。 - credential_name (String): Swift資格証明名です。このパラメータは、リクエストするときにユーザーが指定する必要はありません。省略すると、デフォルト値の
False
が自動的に使用されます。
戻り型
JSON文字列です。
'[{"catalogName": catalog name (String),
"shareName": share name (String)}]'
エラー・タイプ
JSON文字列
エラー構造
'{"code": error code (Number), "error": error message (String)}'
共有カタログのマウント・プロシージャ
この関数は、Oracle Data Studio Shares Catalogをマウントします。
構文
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)}'