P: ¿Qué es AWS Glue?

AWS Glue es un servicio de extracción, transformación y carga (ETL) totalmente administrado y de pago por uso que automatiza la ardua tarea de la preparación de datos para el análisis. AWS Glue descubre y clasifica los datos automáticamente mediante el catálogo de datos de AWS, recomienda y genera código ETL para transformar sus datos de origen en esquemas de destino y ejecuta los trabajos ETL en un entorno Apache Spark escalable y totalmente administrado para cargar los datos en su destino. También le permite configurar, organizar y monitorizar flujos de datos complejos.

P: ¿Cómo puedo comenzar a utilizar AWS Glue?

Para empezar a usar Amazon Glue, simplemente inicie sesión en la consola de administración de AWS y vaya a "Glue" dentro de la categoría "Análisis". Puede realizar uno de nuestros tutoriales guiados, que le mostrará paso a paso un caso de uso de AWS Glue de ejemplo. También puede encontrar el código ETL de muestra en nuestro repositorio GitHub en AWS Labs.

P: ¿Cuáles son los componentes principales de AWS Glue?

AWS Glue se compone de un catálogo de datos que es un repositorio de metadatos central, un motor ETL que puede generar automáticamente código Python y un programador flexible que administra la resolución de dependencias, la monitorización de trabajos y los intentos adicionales. En combinación, estos elementos automatizan la mayoría de las arduas tareas que conlleva el descubrimiento, la categorización, la limpieza, el enriquecimiento y el traslado de datos, de modo que puede dedicar más tiempo a analizar sus datos.

P: ¿Cuándo debería usar AWS Glue?

Debería utilizar AWS Glue para descubrir las propiedades de los datos que posee, transformarlos y prepararlos para su análisis. Glue puede descubrir automáticamente datos estructurados y semiestructurados almacenados en su conjunto de datos de Amazon S3, almacén de datos en Amazon Redshift y diversas bases de datos ejecutadas en AWS. Proporciona una vista unificada de los datos mediante el catálogo de datos de Glue disponible para ETL, consultas e informes con servicios con Amazon Athena, Amazon EMR y Amazon Redshift Spectrum. Glue genera automáticamente código Python para sus trabajos ETL que puede personalizar todavía más utilizando las herramientas con las que ya está familiarizado. AWS Glue es un servicio sin servidor, por lo que no es necesario procesar recursos para configurar y administrar.

P: ¿Con qué fuentes de datos es compatible AWS Glue?

AWS Glue admite de forma nativa los datos almacenados en Amazon Aurora, Amazon RDS for MySQL, Amazon RDS for Oracle, Amazon RDS for PostgreSQL, Amazon RDS for SQL Server, Amazon Redshift y Amazon S3, así como también en bases de datos de MySQL, Oracle, Microsoft SQL Server y PostgreSQL incluidas en su nube virtual privada (Amazon VPC) en ejecución en Amazon EC2. Puede acceder a los metadatos almacenados en el catálogo de datos de AWS desde Amazon Athena, Amazon EMR y Amazon Redshift Spectrum. También puede escribir código PySpark personalizado e importar bibliotecas personalizadas en sus trabajos ETL de Glue para acceder a fuentes de datos no admitidas de manera nativa en AWS Glue. Para obtener más información sobre la importación de bibliotecas personalizadas, consulte nuestra documentación.

Volver arriba »


P: ¿Qué es el catálogo de datos de AWS Glue?

El catálogo de datos de AWS Glue es un repositorio central que almacena metadatos estructurales y operativos para sus activos de datos. Para un conjunto de datos determinado, puede almacenar la definición de la tabla y la ubicación física, agregar atributos relevantes para la empresa y realizar un seguimiento de cómo los datos han cambiado con el tiempo.

El catálogo de datos de AWS Glue es compatible con el metaalmacén de Apache Hive y un sustituto de transferencia rápida del metaalmacén de Apache Hive para aplicaciones de big data ejecutadas en Amazon EMR. Para obtener más información sobre cómo configurar su clúster de EMR para que use el catálogo de datos de AWS como metaalmacén de Apache Hive, haga clic aquí.

El catálogo de datos de AWS Glue también se integra de serie con Amazon Athena, Amazon EMR y Amazon Redshift Spectrum. Una vez que agrega las definiciones de tablas al catálogo de datos de Glue, están disponibles para ETL y también para consultas en Amazon Athena, Amazon EMR y Amazon Redshift Spectrum, de modo que dispondrá de una vista común de los datos entre estos servicios.

P: ¿Cómo puedo incluir mis metadatos en el catálogo de datos de AWS Glue?

