Skip to content

MelinaRG/Proyecto_Data_Engineer

Repository files navigation

PROYECTO INDIVIDUAL

Data Engineering 👷

Introducción 📎

En esta ocasión, les mostraré el proyecto en el que estuve trabajando, donde me situé en el rol de una Data Engineer, poniendo como foco central el proceso de ETL que es un tipo de integración de datos que hace referencia a tres pasos (extraer, transformar, cargar). Por otro lado también puntualizaré en la elaboración y creación de la base de datos, donde se alojarán los datos, una vez terminadas las transformaciones y limpieza.

Objetivo 📎

El objetivo del proyecto fue procesar y analizar datos de dos plataformas de streaming, Disney y Netflix, para luego utilizarlos en un modelo de motor de recomendaciones.

Desarrollo 📎

  • Comencé descargando dos archivos .CSV desde un bucket S3 y comencé con el proceso de ETL.

  • Para la extracción, utilicé Python con la librería Pandas.

  • Luego realicé las transformaciones necesarias para limpiar los datos, identificación de datos nulos, duplicados y corrección de datos corruptos.

  • Una vez finalizado este proceso, utilicé la interfaz de PostgreSQL de pgAdmin para diseñar un DER (diagrama entidad-relación) de la base de datos. Decidí utilizar un modelo estrella combinado con un copo de nieve, donde la tabla de hecho se llama Program y el resto de las tablas son de dimensiones con sus respectivas FK y PK.

  • Luego, cargué los datos a la base de datos desde Python utilizando la librería SQLAlchemy, y así finalicé el proceso de ETL. Los datos se encuentran listos para su uso en Business Intelligence, ya sea a través de un dashboard, consultas a la base de datos o para el desarrollo de un modelo de Machine Learning.

Conclusión 📎

Es importante destacar la relevancia de la ingeniería de datos para poder lograr un analisis profundo de la información y la creación de modelos de machine learning confiables y precisos.

Para mejorar la experiencia del usuario, en este caso, un motor de recomendación podría ser una excelente opción. Podría utilizarse el motor por filtrado colaborativo o el de filtrado basado en contenido. El filtrado colaborativo utiliza el comportamiento de otros usuarios con gustos similares para recomendar películas, mientras que el filtrado basado en contenido se enfoca en las características de las películas para encontrar títulos similares a los que el usuario ha visto anteriormente.

Además, se recomienda incorporar información adicional, como el score de puntuaciones de los usuarios, para mejorar la precisión del modelo.

Stack tecnológico 📎

  • Python python

  • Pandas

  • SQLAlchemy

  • PostgreSQL

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published