Funciones de catálogo

El catálogo o catálogo de Oracle Data Studio es una herramienta de varios catálogos que proporciona una forma de buscar datos y otros objetos en la instancia de Autonomous Database conectada actualmente y también en una amplia gama de otros sistemas conectados.

La funcionalidad de API del catálogo permite examinar, buscar y detectar activos de datos conectados desde cualquier parte de la nube y más allá.

También permite montar nuevos catálogos en otros sistemas y buscar datos y otros elementos en la instancia de Autonomous Database conectada.

La funcionalidad de la API de catálogo permite montar nuevos catálogos en:
  • Otras bases de datos autónomas de su arrendamiento.
  • Cualquier otra base de datos que se pueda conectar mediante un enlace de base de datos, por ejemplo, una base de datos local a la que pueda conectarse Autonomous Database.
  • Datos compartidos, por ejemplo, datos compartidos de DataBricks mediante Delta Sharing.
  • Catálogos de datos externos existentes, como AWS Glue o OCI Data Catalog.

En esta sección se proporcionan ejemplos de funciones que le ayudarán a empezar a utilizar la API de catálogo de Oracle Data Studio.

Antes de utilizar estos ejemplos, debe crear la instancia de ADP y, a continuación, conectarse.
import adp as ords
adp = ords.login('<protocol://host:port>', 'schema_name', 'schema_password')
Catalog = adp.Catalog

Obtener procedimiento de catálogos

Esta función recibe una lista de catálogos.

Sintaxis

Catalog.get_catalogs(search)
Parámetros:
  • search (String): es el texto de búsqueda del catálogo proporcionado por el usuario. No es necesario que el usuario proporcione este parámetro al realizar una solicitud y, si se omite, el sistema utilizará automáticamente el valor por defecto None para él.

Tipo de Retorno

Es una cadena JSON

Estructura de devolución
'[

{"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)},

 ...

]'
Ejemplo
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)


A continuación se muestra la descripción de get_catalogs.png
Descripción de la ilustración get_catalogs.png

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message
    (String)}'

Procedimiento de obtención de entidades de catálogo

Esta función recibe una lista de entidades de catálogo.

Sintaxis

Catalog.get_catalog_entities(catalog_name, type, search)
Parámetros:
  • catalog_name (String): es un nombre de catálogo proporcionado por el usuario.
  • type (String): es un tipo de entidad de catálogo proporcionado por el usuario. No es necesario que el usuario proporcione este parámetro al realizar una solicitud y, si se omite, el sistema utilizará automáticamente el valor por defecto TABLE para él.
  • tipos de entidad de catálogo: 'TABLE', 'VIEW', 'SCHEMA', etc.
  • search (String): es el texto de búsqueda del catálogo proporcionado por el usuario.
Ejemplos
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)



Tipo de Retorno

Es una cadena JSON.

Estructura de devolución
'[

{"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)},

...

]'

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message (String)}'

Procedimiento para Obtener Enlaces de Base de Datos

Esta función recibe una lista de entidades de catálogo.

Sintaxis

Catalog.get_database_links(catalog_name, owner, search)
Parámetros:
  • catalog_name (String): es un nombre de catálogo proporcionado por el usuario.
  • owner (String): es el nombre de propietario del catálogo proporcionado por el usuario.
  • search (String): es el texto de búsqueda del catálogo proporcionado por el usuario. No es necesario que el usuario proporcione este parámetro al realizar una solicitud y, si se omite, el sistema utilizará automáticamente el valor por defecto NONE para él.

Tipo de Retorno

Es una cadena JSON.

Estructura de devolución
'[

{"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),

]'

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message (String)}'

Obtener procedimiento de Autonomous Database

Esta función recibe bases de datos autónomas del catálogo de Oracle Data Studio.

Sintaxis

Catalog.get_autonomous_database(search)
Parámetros:
  • search (String): es el texto de búsqueda del catálogo proporcionado por el usuario. No es necesario que el usuario proporcione este parámetro al realizar una solicitud y, si se omite, el sistema utilizará automáticamente el valor por defecto NONE para él.

Tipo de Retorno

Es una cadena JSON.

Estructura de devolución
'[

{"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),
]'

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message (String)}'

Activar procedimiento de catálogo

Esta función activa el catálogo de Oracle Data Studio.

Sintaxis

Catalog.enable_catalog(catalog_name)
Parámetros:
  • catalog_name (String): es un nombre de catálogo proporcionado por el usuario.
Ejemplo
# catalog api function call
Catalog.enable_catalog('CATALOG_DELTA_SHARING_1')
Salida
'{ "updated": true }'

Tipo de Retorno

Es una cadena JSON.

Estructura de devolución
'{ "updated": operation status (True | False)}'

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message (String)}'

Desactivar procedimiento de catálogo

Esta función desactiva el catálogo de Oracle Data Studio.

Sintaxis

Catalog.enable_catalog(catalog_name)
Parámetros:
  • catalog_name (String): es un nombre de catálogo proporcionado por el usuario.