AWS Glue proporciona varias maneras de enviar metadatos al catálogo de datos de AWS Glue. Los rastreadores de Glue escanean varios almacenes de datos que posee para deducir automáticamente esquemas y la estructura de particiones y rellenar el catálogo de datos de Glue con las estadísticas y definiciones de tablas correspondientes. Puede programar rastreadores para que se ejecuten de manera periódica, de modo que los metadatos siempre estén actualizados y sincronizados con los datos subyacentes. De manera alternativa, puede agregar y actualizar los datos de la tabla manualmente a través de la consola de AWS Glue o realizando una llamada a la API. También puede ejecutar enunciados DDL de Hive mediante la consola de Amazon Athena o un cliente Hive de un clúster de Amazon EMR. Por último, si ya tiene un metaalmacén de Apache Hive persistente, puede realizar una importación masiva de los metadatos al catálogo de datos de AWS Glue usando nuestro script de importación.

P: ¿Qué son los rastreadores de AWS Glue?

Un rastreador de AWS Glue se conecta con un almacén de datos, avanza a través de una lista priorizada de clasificadores para extraer el esquema de sus datos y otras estadísticas, y llena el catálogo de datos de Glue con estos metadatos. Los rastreadores pueden ejecutarse de manera periódica para detectar la disponibilidad de nuevos datos, así como cambios en los datos existentes, incluidos cambios en la definición de una tabla. Los rastreadores añaden nuevas tablas, nuevas particiones a tablas existentes y nuevas versiones de las definiciones de tablas de manera automática. Puede personalizar los rastreadores de Glue para que clasifiquen sus propios tipos de archivos.

P: ¿Cómo puedo importar datos de mi metaalmacén de Apache Hive al catálogo de datos de AWS Glue?

Simplemente tiene que ejecutar un trabajo ETL que lea de su metaalmacén de Apache Hive, exporte los datos en un formato intermedio en Amazon S3 y, a continuación, importe los datos en el catálogo de datos de AWS Glue.

P: ¿Tengo que mantener el metaalmacén de Apache Hive si almaceno los metadatos en el catálogo de datos de AWS Glue?

No. El catálogo de datos de AWS Glue es compatible con el metaalmacén de Apache Hive. Puede apuntar al punto de enlace del catálogo de datos de Glue y usarlo como sustituto del metaalmacén de Apache Hive. Para obtener más información sobre cómo configurar su clúster para que use el catálogo de datos de AWS Glue como metaalmacén de Apache Hive, consulte nuestra documentación aquí.

P: Si ya utilizo Amazon Athena o Amazon Redshift Spectrum y tengo datos en el catálogo de datos interno de Amazon Athena, ¿cómo puedo comenzar a usar el catálogo de datos de AWS Glue como repositorio de metadatos común?

Antes de que pueda comenzar a usar el catálogo de datos de AWS Glue como repositorio de datos común entre Amazon Athena, Amazon Redshift Spectrum y AWS Glue, debe actualizar el catálogo de datos de Amazon Athena al catálogo de datos de AWS Glue. Aquí encontrará los pasos detallados necesarios para la actualización.

Volver arriba »


P: ¿Cómo puedo personalizar el código ETL generado por AWS Glue?

El sistema de recomendación de scripts ETL de AWS Glue genera código PySpark. Utiliza la biblioteca ETL personalizada de Glue para simplificar el acceso a fuentes de datos, así como administrar la ejecución de trabajos. Puede encontrar más información sobre la biblioteca en nuestra documentación. Puede escribir código ETL con la biblioteca personalizada de AWS Glue o escribir código Spark arbitrario en Python (código PySpark) con la edición entre líneas del editor de scripts de la consola de AWS Glue, descargando el código autogenerado y editándolo en su propio IDE. También puede comenzar con una de las numerosas muestras que encontrará en nuestro repositorio de GitHub y personalizar el código.

P: ¿Puedo importar bibliotecas personalizadas como parte de mi script ETL?

Sí. Puede importar bibliotecas PySpark personalizadas en su trabajo ETL de AWS Glue. Para obtener más detalles, consulte nuestra documentación aquí.

P: ¿Puedo utilizar mi propio código?

Sí. Puede escribir su propio código usando la biblioteca ETL de AWS Glue o escribir su propio código PySpark y cargarlo en un trabajo ETL de Glue. Para obtener más detalles, consulte nuestra documentación aquí.

P: ¿Cómo puedo desarrollar mi código ETL con mi propio IDE?

Puede crearlo y conectar con puntos de enlace de desarrollo que ofrecen maneras de conectar sus notebooks e IDE.

P: ¿Cómo puedo crear una carga de trabajo ETL de punto a punto con varios trabajos en AWS Glue?

