Catálogos externos

Cree catálogos externos para obtener datos de una ubicación fuera de Oracle AI Data Platform.

Icono de tutorial Sprint de LiveLabs

Los catálogos externos conectan AI Data Platform a orígenes de datos externos, como Oracle Autonomous AI Lakehouse, Oracle AI Database y Oracle Autonomous AI Transaction Processing, y tiendas de terceros como Snowflake, Azure SQL y MySQL. AI Data Platform detecta y sincroniza los metadatos de estos orígenes en el catálogo maestro, lo que permite a los usuarios examinar y consultar esquemas y tablas remotos sin duplicar los datos subyacentes.

Los catálogos externos utilizan las credenciales proporcionadas durante la creación del catálogo externo para consultar el origen externo. Para obtener más información sobre los orígenes de datos, consulte Orígenes internos.

Por ejemplo, si crea un catálogo externo para una instancia de Autonomous AI Lakehouse en la que las credenciales de usuario de Autonomous AI Lakehouse utilizadas tienen acceso a schema1, pero no a schema2, solo aparece schema1 en el catálogo externo. Los usuarios con permisos para el catálogo externo solo pueden consultar el esquema al que tiene acceso el usuario de Autonomous AI Lakehouse.

Note:

AI Data Platform no soporta la recopilación de datos de esquemas y tablas compartidos entre bases de datos de conexión (PDB) o de esquemas y tablas mantenidos por Oracle.

Permisos necesarios para Autonomous AI Lakehouse y el procesamiento de transacciones de IA autónoma

Al crear un catálogo externo en AI Data Platform, las credenciales de usuario que utilice para conectarse deben tener al menos los siguientes permisos:
  • CREAR SESIÓN para conectar a la base de datos
  • Acceso SELECT en los objetos necesarios (tablas/vistas/tablas externas) mediante permisos de privilegios mínimos o un rol de lectura dedicado
  • LECTURA, ESCRITURA en DIRECTORY DATA_PUMP_DIR
Si va a insertar datos o crear una nueva tabla en el catálogo externo, asegúrese de que el usuario forma parte de DWROLE. Para obtener más información, consulte la documentación de Oracle Autonomous AI Transaction Processing, Gestión de privilegios de usuario en Autonomous AI Database - Conexión con una herramienta de cliente.

Limitaciones

La operación UPDATE no está soportada para catálogos externos. Utilizar tablas de catálogo externo para detectar y acceder a consultas.

DDL no está soportado, incluso cuando las credenciales utilizadas para crear el catálogo externo tienen permisos para ejecutar sentencias DDL.

La combinación de nombres de tabla afecta a cómo se crea la tabla en Oracle Autonomous AI Lakehouse:
  • Si proporciona el nombre de la tabla en mayúsculas, la tabla se crea con letras mayúsculas y sigue el comportamiento por defecto no sensible a mayúsculas/minúsculas en Autonomous AI Lakehouse.
  • Si proporciona el nombre de la tabla en minúscula, la tabla se crea como sensible a mayúsculas/minúsculas en Autonomous AI Lakehouse. Los nombres de columna para las tablas creadas mediante Autonomous AI Lakehouse siempre se crean como sensibles a mayúsculas/minúsculas.
  • Los comentarios de la columna de origen están limitados a 256 bytes de UTF-8 durante la ingesta y el refrescamiento del catálogo externo. El límite se mide en bytes, no en caracteres, por lo que los comentarios que contienen caracteres multibyte pueden superar el límite cuando contienen 256 caracteres o menos. Si se supera el límite, se pueden producir errores en la ingesta de metadatos o en el refrescamiento. Reduzca el comentario de la columna de origen a 256 UTF-8 bytes o menos y, a continuación, vuelva a intentarlo.

Creación de un catálogo externo

Puede conectar un catálogo desde la instancia de Oracle AI Data Platform a un origen externo.

  1. Haga clic en Create en el panel de navegación de la izquierda y seleccione Catalog. También puede navegar al catálogo maestro y hacer clic en Icono Crear catálogo Crear catálogo en catálogo maestro.
  2. Complete los campos de nombre y descripción.
  3. En la lista desplegable Tipo de catálogo, seleccione Catálogo externo.
  4. Seleccione el tipo de origen externo.
  5. Rellene el nombre de usuario y la contraseña, si procede.
  6. SSL está activado por defecto. Desactive la casilla para desactivar SSL.
  7. Haga clic en Create.
    Los catálogos externos que extraen datos de un origen externo muestran un icono de círculo giratorio.
    Vista de árbol del catálogo maestro con el icono giratorio En curso junto al catálogo resaltado

    También puede supervisar el progreso desde Ejecuciones de trabajos.

Creación de un catálogo externo para redes privadas

