Características de AWS Glue

¿Por qué utilizar Glue?

AWS Glue es un servicio de integración de datos escalable y sin servidor que facilita la detección, preparación, movimiento e integración de datos de varios orígenes para el análisis, machine learning y desarrollo de aplicaciones. AWS Glue proporciona todas las capacidades que se necesitan para la integración de datos, de modo que puede obtener información y usarlos en minutos en lugar de meses. Con AWS Glue no hay ninguna infraestructura que configurar ni administrar. Solo paga por los recursos utilizados mientras se ejecutan sus trabajos.

Discover

El catálogo de datos de AWS Glue es su almacén de metadatos persistente para todos sus activos de datos, independientemente de dónde se encuentren. El catálogo de datos contiene definiciones de tablas, definiciones de trabajos, esquemas y otra información de control para ayudarlo a administrar su entorno de AWS Glue. Procesa las estadísticas y registra las particiones automáticamente para realizar consultas en sus datos de manera eficaz y rentable. También mantiene un historial de versiones de esquemas exhaustivo para que pueda entender cómo han cambiado sus datos con el tiempo.

Los rastreadores de AWS Glue se conectan con su almacén de datos de origen o de destino, avanzan a lo largo de una lista priorizada de clasificadores para determinar los esquemas para sus datos y crean metadatos en su catálogo de datos de AWS Glue. Los metadatos se almacenan en tablas en su catálogo de datos y se utilizan en el proceso de autoría de sus trabajos de extracción, transformación y carga (ETL). Puede ejecutar rastreadores de acuerdo con un programa, bajo demanda o activarlos en función de un evento para garantizar que los metadatos estén actualizados.

El registro de esquemas de AWS Glue es una característica sin servidor de AWS Glue que ayuda a validar y controlar la evolución de los datos de transmisión con esquemas registrados de Apache Avro sin costo adicional. Con los serializadores y deserializadores con licencia de Apache, el registro de esquemas de AWS Glue se integra en aplicaciones de Java desarrolladas para Apache Kafka, Amazon Managed Streaming para Apache Kafka (Amazon MSK)Amazon Kinesis Data Streams, Apache Flink, Amazon Kinesis Data Analytics para Apache Flink y AWS Lambda. Cuando las aplicaciones de secuencias de datos se integran con el registro de esquemas de AWS Glue, puede mejorar la calidad de los datos y protegerse contra cambios inesperados mediante comprobaciones de compatibilidad que controlan la evolución del esquema. Además, puede crear o actualizar las tablas y particiones de AWS Glue mediante esquemas almacenados en el registro.

El escalamiento automático, una característica sin servidor de AWS Glue, escala y reduce verticalmente los recursos de manera automática en función de la carga de trabajo. Con el escalamiento automático, se asignan empleados a un trabajo únicamente cuando es necesario. A medida que el trabajo progresa y atraviesa transformaciones avanzadas, AWS Glue agrega y quita recursos según cuánto pueda dividir la carga de trabajo. Ya no es necesario preocuparse por el exceso de aprovisionamiento de recursos, pasar tiempo optimizando el número de empleados ni pagar por recursos inactivos.

Preparación

AWS Glue ayuda a limpiar y preparar los datos para su análisis sin que tenga que convertirse en una persona experta en machine learning. La característica FindMatches deduplica y encuentra registros que no coinciden entre sí. Puede utilizar FindMatches para encontrar registros duplicados en su base de datos de restaurantes; por ejemplo, cuando un registro dice “Joe's Pizza” en “121 Main St.” y otro muestra “Joseph's Pizzeria” en “121 Main”. FindMatches le pedirá que etiquete un conjunto de registros como “coincidente” o “no coincidente”. Luego, el sistema aprenderá su criterio para determinar la coincidencia de dos registros y creará un trabajo de ETL que se puede utilizar para encontrar los registros duplicados dentro de una base de datos o los registros coincidentes entre dos bases de datos.

Si elige desarrollar su código ETL interactivamente, AWS Glue proporciona puntos de conexión de desarrollo para que edite y pruebe el código que genera y elimine errores. Puede utilizar su entorno de desarrollo integrado (IDE) o cuaderno favorito. Puede escribir lecturas, escrituras o transformaciones personalizadas e importarlas en sus trabajos de ETL de AWS Glue como bibliotecas personalizadas. También puede usar y compartir código con otros desarrolladores en nuestro repositorio GitHub.

AWS Glue DataBrew ofrece una interfaz visual interactiva y sencilla para que usuarios como analistas y científicos de datos realicen la limpieza y la normalización de datos sin escribir código. Puede visualizar, limpiar y normalizar fácilmente los datos directamente desde su lago de datos, almacenamientos de datos y bases de datos, incluidos Amazon Simple Storage Service (Amazon S3), Amazon Redshift, Amazon Aurora y Amazon Relational Database Service (Amazon RDS). Puede elegir entre más de 250 transformaciones integradas para combinar, agrupar e intercambiar los datos, así como automatizar las tareas de preparación de datos mediante la aplicación de las transformaciones guardadas directamente en los nuevos datos entrantes.

AWS Glue Sensitive Data Detection le ayuda a definir, identificar y procesar información confidencial en una canalización de datos y lago de datos. Una vez identificada la información confidencial, para corregirla, puede ocultar, sustituir o denunciar los datos de información de identificación personal (PII) u otros tipos de datos que se consideren confidenciales. AWS Glue Sensitive Data Detection simplifica la identificación y enmascaramiento de información confidencial, incluida la información de identificación personal (PII, por sus siglas en inglés), como el nombre, el número de seguridad social, la dirección,el correo electrónico y el carné de conducir.

