Consulta de datos externos con AWS Glue Data Catalog
Autonomous Database soporta un sistema para la sincronización con una instancia de Amazon AWS Glue Data Catalog.
- Acerca de la consulta con AWS Glue Data Catalog
Autonomous Database permite sincronizar con los metadatos de Amazon Web Service (AWS) Glue Data Catalog. Autonomous Database crea automáticamente una tabla externa de base de datos para cada tabla recogida por AWS Glue sobre los datos almacenados en el servicio de almacenamiento simple de Amazon (S3). Los usuarios pueden consultar datos almacenados en S3 desde Autonomous Database sin tener que derivar manualmente el esquema para los orígenes de datos externos y crear tablas externas. - Conceptos relacionados con las consultas con AWS Glue Data Catalog
Es necesario comprender los siguientes conceptos para realizar consultas con los catálogos de datos de Amazon Web Service (AWS) Glue. - Asignación entre Autonomous Database y AWS Glue
Durante el proceso de sincronización, se crean tablas externas en Autonomous Database derivadas de las bases de datos y tablas de Data Catalog de AWS Glue a través de Amazon S3. - Flujo de trabajo de usuario para realizar consultas con AWS Glue Data Catalog
El flujo de trabajo de usuario básico para consultar datos de AWS S3 con AWS Glue Data Catalog implica conectarse a AWS Glue Data Catalog, sincronizar con Autonomous Database para crear automáticamente tablas externas y, a continuación, consultar los datos de S3. - Ejemplo: consulta con AWS Glue Data Catalog
Este ejemplo le guía por el proceso de ejecución de consultas sobre conjuntos de datos almacenados en Amazon Simple Storage Service (Amazon S3) mediante un AWS Glue Data Catalog.
Tema principal: Consulta de datos externos con Autonomous Database
Acerca de las consultas con AWS Glue Data Catalog
Autonomous Database permite sincronizar con los metadatos de Amazon Web Service (AWS) Glue Data Catalog. Autonomous Database crea automáticamente una tabla externa de base de datos para cada tabla recogida por AWS Glue sobre los datos almacenados en el servicio de almacenamiento simple de Amazon (S3). Los usuarios pueden consultar datos almacenados en S3 desde Autonomous Database sin tener que derivar manualmente el esquema para los orígenes de datos externos y crear tablas externas.
Amazon AWS Glue Data Catalog es un servicio de gestión de metadatos centralizado que ayuda a los profesionales de datos a descubrir datos y admite la gobernanza de datos en la nube de AWS. Una instancia de Autonomous Database tiene la capacidad de sincronizar automáticamente los metadatos del catálogo de datos con AWS Glue Data Catalog, lo que permite a los usuarios de la base de datos utilizar inmediatamente Autonomous Database para consultar los datos almacenados en la nube de AWS.
La sincronización con AWS Glue Data Catalog tiene las mismas propiedades que la sincronización con OCI Data Catalog. La sincronización es dinámica y mantiene la actualización de la base de datos con respecto a los cambios en los datos subyacentes, lo que reduce el costo de administración, ya que mantiene automáticamente cientos a miles de tablas.
Tema principal: Consulta de datos externos con AWS Glue Data Catalog
Conceptos relacionados con las consultas con AWS Glue Data Catalog
Es necesario comprender los siguientes conceptos para realizar consultas con los catálogos de datos de Amazon Web Service (AWS) Glue.
- AWS Glue Data Catalog: base de datos
-
Una base de datos de AWS Glue representa una recopilación de definiciones de tablas relacionales, organizadas en un grupo lógico. Cada instancia de catálogo de datos de AWS Glue gestiona varias bases de datos.
- Catálogo de datos de AWS Glue: tabla
-
Una tabla de AWS Glue representa una tabla relacional sobre los datos almacenados en la nube de AWS. Una tabla de AWS Glue define el esquema de los datos subyacentes y consta de información de columna, información de partición, información de serialización, información de almacenamiento, estadísticas, metadatos definidos por el usuario y otros metadatos. Las tablas del catálogo de datos de AWS Glue se pueden crear manualmente o automáticamente mediante un rastreador de AWS Glue.
- Glue Data Catalog: Crawler
-
Puede utilizar un rastreador para rellenar el catálogo de datos de AWS Glue con tablas. Este es el método principal utilizado por la mayoría de los usuarios de AWS Glue. Un rastreador puede explorar varios almacenes de datos en una sola ejecución. Una vez terminado, Crawler crea o actualiza una o más tablas en el catálogo de datos. Los trabajos de extracción, transformación y carga (ETL) que defina en AWS Glue utilizan estas tablas de catálogo de datos como orígenes y destinos. El trabajo ETL lee y escribe en los almacenes de datos especificados en las tablas de catálogo de datos de origen y destino.
El usuario puede crear tablas de AWS Glue manualmente o automáticamente mediante un rastreador predefinido o personalizado. Los rastreadores se conectan a los almacenes de datos subyacentes (por ejemplo, Amazon S3), llaman a los clasificadores para derivar el esquema de los datos y crean tablas de AWS Glue para almacenar los metadatos inferidos. AWS Glue proporciona clasificadores para tipos de archivo comunes, como CSV, JSON, Parquet y AVRO.
Tema principal: Consulta de datos externos con AWS Glue Data Catalog
Asignación entre Autonomous Database y AWS Glue
Durante el proceso de sincronización, las tablas externas se crean en Autonomous Database derivadas de las bases de datos y tablas de Data Catalog de AWS Glue a través de Amazon S3.
AWS Glue organiza los metadatos recopilados en bases de datos y tablas. Una base de datos de AWS Glue es una recopilación de definiciones de tablas relacionales. Tablas de AWS Glue que describen el esquema común y las propiedades de los archivos asociados a la tabla.
AWS Glue sigue el modelo relacional para representar atributos. Para asignar esquemas jerárquicos a esquemas relacionales, AWS Glue infiere el esquema de los datos semiestructurados y simplifica los datos a un esquema relacional mediante un proceso de ETL.
La siguiente tabla representa la asignación entre los conceptos de OCI Data Catalog y los conceptos de AWS Glue Data Catalog.
Tabla 3-5 Asignación de OCI Data Catalog a AWS Glue Data Catalog
Catálogo de datos de OCI | Catálogo de datos de AWS Glue | Oracle Database |
---|---|---|
Activo de datos | Database | Esquema |
Carpeta | (Grupo) | Esquema |
Entidad lógica | Tabla | Tabla |
Tema principal: Consulta de datos externos con AWS Glue Data Catalog
Flujo de trabajo de usuario para realizar consultas con el catálogo de datos de AWS Glue
El flujo de trabajo de usuario básico para consultar datos de AWS S3 con AWS Glue Data Catalog implica conectarse a AWS Glue Data Catalog, sincronizar con Autonomous Database para crear automáticamente tablas externas y, a continuación, consultar los datos de S3.
El administrador de consultas de Data Catalog de la base de datos o el administrador de la base de datos otorgan acceso READ a las tablas externas generadas para que los analistas de datos y otros usuarios de la base de datos puedan examinar y consultar Autonomous Database sin tener que derivar manualmente el esquema para los orígenes de datos externos y crear tablas externas.
Usuarios
En la siguiente tabla se describen los diferentes tipos de usuarios que realizan las acciones de flujo de trabajo del usuario.
Usuario | Descripción |
---|---|
Administrador de Database Data Catalog | Usuario de base de datos con el rol DCAT_SYNC .
|
Administrador de consultas de Database Data Catalog | Usuario de base de datos capaz de otorgar acceso en tablas externas creadas automáticamente a otros usuarios. |
Analista de datos | Usuario de base de datos en Autonomous Database que consulta datos en AWS S3 mediante la consulta de tablas externas creadas automáticamente o mediante la interacción directa con AWS Glue Data Catalog. |
Usuario de catálogo de datos de AWS Glue |
Usuario de AWS con acceso a un catálogo de datos de AWS Glue. |
Usuario de almacenamiento de objetos AWS S3 |
Usuario de AWS con acceso a los datos almacenados en AWS S3 |
Flujo de Trabajo de Usuario
La siguiente tabla describe cada acción incluida en el flujo de trabajo y qué tipo de usuario puede realizar la acción.
El paquete
DBMS_DCAT
está disponible para realizar las tareas necesarias para consultar el almacenamiento de objetos S3 de AWS mediante AWS Glue Data Catalog. Consulte Paquete DBMS_DCAT.
Acción | Quién es el usuario | Descripción |
---|---|---|
Creación de políticas | Administrador de base de datos de Data Catalog |
La credencial de usuario de Autonomous Database debe tener los permisos adecuados para acceder a Data Catalog de AWS Glue y leer desde S3 Object Storage. Más información: Las credenciales y las políticas de IAM necesarias. |
Crear credenciales | Administrador de base de datos de Data Catalog |
Asegúrese de que las credenciales de base de datos están activas para acceder a Data Catalog de AWS Glue y consultar el almacenamiento de objetos S3. El usuario llama a
DBMS_CLOUD.CREATE_CREDENTIAL para crear credenciales de usuario.
Nota
Solo están soportadas las credenciales de Amazon Web Services (AWS). Las credenciales de nombres de recursos de Amazon (ARN) de AWS no están soportadas. Más información: DBMS_CLOUD CREATE_CREDENTIAL Procedimiento |
Conexión |
Administrador de base de datos de Data Catalog |
Establezca una conexión entre una instancia de Autonomous Database y una instancia de AWS Glue Data Catalog. La conexión utiliza los privilegios del usuario de catálogo de datos de AWS Glue. Las conexiones de una instancia de Autonomous Database a varias instancias de AWS Glue Data Catalog están soportadas. Para iniciar una conexión entre una instancia de Autonomous Database y una instancia de AWS Glue Data Catalog, el usuario:
Una vez realizada la conexión, Autonomous Database almacena los metadatos asociados, como el ID de catálogo de AWS Glue, la región, el punto final y los objetos de credenciales. More information: SET_DATA_CATALOG_CONN Procedure, UNSET_DATA_CATALOG_CONN Procedure, SET_DATA_CATALOG_CREDENTIAL Procedure, SET_OBJECT_STORE_CREDENTIAL Procedure. |
Sincronizar |
Administrador de base de datos de Data Catalog |
El usuario puede iniciar manualmente una sincronización con los catálogos de datos de AWS Glue conectados mediante La sincronización realiza lo siguiente:
More information: See RUN_SYNC Procedure, CREATE_SYNC_JOB Procedure, DROP_SYNC_JOB Procedure, Synchronization Mapping
|
Controlar sincronización |
Administrador de base de datos de Data Catalog |
El usuario puede ver el estado de sincronización consultando la vista USER_LOAD_OPERATIONS . Una vez completado el proceso de sincronización, el usuario puede ver un log de los resultados de la sincronización, incluidos los detalles sobre las asignaciones a tablas externas.
Más información: Supervisión y solución de problemas de cargas |
Otorgar Privilegios |
Administrador de consultas de Data Catalog de base de datos, administrador de base de datos |
El administrador de consultas o el administrador de la base de datos de Data Catalog deben otorgar privilegios de lectura en las tablas externas generadas a los usuarios del analista de datos. Esto permite a los analistas de datos consultar las tablas externas generadas. |
consulta |
Analista de datos |
Los analistas de datos pueden revisar los esquemas y las tablas sincronizados en los esquemas GLUE$* y consultar las tablas externas mediante cualquier herramienta o aplicación que soporte Oracle SQL. Se accede a los datos de S3 mediante los privilegios del usuario de almacenamiento de objetos S3 de AWS. Más información: Ejemplo: consulta con AWS Glue Data Catalog |
Terminar conexiones |
Administrador de base de datos de Data Catalog |
Para eliminar una asociación de Data Catalog existente, el usuario llama al procedimiento Esta acción solo se realiza cuando ya no tenga previsto utilizar el Data Catalog de AWS Glue conectado y las tablas externas que se derivan del catálogo. Con esta acción se suprimen los metadatos de Data Catalog de AWS Glue y se borran las tablas externas sincronizadas de la instancia de Autonomous Database. Más información: UNSET_DATA_CATALOG_CONN Procedimiento |
Tema principal: Consulta de datos externos con AWS Glue Data Catalog
Ejemplo: consulta con AWS Glue Data Catalog
Este ejemplo le guía a través del proceso de ejecución de consultas sobre conjuntos de datos almacenados en Amazon Simple Storage Service (Amazon S3) mediante un catálogo de datos AWS Glue.
En este ejemplo, los metadatos de un catálogo de datos de AWS Glue se inspeccionan para ver qué objetos de Amazon S3 se han explorado previamente y existen en el catálogo de datos. Autonomous Database se asocia a AWS Glue Data Catalog y Amazon S3. El catálogo de datos se sincroniza con Autonomous Database para crear tablas externas a través de los juegos de datos almacenados en Amazon S3. Las tablas externas se utilizan para consultar los juegos de datos en Amazon S3.
- Inspeccionar metadatos en AWS Glue Data Catalog.
- Inicie la consola AWS Glue.
- Navegue al catálogo de datos, las bases de datos y las tablas para buscar objetos existentes.
En este ejemplo, existen algunos objetos en Amazon S3 para los que AWS Glue ha explorado y creado previamente tablas, como se muestra a continuación:
- Inicie la consola AWS Glue.
- Asocie AWS Glue a Autonomous Database.
- Cree credenciales en Autonomous Database.
La siguiente llamada de procedimiento incluye el ID de acceso y la clave secreta para proporcionar a Autonomous Database acceso a los datos subyacentes en Amazon S3.
exec dbms_cloud.create_credential('CRED_AWS','<access id>', '<access key>');
- Asocie las credenciales al catálogo de datos de AWS Glue y al almacenamiento de objetos de Amazon S3.
Estas llamadas de procedimiento asocian el catálogo de datos y el almacenamiento de objetos, respectivamente, a las credenciales.
exec dbms_dcat.set_data_catalog_credential('CRED_AWS'); exec dbms_dcat.set_object_store_credential('CRED_AWS');
- Configure una región de AWS en la que se esté ejecutando Glue.
exec dbms_dcat.set_data_catalog_conn(region => 'us-west-2', catalog_type=>'AWS_GLUE');
- Cree credenciales en Autonomous Database.
- Sincronice los metadatos para crear tablas externas en Autonomous Database derivadas de bases de datos y tablas de AWS Glue.
- Una vez realizada la asociación, utilice la vista
all_glue_databases
para buscar qué bases de datos están dentro de un catálogo de datos de AWS Glue.select * from all_glue_databases order by name;
- Utilice la vista
all_glue_tables
para obtener una lista de tablas disponibles para la sincronización.select * from all_glue_tables order by database_name, name;
- Sincronice Autonomous Database con dos tablas,
store
yitem
, que se encuentran en la base de datosparq
.begin dbms_dcat.run_sync( synced_objects => ' { "database_list": [ { "database": "parq", "table_list": ["store","item"] } ] }', error_semantics => 'STOP_ON_ERROR'); end; /
- Una vez realizada la asociación, utilice la vista
- Inspeccione los nuevos objetos en Autonomous Database y ejecute una consulta sobre S3.
- Utilice SQL Developer para ver los nuevos objetos creados por la operación de sincronización anterior.
El esquema
GLUE$PARQ_TPCDS_ORACLE_PARQ
se ha generado y nombrado automáticamente mediante la llamada al procedimientodbms_dcat.run_sync
.
- Ejecute una consulta SQL en los almacenes de datos de Amazon S3.
SELECT * FROM glue$parq_tpcds_oracle_parq.store;
- Utilice SQL Developer para ver los nuevos objetos creados por la operación de sincronización anterior.
Tema principal: Consulta de datos externos con AWS Glue Data Catalog