Este repositorio forma parte de la presentación de la charla técnica "Transformando datos y realidades: tu primera experiencia con AWS Glue", impartida el 8 de mayo en Amazon HQ, CDMX y en el Community Day México presentado en Expo Reforma el 14 de junio .
Con el objetivo de inspirar a mujeres y personas que están comenzando en el mundo del análisis de datos, se expone el proceso de construcción de un pipeline ETL utilizando AWS Glue, cuyos resultados se visualizan posteriormente en Amazon QuickSight. El desarrollo se centra en el procesamiento de una base de datos con indicadores clave para comprender la brecha de género y la situación de las mujeres en el ámbito STEM, desde una perspectiva social y humanística.
Este proyecto de ingeniería de datos permite automatizar procesos de extracción, transformación e imputación de datos utilizando AWS Glue y Amazon QuickSight, enfocado específicamente en datos sobre mujeres estudiantes y profesionistas en áreas STEM en América Latina.
- AWS Glue: para la creación y ejecución del ETL.
- Amazon QuickSight: para visualización interactiva de resultados.
- AWS S3: almacenamiento de datos en la nube.
- Python: lenguaje de programación para scripts ETL.
- Pandas y scikit-learn: bibliotecas utilizadas para manejo e imputación de datos.
. ├── reports/ # Presentación de desarrollo, resultados y gráficos exportados
├── glue_job_script.py # Script principal de Glue para ETL e imputación de datos.
├── manifest.json # Archivo para especificar ubicación y formato de archivos en S3.
└── requirements.txt # Dependencias necesarias para ejecución de librerias (opcional).
- Cuenta activa de AWS.
- Acceso configurado a AWS Glue y Amazon QuickSight.
- Bucket S3 previamente creado.
-
Accede a AWS Glue
-
Crea un crawler y guerda tus resultados en el data calog
-
Crea un nuevo Job en Glue:
- Tipo: Spark con Python 3
- Rol IAM: Elige o crea uno con permisos adecuados (S3, Glue)
-
Copia el código del archivo
glue_job_script.py
en el editor del Job. -
Ajusta rutas de S3 si es necesario.
- Guarda y ejecuta tu Job.
- Verifica en CloudWatch o la pestaña "Runs" el estado del proceso.
- Usa el archivo
manifest.json
para configurar conjuntos de datos en Amazon QuickSight. - Conecta QuickSight al bucket S3 correspondiente.
- Crea visualizaciones para analizar resultados.
{
"fileLocations": [
{"URIPrefixes": ["s3://target-woman-stem-latam/estudiantes_mice/"]},
{"URIPrefixes": ["s3://target-woman-stem-latam/personal_mice/"]}
],
"globalUploadSettings": {
"format": "CSV"
}
}
Si necesitas ejecutar o probar localmente:
pip install -r requirements.txt
Si tienes preguntas o sugerencias, ¡no dudes en abrir un issue o enviar un pull request!
¡Gracias por utilizar este repositorio y hacerme una retroalimentación! 🌟