Acerca de la Consulta de Catálogos y Bases de Datos Remotos

En este tema se describe cómo consultar datos externos mediante los metadatos del catálogo con una sintaxis SQL del formulario: [schema].object@catalog_name.

Aquí la sintaxis [schema].object@catalog_name hace referencia a una representación de acceso a objetos de base de datos

En la tabla, se describen los parámetros y sus descripciones utilizados en la sintaxis:

Parámetros Descripción
Esquema

Este campo es opcional y se define por defecto en el usuario actual. Un esquema es un espacio de nombres dentro de un catálogo que organiza objetos de base de datos relacionados, como tablas, vistas, procedimientos o funciones. Actúa como un contenedor lógico para estos objetos.

Objeto Este campo hace referencia a cualquier objeto de base de datos incluido en un esquema, como tablas, vistas, procedimientos o funciones.
Catálogo El campo Catálogo muestra el nombre del catálogo con la tabla a la que se hace referencia. Puede crear y gestionar catálogos mediante el paquete DBMS_CATALOG o la herramienta Catalog del conjunto de herramientas de Data Studio.
Nota

También puede sustituir los catálogos por dbLinks.

Acceso a Tablas Remotas

Para acceder a una tabla desde un esquema remoto mediante un catálogo, debe seguir estos pasos:
  1. Montar un catálogo: comience por montar un catálogo sobre cualquier tipo de almacén de datos admitido (por ejemplo, Iceberg, Delta Lake, etc.). El montaje de un catálogo estandariza los metadatos, lo que permite el acceso SQL a datos externos como si se tratara de tablas dentro de un esquema del catálogo. Consulte Gestión de catálogos para obtener pasos detallados sobre el montaje de catálogos. Una vez montado el catálogo y estandarizados los metadatos, puede consultar directamente los datos externos mediante SQL. Aunque los datos externos no existan físicamente como tablas tradicionales, el catálogo los abstrae en un formato tabular para facilitar las consultas.
  2. Referir la tabla: una vez montada, puede hacer referencia a la tabla remota especificando el esquema y el catálogo (si corresponde) seguido del nombre de la tabla con la siguiente sintaxis: [remote_schema].table@catalog.

Aquí schema en este identificador es el esquema remoto que contiene la tabla remota. Table, en este caso, es el nombre de la tabla en el catálogo remoto.

Nota

El usuario debe tener las credenciales adecuadas para acceder a la tabla y el catálogo específicos.

Puntos clave que hay que considerar

  • La función se diseña mediante el paquete DBMS_CATALOG instalado en un entorno ADB-S.
  • Las operaciones DDL (por ejemplo, CREATE, ALTER, DROP) no están permitidas en bases de datos remotas mediante catálogos. Si lo hace, puede que aparezca el error "ORA-02021: DDL operations are not allowed on a remote database" .
  • Restricción del mismo nombre: esta función obliga a que para un usuario determinado no pueda existir un enlace de base de datos y un catálogo con el mismo nombre.

Utilizará el editor de hojas de trabajo de SQL de Database Actions para ejecutar consultas SQL. Primero debe conectarse a la instancia de Database Actions y seleccionar SQL en el menú Desarrollo.

Requisitos:

Necesitará una cuenta de OCI.

¿En qué se diferencia DBlinks de los catálogos?

DBLinks: se utilizan principalmente para conectar y consultar otra base de datos directamente mediante una sintaxis.

Por ejemplo:
SELECT * FROM <schema_name>.<table_name>@<dblink_name>;

Cuando un catálogo se monta en otra base de datos mediante DBLink, no es necesario definir los metadatos por separado en el catálogo porque la sintaxis DBLink accede directamente a los objetos de base de datos remota. Básicamente, DBLink actúa como una conexión transparente a la base de datos remota, lo que permite que las consultas se ejecuten como si los datos fueran locales.

Catálogos: sirven como una capa de metadatos que se puede montar en diferentes tipos de almacenes de datos, no solo bases de datos conectadas a través de DBLinks, sino también catálogos de datos externos o recursos compartidos de datos como proveedores de Delta Share o Live Share. Cuando un catálogo se monta en un almacén que no es de base de datos, la sintaxis @catalog adapta las consultas para generar tablas externas en línea, lo que permite el acceso a datos externos sin necesidad de DBLink. Esto significa que los catálogos abstraen la gestión de metadatos y proporcionan una interfaz unificada para consultar diversos orígenes de datos, incluidos los externos.