Técnicas avanzadas de ETL para principiantes |  por 💡Mike Shakhomirov |  febrero de 2024

En una escala del 1 al 10, ¿qué tan buenas son sus habilidades de ingesta de datos?

Foto por Blake Connally en desempaquetar

La ingesta de datos es un paso crucial en la ingeniería de datos. Los ingenieros de datos cargan enormes cantidades de datos en varios sistemas de bases de datos para su posterior transformación y procesamiento. Si bien trabajamos con cantidades relativamente pequeñas de datos en la puesta en escena, tenemos suerte de no quedarnos sin memoria, trabajar en canales de datos de producción con terabytes (o incluso petabytes) de registros a menudo se convierte en un verdadero desafío. Las soluciones ETL existentes ofrecen carga de datos automatizada en un almacén de datos que necesitamos y, a menudo, tienen modelos de precios basados ​​en filas. En esta historia, me gustaría analizar cómo crear una solución de carga de datos personalizada para nuestras canalizaciones para permitir una carga de datos eficiente. Analizaremos mejor los patrones de diseño de ingesta de datos comunes y las formas típicas de organizar el proceso. Realizaremos ingeniería inversa en algunas de las soluciones ETL más populares para ver cómo se pueden ingerir datos de manera eficiente sin interrupciones ni pérdidas. Proporcionaré ejemplos de carga de datos utilizando bibliotecas y herramientas de Python disponibles en el mercado de forma gratuita para resumir mis hallazgos.

En una escala del 1 al 10, ¿qué tan buenas son tus habilidades para cargar datos? –

Esa sería una de mis preguntas favoritas durante las entrevistas de ingeniería de datos. Sigo buscando talentos que sepan cómo construir sistemas ETL a medida.

De hecho, ser capaz de crear un sistema de carga de datos robusto que pueda procesar datos de manera eficiente, no falle, no consuma demasiada memoria, pueda manejar varios formatos de datos y escalar bien: esto es lo que distingue a un ingeniero de datos experimentado en mi opinión. . Con la abundancia de herramientas disponibles en el mercado para tareas ETL, estamos de suerte y realmente no las necesitamos. Hasta que la empresa decida construirlo internamente. Puede haber varias razones para esto y una de las más obvias es seguridad y regulaciones. Tratar con datos confidenciales siempre es un desafío y, a menudo, los datos no debe abandonar determinadas regiones y/o ubicaciones geográficas. Otra buena razón para desarrollar internamente experiencia en ETL es que ahorra toneladas de dinero a largo plazo. Siempre es fantástico contar con un ingeniero de software que tenga experiencia en el diseño de plataformas de datos y conozca muchas herramientas y marcos de ETL. Las empresas están buscando esos talentos. I…