A los desarrolladores les gusta Python por su facilidad de uso y su amplia colección de bibliotecas de procesamiento de datos incorporadas. Quieren usar un tipo primitivo de Python que les es familiar para procesar grandes conjuntos de datos. AWS Glue para Ray ayuda a los ingenieros de datos a procesar grandes conjuntos de datos mediante Python y sus bibliotecas populares. AWS Glue para Ray utiliza Ray.io, un marco de computación unificado de código abierto que permite escalar las cargas de trabajo de Python desde un solo nodo hasta cientos de ellos. AWS Glue para Ray es un servicio sin servidor, por lo que no hay que administrar infraestructura.

AWS Glue ayuda a crear transformaciones visuales personalizadas para que pueda definir, volver a usar o compartir la lógica ETL. Con las transformaciones visuales personalizadas de AWS Glue, los ingenieros de datos pueden escribir y compartir una lógica de Apache Spark que sea específicamente empresarial, reducir la dependencia en los desarrolladores de Spark y simplificar la actualización de los trabajos de ETL. Estas transformaciones están disponibles para todos los trabajos de la cuenta de AWS, ya sean visuales o basados en código.

Integración

AWS Glue Interactive Sessions, una característica sin servidor para el desarrollo de trabajos, simplifica el desarrollo de trabajos de integración de datos. Con AWS Glue Interactive Sessions, los ingenieros de datos pueden explorar y preparar los datos de forma interactiva. Los ingenieros también pueden explorar y procesar datos, así como experimentar con ellos, de manera interactiva mediante el IDE o cuaderno de su elección.

AWS Glue Studio Job Notebooks ofrece cuadernos sin servidor con una configuración mínima en AWS Glue Studio para que los desarrolladores puedan comenzar rápidamente. Con AWS Glue Studio Job Notebooks, tiene acceso a una interfaz integrada para las sesiones interactivas de AWS Glue, donde puede guardar y programar el código del cuaderno como trabajos de AWS Glue.

Los trabajos de AWS Glue pueden invocarse de acuerdo con un programa, bajo demanda o en función de un evento. Puede comenzar varios trabajos simultáneamente o especificar dependencias entre trabajos para crear canalizaciones ETL complejas. AWS Glue se ocupará de todas las dependencias entre trabajos, filtrará los datos con errores y volverá a intentar procesar los trabajos si se produce un error. Todos los registros y las notificaciones se envían a Amazon CloudWatch, de modo que pueda monitorearlos y recibir alertas desde un servicio central.

AWS Glue se integra con Git, el tan usado sistema de control de versiones de código abierto. Puede utilizar GitHub y AWS CodeCommit para mantener un historial de cambios de sus trabajos de AWS Glue y aplicar prácticas de DevOps existentes para desplegarlos. La integración con Git en AWS Glue funciona para todos los tipos de trabajo de AWS Glue, ya sean visuales o basados en código. Incluye la integración en GitHub y CodeCommit, además de que simplifica el uso de herramientas de automatización, como Jenkins y AWS CodeDeploy para desplegar trabajos de AWS Glue.

AWS Glue Flex es una clase de trabajo de ejecución flexible que le permite reducir el costo de sus cargas de trabajo de integración de datos no urgentes (por ejemplo, trabajos de preproducción, pruebas y cargas de datos) hasta un 35 %. AWS Glue tiene dos clases de ejecución de trabajos: estándar y flexible. La clase de ejecución estándar es ideal para cargas de trabajo sensibles al tiempo que requieren un inicio rápido del trabajo y recursos dedicados. AWS Glue Flex es adecuada para trabajos que no sean urgentes y cuyos tiempos de inicio y finalización pueden variar.

AWS Glue admite de forma nativa tres marcos de código abierto, como Apache Hudi, Apache Iceberg y Linux Foundation Delta Lake. Estos marcos ayudan a administrar los datos de manera coherente desde un punto de vista transaccional para usarlos en el lago de datos basado en Amazon S3.

La característica Calidad de datos de AWS Glue permite mejorar la calidad de los datos y su confianza. De forma automática, mide, monitorea y administra la calidad de los datos en sus canalizaciones y lagos de datos. Además, automáticamente procesa estadísticas, sugiere reglas de calidad, monitorea y emite alertas cuando la calidad disminuye, lo que facilita el hallazgo de los datos faltantes, obsoletos o incorrectos antes de que afecten su negocio.

Transformación

AWS Glue Studio le permite crear trabajos de ETL altamente escalables para el procesamiento distribuido sin convertirse en un experto en Apache Spark. Defina su proceso de ETL en el editor de trabajos que permite arrastrar y soltar, y AWS Glue generará automáticamente el código para extraer, transformar y cargar sus datos. El código se genera en Scala o Python y se escribe para Apache Spark.

Los trabajos de streaming de procesos ETL sin servidor de AWS Glue consumen datos constantemente de los orígenes de datos de streaming, incluidos Amazon Kinesis y Amazon MSK, los limpian, los transforman en datos en tránsito y los ponen a disposición para su análisis en segundos en su almacén de datos de destino. Utilice esta característica para procesar datos de eventos como transmisiones de eventos de IoT, secuencias de clics y registros de redes. Los trabajos de ETL de streaming de AWS Glue pueden enriquecer y agregar datos, unir orígenes por lotes y streaming, además de poner en marcha una variedad de operaciones complejas de análisis y machine learning.