Ejemplos
# catalog api function call
Catalog.disable_catalog('CATALOG_DELTA_SHARING_1')

Salida

'{ "updated": true }'

Tipo de Retorno

Es una cadena JSON.

Estructura de devolución
'{ "updated": operation status (True | False)}'

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message (String)}'

Desmontar procedimiento de catálogo

Esta función desactiva el catálogo de Oracle Data Studio.

Sintaxis

Catalog.unmount_catalog(catalog_name)
Parámetros:
  • catalog_name (String): es un nombre de catálogo proporcionado por el usuario.
Ejemplo
# catalog api function call
Catalog.unmount_catalog('CATALOG_DELTA_SHARING_1')
Salida
'{ "unmounted": true }'

Tipo de Retorno

Es una cadena JSON.

Estructura de devolución
'{ "unmounted": operation status (true | false)}'

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message (String)}'

Procedimiento de vista previa de tabla de catálogo

Esta función muestra una vista previa de la tabla del catálogo de Oracle Data Studio.

Sintaxis

Catalog.preview_catalog_table(catalog_name, table_name, schema_name,
    row_limit)
Parámetros:
  • catalog_name (String): especifica el nombre del catálogo.
  • table_name (String): especifica el nombre de la tabla del catálogo.
  • schema_name (String): especifica el nombre del esquema del catálogo.
  • row_limit (Number): especifica el límite de filas de vista previa de la tabla de catálogo. No es necesario que el usuario proporcione este parámetro al realizar una solicitud y, si se omite, el sistema utilizará automáticamente el valor por defecto 100 para él.
Ejemplo
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)

Salida



Tipo de Retorno

Es una cadena JSON.

Estructura de devolución
'[{"columnName": "row_value",.. }, {}, ...]'

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message (String)}'

Procedimiento de montaje de OCI Data Catalog

Esta función monta OCI Data Catalog.

Sintaxis

Catalog.mount_oci_data_catalog(catalog_name, oci_catalog_credential, oci_catalog_region, oci_catalog_name, oci_storage_credential)
Parámetros:
  • catalog_name (String): especifica el nombre del catálogo.
  • oci_catalog_credential (String): especifica la credencial del catálogo de OCI.
  • oci_catalog_region (String): especifica la región del catálogo de OCI.
  • oci_catalog_name (String): especifica el nombre del catálogo de OCI.
  • oci_storage_credential (String): especifica la credencial de almacenamiento de OCI. No es necesario que el usuario proporcione este parámetro al realizar una solicitud y, si se omite, el sistema utilizará automáticamente el valor por defecto None para él.

Tipo de Retorno

Es una cadena JSON.

Estructura de devolución
'[{"catalogName": catalog name (String),
   "shareName": share name (String)}]'

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message (String)}'

Procedimiento de montaje del catálogo de recursos compartidos de Autonomous Database

Esta función monta el catálogo de recursos compartidos de la base de datos autónoma.

Sintaxis

Catalog.mount_autonomous_database_catalog(catalog_name, database_name, create_database_link,
      database_link_name, credential_name)
Parámetros:
  • catalog_name (String): especifica el nombre del catálogo.
  • database_name (String): especifica el nombre de la base de datos autónoma.
  • create_database_link (booleano): crea el modo de nombre de enlace de base de datos. No es necesario que el usuario proporcione este parámetro al realizar una solicitud y, si se omite, el sistema utilizará automáticamente el valor por defecto False para él.
  • database_link_name (String): es un nombre de enlace de base de datos. No es necesario que el usuario proporcione este parámetro al realizar una solicitud y, si se omite, el sistema utilizará automáticamente el valor por defecto False para él.
  • credential_name (String): es un nombre de credencial SWIFT. No es necesario que el usuario proporcione este parámetro al realizar una solicitud y, si se omite, el sistema utilizará automáticamente el valor por defecto False para él.

Tipo de Retorno

Es una cadena JSON.

Estructura de devolución
'[{"catalogName": catalog name (String),
   "shareName": share name (String)}]'

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message (String)}'

Procedimiento de catálogo de montaje de recursos compartidos

Esta función monta el catálogo de recursos compartidos de Oracle Data Studio.

Sintaxis

Catalog.mount_shares_catalog(catalog_name, share_name,
    share_provider)
Parámetros:
  • catalog_name (String): especifica el nombre del catálogo.
  • share_name (String): es un nombre compartido.
  • share_provider (String): es el nombre del proveedor de recursos compartidos.
Ejemplo
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')
Salida
'[{"catalogName":"CATALOG_DELTA_SHARING_1","shareName":"DELTA_SHARING"}]'

Tipo de Retorno

Es una cadena JSON.

Estructura de devolución
'[{"catalogName": catalog name (String),
"shareName": share name (String)}]'

Tipo de Error

Cadena JSON

Estructura de errores

'{"code": error code (Number), "error": error message (String)}'