Cómo construí una canalización de datos en cascada basada en AWS

Canalización de datos en cascada en AWS

Automático, escalable y poderoso

Hoy voy a compartir algunas experiencias de construcción de un proyecto de ingeniería de datos del cual siempre me enorgullezco. Aprenderás las razones por las cuales utilicé las herramientas y componentes de AWS, así como también cómo diseñé la arquitectura.

Imagen por el autor

Descargo de responsabilidad: El contenido de este texto está inspirado en mi experiencia con una entidad no nombrada. Sin embargo, ciertos intereses comerciales críticos y detalles han sido reemplazados intencionalmente con datos/códigos ficticios u omitidos con el fin de mantener la confidencialidad y privacidad. Por lo tanto, la totalidad y exactitud de los intereses comerciales reales involucrados están reservados.

Requisitos previos

  1. Conocimientos de Python
  2. Comprensión de los componentes de AWS, como DynamoDB, Lambda serverless, SQS y CloudWatch
  3. Experiencia en programación con YAML y SAM CLI

Antecedentes

Supongamos que eres un ingeniero de datos y necesitas actualizar constantemente los datos en el almacén. Por ejemplo, eres responsable de sincronizar los registros de ventas de Dunder Mifflin Paper Co. de manera regular. (Entiendo que este escenario no es realista, ¡pero diviértete! 🙂 ) Los datos te son enviados a través de la API de un proveedor y eres responsable de asegurarte de que la información de las sucursales, empleados (en realidad solo se considera a los vendedores) y ventas esté actualizada. La API proporcionada tiene los siguientes 3 paths:

  1. /branches, acepta el nombre de la sucursal como parámetro de consulta para obtener los metadatos de una sucursal específica;
  2. /employees, acepta el ID de la sucursal como parámetro de consulta para obtener la información de todos sus empleados de una determinada sucursal, la respuesta incluye un par clave-valor que indica las ocupaciones de los empleados;
  3. /sales, acepta el ID del empleado como parámetro de consulta para obtener todos los registros de ventas de un vendedor, la respuesta incluye un par clave-valor que indica cuándo se completó la transacción.

Entonces, en términos generales, las respuestas de la API se ven así:

Path /branches:

{  "result": [   {     "id": 1,     "branch_name": "Scranton"…

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

¿Qué significa implementar un modelo de aprendizaje automático?

La Ciencia de Datos, un campo prometedor que continúa atrayendo a más y más empresas, está luchando por integrarse en...

Inteligencia Artificial

Investigadores de la NTU de Singapur proponen IT3D un nuevo método de refinamiento de IA Plug-and-Play para la generación de texto a 3D.

Ha habido un notable progreso en el dominio de texto a imagen, lo que ha generado una oleada de entusiasmo dentro de ...

Inteligencia Artificial

Conoce los Modelos de Difusión Compartimentados (CDM) Un enfoque de IA para entrenar diferentes modelos de difusión o indicaciones en distintas fuentes de datos.

Con los avances recientes en tecnología y en el campo de la Inteligencia Artificial, ha habido mucho progreso y mejor...

Inteligencia Artificial

¿Pueden los LLM reemplazar a los analistas de datos? Construyendo un analista potenciado por LLM

Creo que cada uno de nosotros se ha preguntado al menos una vez durante el año pasado si (o más bien cuándo) ChatGPT ...