No necesitas gestionar manualmente un clúster de Spark para ejecutar tus trabajos de ETL. En esta entrada aprenderás qué es AWS Glue y qué ventajas te puede aportar este servicio en la nube.
Contenidos
¿Qué es AWS Glue?
Glue es un servicio de AWS (Amazon Web Services) orientado a implementar procesos de ETL (Extracción, Transformación y Carga). Estos procesos facilitan la preparación de datos para los procesos de analítica posteriores.
Glue se encarga de configurar, aprovisionar y manejar los recursos necesarios para ejecutar los trabajos ETL con un entorno de Apache Spark escalable.
AWS Glue también puede proponer transformaciones en función de los esquemas y los formatos de los datos identificados. De esta forma, puede transformar datos semi-estructurados en datos estructurados y relacionales.
Se puede usar también como un catálogo de datos con la ayuda del crawler y del servicio Amazon Athena. La frecuencia de este crawler también se puede configurar.
Ventajas de AWS Glue
Además de las ventajas propias de los servicios Cloud, también encontramos las siguientes:
- Proporciona multitud de conectores. Tanto para servicios propios de AWS como para S3 o Redshift como con sistemas externos como Apache Kafka o MongoDB mediante diferentes conectores y JDBC.
- Usa un modelo de pago por uso, en el que solamente se pagan los recursos en uso durante la ejecución de los trabajos.
- Para la monitorización de los trabajos, se puede integrar fácilmente con CloudWatch. Además, también es accesible la interfaz de usuario de Spark UI.
- Para usar el entorno, Glue también proporciona un IDE de Spark para nuestras tareas de desarrollo. Además, con la herramienta Glue Studio se pueden diseñar scripts visualmente con una interfaz gráfica que recuerda ligeramente a Apache NiFi.
- Es un servicio muy interesante para tener un entorno serverless enfocado en la implementación de los trabajos de transformación.
Limitaciones
Glue admite código Scala y Python, aunque las versiones disponibles están limitadas.
Además, es posible que sea necesario realizar ajustes en nuestro código y agregar librerías para ejecutarlos correctamente en Glue. En este aspecto, el servicio Amazon EMR es mucho más flexible.
Cursos y Formación de AWS
Continúa aprendiendo sobre servicios cloud para Big Data y Apache Glue con estos dos fantásticos cursos que encontrarás Udemy:
Conceptos básicos de Amazon (AWS) QuickSight, Glue, Athena y S3
En este curso aprenderás todo acerca de los servicios de AWS Quicksight, Glue, Athena y S3. Podrás entender y completar workflows completos de visualización de datos fácilmente.
Arquitecto asociado de soluciones certificado por AWS
Este curso de 25 horas de vídeo es perfecto para preparar la certificación de arquitecto de soluciones de AWS (SAA-C03). Está actualizado con los últimos temarios y toda la información que necesitarás.
Preguntas Frecuentes AWS Glue – FAQ
¿Para qué se usa AWS Glue?
El servicio AWS Glue se usa como herramienta serverless de integración de datos en la nube de AWS. Permite a los ingenieros mover, combinar y transformar datos implementando pipelines ETL para realizar analítica o procesos de cálculo de manera sencilla.
¿Qué tecnología usa AWS Glue?
El motor de ETL está basado en Apache Spark como motor de procesamiento distribuido para Big Data. Para ello, Glue permite implementar programas en los lenguajes de programación Python y Scala.
¿Qué es catálogo de Glue?
AWS Glue también implementa un catálogo de datos como un repositorio central de formatos y esquemas de datos. Este catálogo se integra fácilmente con otros servicios de AWS como Redshift, Athena, RDS y Hive Metastore.
A continuación, el vídeo-resumen. ¡No te lo pierdas!