Además de la biblioteca ETL y la generación de código, AWS Glue proporciona un conjunto sólido de características de organización que le permiten administrar las dependencias entre varios trabajos para crear flujos de trabajo ETL de punto a punto. Los trabajos ETL de AWS Glue se pueden activar de acuerdo con un programa o cuando se produzca un evento de finalización del trabajo. Pueden activarse varios trabajos de manera simultánea o secuencial activándolos en un evento de finalización del trabajo. También puede activar uno o más trabajos de Glue desde una fuente externa, como una función de AWS Lambda.

P: ¿Cómo monitoriza AWS Glue las dependencias?

AWS Glue monitoriza dependencias entre dos o más trabajos o dependencias en eventos externos mediante activadores. Los activadores pueden observar o invocar uno o más trabajos. Puede disponer de un activador programado que invoque los trabajos de manera periódica, un activador bajo demanda o un activador de finalización de trabajo.

P: ¿Cómo se ocupa de los errores AWS Glue?

AWS Glue monitoriza las métricas y los errores en los eventos de trabajo y envía todas las notificaciones a Amazon CloudWatch. Con Amazon CloudWatch, puede configurar una variedad de acciones que pueden activarse en función de determinadas notificaciones de AWS Glue. Por ejemplo, si aparece una notificación de error o de éxito de Glue, puede activar una función de AWS Lambda. Glue también ofrece un comportamiento de intentos adicionales por defecto que volverá a intentar realizar cualquier operación fallida tres veces antes de enviar una notificación de error.

P: ¿Puedo ejecutar mis trabajos ETL existentes con AWS Glue?

Sí. Puede ejecutar su código PySpark existente en AWS Glue. Simplemente cargue el código en Amazon S3 y cree uno o más trabajos que usen dicho código. Puede volver a utilizar el mismo código en varios trabajos apuntándolos a la misma ubicación del código en Amazon S3.

P: ¿Cómo puedo usar AWS Glue para la ETL de datos de streaming?

La ETL de AWS Glue está orientado por lotes, y puede programar sus trabajos ETL con intervalos de 5 minutos como mínimo. Aunque puede procesar microlotes, no admite datos de streaming. Si su caso de uso requiere la ETL de datos mientras los transmite, pude realizar la primera fase de la ETL con Amazon Kinesis, Amazon Kinesis Firehose o Amazon Kinesis Analytics y, a continuación, almacenar los datos en Amazon S3 o Amazon Redshift y activar un trabajo ETL de Glue para recoger el conjunto de datos y continuar aplicando transformaciones adicionales a los datos.

P: ¿Tengo que usar el catálogo de datos de AWS Glue y la ETL de Glue para poder utilizar el servicio?

No. Mientras que creemos que usar el catálogo de datos y la ETL de AWS Glue proporciona una experiencia ETL completa, puede usar uno de los dos independientemente, sin usar el otro.

Volver arriba »


P: ¿Cuándo debería usar AWS Glue en lugar de AWS Data Pipeline?

AWS Glue proporciona un servicio ETL administrado que se ejecuta en un entorno Apache Spark sin servidor. Eso le permite concentrarse en su trabajo ETL y no preocuparse de configurar y administrar los recursos informáticos subyacentes. AWS Glue sigue un enfoque centrado en los datos y le permite concentrarse en las propiedades de los datos y la manipulación de los mismos para transformarlos en un formato del que pueda extraer información empresarial. Proporciona un catálogo de datos integrado que hace que los metadatos se encuentren disponibles para la ETL, así como consultas a través de Amazon Athena y Amazon Redshift Spectrum.

AWS Data Pipeline proporciona un servicio de organización administrado que le aporta mayor flexibilidad en cuanto al entorno de ejecución, el acceso y el control de los recursos informáticos que ejecutan su código, así como el mismo código que se encarga del procesamiento de datos. AWS Data Pipeline implementa recursos informáticos en su cuenta, lo que le brinda acceso directo a las instancias de Amazon EC2 o clústeres de Amazon EMR.

Además, los trabajos ETL de AWS Glue están basados en PySpark. Si su caso de uso requiere que utilice un motor que no sea Apache Spark o si desea ejecutar un conjunto heterogéneo de trabajos en diversos motores, como Hive, Pig, etc., AWS Data Pipeline sería una mejor elección.

P: ¿Cuándo debería utilizar AWS Glue en lugar de Amazon EMR?

AWS Glue funciona sobre el entornoApache Spark para proporcionar un entorno de ejecución escalable para sus trabajos de transformación de datos. AWS Glue deduce, evoluciones y monitoriza sus trabajos ETL para simplificar enormemente el proceso de creación y mantenimiento de trabajos. Amazon EMR le proporciona acceso directo a su entorno Hadoop, lo que le brinda acceso de nivel inferior y mayor flexibilidad en el uso de herramientas más allá de Spark.