Puede crear un catálogo externo que acceda a orígenes de datos en una red privada.

  1. Haga clic en Create en el panel de navegación de la izquierda y seleccione Catalog. También puede navegar al catálogo maestro y hacer clic en Icono Crear catálogo Crear catálogo en catálogo maestro.
  2. Complete los campos de nombre y descripción.
  3. En la lista desplegable Tipo de catálogo, seleccione Catálogo externo.
  4. Seleccione el tipo de origen externo:
  5. Rellene el nombre de usuario y la contraseña, si procede.
  6. SSL está activado por defecto. Desactive la casilla para desactivar SSL.
  7. Seleccione Activar red privada.
  8. Seleccione el espacio de trabajo con la configuración de red privada deseada.
    Para obtener información sobre la configuración de un espacio de trabajo configurado para redes privadas, consulte Creación de un espacio de trabajo con acceso a red privada activado.
  9. Haga clic en Create.
    Los catálogos externos que extraen datos de un origen externo muestran un icono de círculo giratorio.
    Vista de árbol del catálogo maestro con el icono giratorio En curso junto al catálogo resaltado

    También puede supervisar el progreso desde Ejecuciones de trabajos.

Cómo conectar Oracle Autonomous AI Database on Exadata Cloud@Customer a Oracle AI Data Platform

Puede crear un catálogo externo para una base de datos de Oracle Autonomous AI Transaction Processing, Oracle Autonomous AI Database u Oracle Autonomous AI Lakehouse que se ejecute en Oracle Autonomous AI Database on Exadata Cloud@Customer. Cuando solo se pueda acceder a la base de datos a través de una red privada, configure un espacio de trabajo de AI Data Platform con acceso a la red privada y los detalles de SCAN de la base de datos.

La conexión utiliza TLS con una cartera de credenciales de cliente.

Requisitos

Antes de comenzar, asegúrese de que se cumplan los siguientes requisitos:
  • La base de datos está aprovisionada y disponible.
  • Ha descargado la cartera de credenciales de cliente de base de datos.
  • Conoce el nombre de dominio completo de SCAN de la base de datos y el puerto del listener de TLS.
  • El nombre de SCAN se puede resolver desde la red privada que utiliza el espacio de trabajo de AI Data Platform.
  • Las rutas de red y las reglas de seguridad permiten el tráfico de la red del espacio de trabajo al puerto del listener de la base de datos.
  • Tiene permiso para inspeccionar los grupos de seguridad de red, subred y VCN necesarios.
  • El usuario de la base de datos tiene los privilegios CREATE SESSION y SELECT en los esquemas y objetos que desea exponer a través del catálogo externo.
  • El usuario de la base de datos tiene los permisos adicionales necesarios para las operaciones de lectura o escritura previstas.
Solo se detectan y agregan al catálogo externo los esquemas y objetos a los que puede acceder el usuario de base de datos especificado.

Crear un espacio de trabajo con conectividad privada

Siga los pasos de Creación de un espacio de trabajo con acceso de red privado activado, con los siguientes cambios:
  • Proporcione la VCN y la subred que proporcionen conectividad a su entorno de Oracle Exadata Cloud@Customer.
  • En Opciones de red avanzadas, seleccione Mis orígenes de datos requieren acceso a través de un proxy de SCAN.
  • Introduzca el nombre de dominio completo SCAN de la base de datos.
  • Introduzca el puerto del listener de TLS de la base de datos.

Crear el catálogo externo

Siga los pasos proporcionados en Creación de un catálogo externo para redes privadas con las siguientes selecciones:
  • En Tipo de origen externo, seleccione Oracle Autonomous AI Transaction Processing.
  • En Método de conexión, seleccione Cartera.
  • Cargue la cartera de credenciales de cliente descargada de la base de datos.
  • Seleccione el servicio de base de datos necesario de la cartera.
  • Si es necesario, proporcione la contraseña de cartera.
  • Seleccione el espacio de trabajo configurado anteriormente con acceso a la red de base de datos y la dirección SCAN.
  • Pruebe la conexión para confirmar que todo está configurado correctamente.

Validar la Conexión

Una vez finalizada la creación del catálogo y la detección de metadatos:
  • Confirme que los esquemas y las tablas esperados aparecen en el catálogo externo.
  • Inicie o seleccione un cluster de recursos informáticos en el espacio de trabajo privado.
  • Consultar una tabla detectada con su nombre de tres partes:
SELECT *
FROM <catalog_name>.<schema_name>.<table_name>;

Refrescamiento de un catálogo de datos externo

Puede refrescar un catálogo externo en Oracle AI Data Platform para sincronizar su contenido con el origen externo.

  1. En el panel de navegación de la izquierda, haga clic en Icono de catálogo maestro Catálogo maestro.
  2. En el árbol Catálogo maestro, seleccione el catálogo externo que desea actualizar.
  3. Haga clic en icono Refrescar Refrescar.
    El catálogo externo se muestra en Catálogo maestro con un icono de círculo giratorio mientras extrae datos y actualiza metadatos del origen externo.
    Vista de árbol del catálogo maestro con el icono giratorio En curso junto al catálogo resaltado

    También puede supervisar el progreso desde Ejecuciones de trabajos. Consulte Supervisión de trabajos.

Refrescamiento de un catálogo externo mediante SQL

