Coder Social home page Coder Social logo

andres-soto-h / dw-airflow-training Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jdaguilar/dw-airflow-training

2.0 1.0 0.0 7.38 MB

Ejercicio de entrenamiento para poblar un DW por medio de Apache Airflow

License: MIT License

Python 84.86% Jupyter Notebook 15.14%

dw-airflow-training's Introduction

dw-airflow-training

Ejercicio de entrenamiento para poblar un DW por medio de Apache Airflow

Setup

  1. Crear archivo .env con la variable AIRFLOW_UID
echo -e "AIRFLOW_UID=$(id -u)" > .env
  1. Editar .env y añadir librerias requeridas
_PIP_ADDITIONAL_REQUIREMENTS=openpyxl

Si requiere añadir mas librerias, debe editar la variable _PIP_ADDITIONAL_REQUIREMENTS separadando las librerias por comas, por ejemplo:

_PIP_ADDITIONAL_REQUIREMENTS=openpyxl,pandas
  1. En el directorio data/raw puede encontar las fuentes de datos originales:
data
└── raw
    ├── 03003.xlsx
    ├── ISCED_2013.csv
    ├── SEGR1.csv
    ├── SEGR2.csv
    ├── educ_uoe_grad01.xlsx
    ├── educ_uoe_grad05.xlsx
    └── grad_5sc.csv
  1. Inicializar Airflow
docker compose up airflow-init
  1. Conectate a la base de datos MySQL y ejecuta la migración create_tables.sql, la cual puedes encontrar en la carpeta migrations

Consejos

Preprocesamiento

El objetivo del prepocesamiento es transformar los archivos crudos en un archivo en formato tabular, de manera que la lectura de los datos pueda ser interpretada de manera similar a una serie de tiempo. Como ayuda, tenga en cuenta los siguientes puntos:

  1. Los archivos educ_uoe_grad01.xls y educ_uoe_grad05.xls tienen mas de una hoja, por lo que deberá corroborar si necesita la información en todas las hojas o solo una de ellas contiene la información. Adicionalmente, encontrará que las tablas con los datos no estan en las primeras filas, por lo que deberá determinar a partir de que filas y columnas debe leer los datos.

  2. Algunas de los archivos entregadas no están bien codificadas, ya que va a encontrar en algunos datos el simbolo �, por lo que deberá determinar cual es la codificación correcta para esas hojas.

  3. A excepción de los archivos educ_uoe_grad01.xls y educ_uoe_grad05.xls, las demas hojas pertenecen a información correspondiente al pais españa, para un determinado año. Por lo tanto, va a tener que añadir a esos archivos procesados dos nuevas columnas, año y pais.

  4. Tenga cuidado cuando lea algunos archivos, muchos de ellos contienen un código que puede ser interpretado como entero pero debe ser interpretado como string.

  5. No está de mas agregar que los datos deben tener consistencia, enfoquese especialmente en los archivos correspondientes a españa.

Modelo DW

dw.png

dw-airflow-training's People

Contributors

andres-sotoh-pragma avatar jdaguilar avatar andres-soto-h avatar juanpabosu avatar

Stargazers

Jorge Lambraño avatar  avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.