P: ¿Cuándo debería utilizar AWS Glue en lugar de AWS Database Migration Service?

AWS Database Migration Service (DMS) ayuda a migrar las bases de datos a AWS de manera fácil y segura. Para casos de uso que requieren una migración de bases de datos de un sistema on-premise a AWS o la replicación de bases de datos entre orígenes on-premise y orígenes en AWS, recomendamos que utilice AWS DMS. Una vez que sus datos estén en AWS, puede utilizar AWS Glue para trasladar y transformar datos de su origen de datos a otra base o almacén de datos, como Amazon Redshift.

P: ¿Cuándo debería utilizar AWS Glue en lugar de AWS Batch?

AWS Batch le permite ejecutar de manera sencilla y eficaz cualquier trabajo de informática por lotes en AWS independientemente de la naturaleza del trabajo. AWS Batch crea y administra los recursos informáticos en su cuenta de AWS, aportándole control y visibilidad absolutos de los recursos utilizados. AWS Glue es un servicio ETL totalmente administrado que le proporciona un entorno Apache Spark en el que ejecutar sus trabajos ETL. Para sus casos de uso ETL, le recomendamos que considere utilizar AWS Glue. Para casos de uso orientados a lotes de otro tipo, incluidos algunos casos de uso ETL, AWS Batch podría ser una opción mejor.

P: ¿Cuándo debería utilizar AWS Glue en lugar de Amazon Kinesis Analytics?

Amazon Kinesis Analytics le permite ejecutar consultas SQL estándar en su transmisión de datos de entrada. Puede especificar un destino como Amazon S3 para escribir los resultados. Una vez que los datos están disponibles en su origen de datos objetivo, puede iniciar un trabajo ETL de AWS Glue para que transforme sus datos todavía más y los prepare para realizar análisis e informes adicionales.

Volver arriba »


P: ¿Cómo se me cobra por AWS Glue?

Pagará una sencilla cuota mensual por encima de la capa gratuita de AWS Glue por el almacenamiento de los metadatos en el catálogo de datos de AWS Glue y el acceso a ellos. Además, pagará una tarifa por hora, facturada por segundo, por la ejecución de trabajos de ETL y rastreadores, con un mínimo de 10 minutos por cada uno. Si elige usar un punto de conexión de desarrollo para desarrollar de manera interactiva su código de ETL, pagará una tarifa por hora, facturada por segundo, por el tiempo que aprovisione su punto de conexión de desarrollo, con un mínimo de 10 minutos. Para obtener más información, consulte nuestra página de precios.

P: ¿Cuándo comienza y finaliza la facturación de mis trabajos de AWS Glue?

La facturación comienza en cuanto el trabajo se programe para su ejecución y continúa hasta que el trabajo completo finalice. Con AWS Glue, solo paga por el tiempo durante el que se ejecuta su trabajo y no por el tiempo de aprovisionamiento o eliminación del entorno.

Volver arriba »


P: ¿Cómo protege los datos AWS Glue?

Proporcionamos cifrado del lado del servidor para datos en reposo y SSL para los datos en movimiento.

P: ¿Cuáles son los límites del servicio asociados con AWS Glue?

Para obtener más información sobre los límites del servicio, consulte nuestra documentación.

P: ¿En qué regiones se encuentra disponible AWS Glue?

Actualmente, AWS Glue se encuentra disponible en las regiones EE.UU. Este (Norte de Virginia), EE.UU. Este (Ohio) y EE.UU. Oeste (Oregón), y se ampliará a nuevas regiones en los próximos meses. Para obtener más información, consulte nuestra página de precios.

P: ¿Cuántas DPU (unidades de procesamiento de datos) se asignan al punto de enlace de desarrollo?

Un punto de enlace de desarrollo se aprovisiona con 5 DPU por defecto. Puede configurar un punto de enlace de desarrollo con un mínimo de 2 DPU y un máximo de 5 DPU.

P: ¿Cómo puedo escalar el tamaño y el desempeño de mis trabajos ETL de AWS Glue?

Simplemente puede especificar la cantidad de DPU (unidades de procesamiento de datos) que desea asignar a su trabajo ETL. Un trabajo ETL de Glue requiere un mínimo de 2 DPU. Por defecto, AWS Glue asigna 10 DPU a cada trabajo ETL.

P: ¿Cómo puedo monitorizar la ejecución de mis trabajos de AWS Glue?

AWS Glue proporciona el estado de cada trabajo y envía todas las notificaciones a los eventos de Amazon CloudWatch. Puede configurar notificaciones SNS a través de acciones CloudWatch para que se le informe cuando un trabajo se complete o falle.

Volver arriba »