Curso de Big Data en AWS

Configurar AWS Glue Crawler para poblar catálogo

Curso de Big Data en AWS

Contenido del curso

Extracción de información

Transformación de Información

Configurar AWS Glue Crawler para poblar catálogo

Resumen

Aprende, paso a paso, a preparar la capa de datos para tu primer ETL en AWS con un flujo claro: crear buckets S3, ejecutar un Crawler en Glue para poblar el Glue Catalog y validar con Athena. Tras configurar Apache Zeppelin y el developer endpoint, aquí se consolida la base para transformar datos crudos en estructuras consultables.

¿Cómo preparar el entorno en AWS para el ETL?

Primero se entra a la consola de AWS y se abre el servicio de Glue. Se trabaja con un repositorio de GitHub provisto para el laboratorio y con dos buckets S3: uno de origen con datos crudos y otro de destino para la data transformada. Esta separación permite mantener control del linaje y facilitar validaciones.

¿Qué incluye el repositorio de GitHub?

  • Archivo principal: ETL.py para la fase de transformación posterior.
  • Carpeta JSON: varios archivos .json grandes usados como data de ejemplo.

¿Cómo organizar el almacenamiento en S3?

  • Crear el bucket origen: origen-platzi.
  • Crear el bucket destino: target-platzi.
  • Cargar los .json del repositorio al bucket origen.

¿Qué es el Glue Crawler y cómo llena el Glue Catalog?

Un Crawler recorre el bucket de origen, detecta archivos y su estructura, y registra metadatos en el Glue Catalog. El Glue Catalog es un catálogo de metadatos persistente: guarda ubicación en S3, esquemas y tablas para que otros servicios consulten la data sin moverla.

¿Cómo configurar el Crawler?

  • Ir a Glue, sección Crawlers, y crear uno nuevo: Platzi Crawler.
  • Opciones clave: descripción opcional; sin configuración de security inicial; classifiers opcionales para esquemas particulares; sin agrupar múltiples S3.
  • Data store: S3 con un path al bucket origen seleccionado.
  • Exclusiones: sin patrones de exclusión.
  • Múltiples orígenes: no se agregan otros por ahora.
  • Rol de IAM: seleccionar uno existente que termina en “Platzi” o crearlo.
  • Programación: ejecución on demand para correr manualmente.
  • Base de datos en el catálogo: crear PlatziDB.
  • Prefijo: ninguno; opciones avanzadas por defecto.
  • Finalizar y ejecutar: el status inicia como Starting y continúa hasta completar.

¿Qué resultados esperar al ejecutar?

  • Recorre el bucket origen e infiere esquemas de los archivos .json.
  • Crea tablas en el Glue Catalog dentro de la database PlatziDB.
  • En este ejercicio reporta: creó seis tablas.
  • Cada archivo JSON relevante se refleja como una tabla consultable.

¿Cómo consultar la data con Athena y planear la transformación?

El Glue Catalog habilita a servicios como Athena para consultar datos en S3. Al abrir Athena, se selecciona PlatziDB y se observan las tablas creadas desde la data cruda. Como están sin ordenar ni normalizar, la siguiente fase consiste en transformarlas y escribir resultados en el bucket destino.

¿Qué habilidades y conceptos quedan claros?

  • Identificar data origen en S3 y separarla de la data objetivo.
  • “Crawlear la data” con un Crawler para poblar metadatos.
  • Entender el rol del Glue Catalog como punto central de esquemas.
  • Configurar un rol de IAM adecuado para Glue.
  • Programar ejecuciones on demand según necesidades.
  • Usar Athena para consultas sobre S3 a través del catálogo.
  • Preparar la base para la transformación con ETL.py y reexponer resultados en el catálogo.

¿Quieres que profundicemos en la transformación y mejores prácticas de esquemas en Glue y Athena? Deja tus dudas o comentarios y seguimos construyendo el pipeline juntos.