Puede utilizar la gramática SQL para refrescar los metadatos de un catálogo externo, así como su esquema y tablas, para sincronizar el contenido con el origen externo.

Para refrescar un catálogo externo, utilice los siguientes comandos SQL en un bloc de notas:

REFRESH EXTERNAL CATALOG <<catalog_name>>

Para refrescar un esquema en un catálogo externo, utilice:

REFRESH SCHEMA IN EXTERNAL CATALOG <<catalog_name.schema_name>>

Para refrescar una tabla en un esquema de un catálogo externo, utilice:

REFRESH TABLE IN EXTERNAL CATALOG <<catalog_name.schema_name.table_name>>

Para obtener más información, consulte Gramática SQL.

Cambiar el nombre de un catálogo externo

Puede cambiar el nombre de un catálogo externo si su contenido o finalidad han cambiado.

  1. En el panel de navegación de la izquierda, haga clic en Icono de catálogo maestro Catálogo maestro.
  2. En el separador Catálogos, busque el catálogo y haga clic en Icono de tres puntos de acciones Acciones y, a continuación, haga clic en Cambiar nombre.

    Menú de tres puntos de acciones abierto para catálogo con Renombrar resaltado

  3. Edite el nombre del catálogo y pulse Intro.

Editar descripción de catálogo externo

Puede modificar la descripción de un catálogo externo si su contenido o finalidad ha cambiado.

  1. En el panel de navegación de la izquierda, haga clic en Icono de catálogo maestro Catálogo maestro.
  2. En el separador Catálogos, busque el catálogo y haga clic en Icono de tres puntos de acciones Acciones y, a continuación, en Editar descripción.

    Menú de tres puntos de acciones para un catálogo abierto con Editar descripción resaltada

  3. Edite la descripción del catálogo y haga clic en Guardar.

Cambio de la contraseña de un catálogo externo

Puede actualizar la contraseña necesaria para un catálogo externo para que pueda seguir accediendo al origen.

  1. En el panel de navegación de la izquierda, haga clic en Icono de catálogo maestro Catálogo maestro.
  2. En el separador Catálogos, busque el catálogo y haga clic en Icono de tres puntos de acciones Acciones y, a continuación, haga clic en Cambiar contraseña.
  3. Introduzca la nueva contraseña para el catálogo externo y haga clic en Guardar.

Suprimir un catálogo externo

Puede suprimir un catálogo externo cuando ya no sea necesario.

Al suprimir un catálogo externo, solo se suprimen los metadatos almacenados localmente. Los datos del origen de datos externo no se ven afectados.

  1. En el panel de navegación de la izquierda, haga clic en Icono de catálogo maestro Catálogo maestro.
  2. En el separador Catálogos, localice el catálogo y haga clic en Icono de tres puntos de acciones Acciones y, a continuación, en Suprimir.

    Menú de tres puntos de acciones abierto para el catálogo con Eliminar resaltado

  3. Seleccione Confirmar supresión de los catálogos.
  4. Haga clic en Suprimir.

Suprimir datos de tablas de un catálogo externo

Puede utilizar la ruta de acceso de escritura de Spark para suprimir filas de una tabla de catálogo externa cuando el catálogo y la tabla estén configurados para soportar SQL DELETE de transferencia.

Uso del ID de catálogo para suprimir datos de tabla: ejemplo de Python

from pyspark.sql.types import StructType

df = spark.createDataFrame([], StructType([]))


    df.write
      .format("aidataplatform")
      .option("catalog.id", "<catalog>")
      .option("pushdown.sql", "DELETE FROM <schema>.<target_table> WHERE ID = 2")
      .save()

Uso del ID de catálogo para suprimir datos de tabla: ejemplo de Scala

val df = spark.emptyDataFrame

df.write
  .format("aidataplatform")
  .option("catalog.id", "<catalog>")
  .option("pushdown.sql", "DELETE FROM <schema>.<target_table> WHERE ID = 2")
  .save()

Ejemplo de estilo de ingesta para suprimir datos de tabla: ejemplo de Python

from pyspark.sql.types import StructType
df = spark.createDataFrame([], StructType([]))

df.write
  .format("aidataplatform")
  .option("data.asset.type", "ORACLE_ALH")
  .option("tns.alias", alhTns)
  .option("user.name", userName)
  .option("wallet.content", alhWalletContent)
  .option("password", alhPassword)
  .option("pushdown.sql", "DELETE FROM ADMIN.PUSHDOWN_FEATURE WHERE ID = 2")
  .save()

Ejemplo de estilo de ingesta para suprimir datos de tabla: ejemplo de Scala

val df = spark.emptyDataFrame

df.write
  .format("aidataplatform")
  .option("data.asset.type", "ORACLE_ALH")
  .option("tns.alias", alhTns)
  .option("user.name", userName)
  .option("wallet.content", alhWalletContent)
  .option("password", alhPassword)
  .option("pushdown.sql", "DELETE FROM ADMIN.PUSHDOWN_FEATURE WHERE ID = 2")
  .save()