Cómo construir una pila de datos de 5 capas

Construcción de una pila de datos de 5 capas

Crear una plataforma de datos no tiene por qué ser complicado. Aquí están las 5 capas imprescindibles para impulsar la adopción de productos de datos a gran escala.

Imagen cortesía del autor. Esperamos que no te haga llorar los ojos.

Al igual que el dip de frijoles y los ogros, las capas son los bloques de construcción de la pila de datos moderna.

Su potente selección de componentes de herramientas se combinan para crear una única plataforma de datos sincronizada y extensible, siendo cada capa responsable de una función única en el pipeline de datos.

A diferencia de los ogros, sin embargo, la plataforma de datos en la nube no es un cuento de hadas. Casi a diario se crean nuevas herramientas e integraciones en un esfuerzo por mejorar y elevarla.

Entonces, con integraciones que se expanden infinitamente y la oportunidad de agregar nuevas capas para cada característica y función de tu flujo de datos, surge la pregunta: ¿por dónde empiezas? O dicho de otra manera, ¿cómo entregas una plataforma de datos que brinde un valor real a las partes interesadas sin construir una plataforma que sea demasiado compleja de gestionar o demasiado cara de justificar?

Para los equipos pequeños de datos que construyen sus primeras plataformas nativas de la nube y los equipos que dan el salto desde la infraestructura local por primera vez, es esencial dar prioridad a aquellas capas que tendrán el mayor impacto inmediato en los resultados comerciales.

En este artículo, te presentaremos el modelo de la Pila de Datos de Cinco Capas, que consiste en cinco herramientas críticas que no solo te permitirán maximizar el impacto, sino que también te permitirán crecer de acuerdo a las necesidades de tu organización. Estas herramientas incluyen:

  • Almacenamiento y computación en la nube
  • Transformación de datos
  • Inteligencia empresarial
  • Observabilidad de datos
  • Y orquestación

Y no mencionaremos ogros ni dip de frijoles nuevamente.

¡Vamos a sumergirnos en ello! (El contenido, no el dip de frijoles. Vale, esa es realmente la última vez).

Almacenamiento y computación en la nube

Ya sea que estés apilando herramientas de datos o panqueques, siempre se construye de abajo hacia arriba. Al igual que cualquier buena pila, una base adecuada es fundamental para garantizar la integridad estructural y funcional de tu plataforma de datos.

Antes de poder modelar los datos para tus partes interesadas, necesitas un lugar para recopilarlos y almacenarlos. La primera capa de tu pila generalmente se clasificará en una de tres categorías: una solución de almacén de datos como Snowflake que maneja predominantemente datos estructurados; un lago de datos que se enfoca en volúmenes más grandes de datos no estructurados; y una solución híbrida como Lakehouse de Databricks que combina elementos de ambos.

Sin embargo, esto no será simplemente donde almacenas tus datos, también es la fuente principal de potencia de cálculo para las otras capas de tu plataforma en la pila de datos en la nube. (Lee más sobre cuándo tiene sentido acoplar o desacoplar tu almacenamiento y computación a través de mi colega Shane).

Ahora bien, podría entrar en los méritos del almacén, el lago, la casa del lago y todo lo demás, pero eso realmente no es importante aquí. Lo importante es que elijas una solución que cumpla tanto con las necesidades actuales como futuras de tu plataforma, a un costo de recursos aceptable para tu equipo financiero. También dictará qué herramientas y soluciones podrás conectar en el futuro para ajustar tu pila de datos a nuevos casos de uso.

El tipo de solución de almacenamiento y computación específica que necesites dependerá completamente de las necesidades comerciales y los casos de uso de tu empresa, pero nuestra recomendación es elegir algo común, como Snowflake, Databricks, BigQuery, etc., que tenga un buen soporte, esté bien integrado y sea fácil de escalar.

El software de código abierto siempre es una solución tentadora, pero a menos que hayas alcanzado un nivel de escala que realmente lo requiera, puede presentar algunos desafíos importantes para escalar a nivel de almacenamiento y computación. Créenos, elegir una solución de almacenamiento y computación administrada desde el principio te ahorrará muchos dolores de cabeza, y probablemente una migración dolorosa, en el futuro.

Transformación de datos

Vale, entonces tus datos necesitan estar en la nube. Tiene sentido. ¿Qué más necesita tu plataforma de datos? Veamos la segunda capa de la Pila de Datos de Cinco Capas: la transformación.

Cuando los datos se ingresan por primera vez, vienen en todo tipo de formas y tamaños divertidos. Diferentes formatos. Estructuras diferentes. Valores diferentes. En términos simples, la transformación de datos se refiere al proceso de convertir todos esos datos de una variedad de formatos dispares en algo consistente y útil para el modelado.

Imagen cortesía del autor.

Tradicionalmente, la transformación era un proceso manual, que requería que los ingenieros de datos codificaran cada canalización a mano dentro de una interfaz de línea de comandos (CLI).

Recientemente, sin embargo, las herramientas de transformación en la nube han comenzado a democratizar el proceso de modelado de datos. En un esfuerzo por hacer que las canalizaciones de datos sean más accesibles para los profesionales, herramientas automatizadas de canalización de datos como dbt Labs, Preql y Dataform permiten a los usuarios crear modelos efectivos sin escribir ningún código.

Herramientas como dbt se basan en lo que se conoce como “SQL modular” para construir canalizaciones a partir de bloques comunes, preescritos y optimizados de código SQL enchufables.

A medida que comiences tu viaje de datos en la nube, descubrirás rápidamente nuevas formas de modelar los datos y proporcionar valor a los consumidores de datos. Recibirás nuevas solicitudes de paneles de control de finanzas y marketing. Encontrarás nuevas fuentes que deben ser introducidas en los modelos existentes. Las oportunidades vendrán rápidas y furiosas.

Al igual que muchas capas de la pila de datos, la codificación de tus propias transformaciones puede funcionar a pequeña escala. Desafortunadamente, a medida que creces, la codificación manual de las transformaciones se convertirá rápidamente en un cuello de botella para el éxito de tu plataforma de datos. Invertir en herramientas operativas listas para usar a menudo es necesario para seguir siendo competitivo y seguir proporcionando nuevo valor en diversos ámbitos.

Pero no solo escribir tus propias transformaciones se vuelve engorroso. Incluso si pudieras codificar suficientes transformaciones para cubrir tus casos de uso de escalado, ¿qué sucede si esas transformaciones se rompen? Arreglar un modelo roto probablemente no sea un gran problema, pero arreglar 100 es un sueño imposible (juego de palabras obvio).

Mejora del tiempo de valor para organizaciones en crecimiento

Herramientas de transformación como dbt hacen que la creación y gestión de modelos complejos sea más rápida y confiable para equipos de ingeniería y profesionales en expansión. A diferencia de la codificación manual de SQL que generalmente se limita a los ingenieros de datos, el SQL modular de dbt permite que cualquier persona familiarizada con SQL cree sus propias canalizaciones de datos. Esto significa un tiempo de valor más rápido para equipos ocupados, una reducción de la carga de ingeniería y, en algunos casos, una menor demanda de experiencia para impulsar tu plataforma hacia adelante.

Flexibilidad para experimentar con la secuencia de transformaciones

Una capa de transformación en la nube automatizada también permite que las transformaciones de datos se realicen en diferentes etapas de la canalización, ofreciendo la flexibilidad para experimentar con ETL, ELT y todo lo demás a medida que evoluciona tu plataforma.

Permite capacidades de autoservicio

Finalmente, una herramienta de transformación operativa allanará el camino para una arquitectura de autoservicio completa en el futuro, si decides recorrerlo.

Inteligencia de Negocios (BI)

Si la transformación es la capa dos, entonces la inteligencia de negocios tiene que ser la capa tres.

La inteligencia de negocios en el contexto de las herramientas de plataforma de datos se refiere a las capacidades analíticas que presentamos a los usuarios finales para cumplir con un caso de uso específico. Si bien nuestros datos pueden alimentar algunos productos externos, las funciones de inteligencia de negocios son el principal producto de datos para la mayoría de los equipos.

Si bien las herramientas de inteligencia de negocios como Looker, Tableau y una variedad de herramientas de código abierto pueden variar en complejidad, facilidad de uso y características, lo que estas herramientas siempre tienen en común es la capacidad de ayudar a los consumidores de datos a descubrir ideas a través de la visualización.

Esto será bastante obvio porque, mientras todo lo demás en tu pila es un medio para un fin, la inteligencia de negocios suele ser el fin en sí mismo.

La inteligencia de negocios es generalmente el producto consumible en el centro de una pila de datos, y es un impulsor de valor esencial para cualquier plataforma de datos en la nube. A medida que aumenta el apetito de tu empresa por crear y consumir datos, la necesidad de acceder a esos datos de manera rápida y fácil también crecerá.

Las herramientas de inteligencia de negocios son las que hacen posible que tus partes interesadas obtengan valor de tu plataforma de datos. Sin una forma de activar y consumir los datos, no habría necesidad de una plataforma de datos en la nube, sin importar cuántas capas tenga.

Observabilidad de datos

El equipo promedio de ingeniería de datos pasa aproximadamente dos días a la semana lidiando con datos incorrectos. De hecho, según una encuesta reciente de Gartner, los datos incorrectos le cuestan a las organizaciones un promedio de $12.9 millones al año. Para mitigar todo ese riesgo financiero y proteger la integridad de tu plataforma, necesitas la capa cuatro: la observabilidad de datos.

Antes de la observabilidad de datos, una de las formas más comunes de descubrir problemas de calidad de datos era a través de pruebas manuales de SQL. Herramientas de prueba de datos de código abierto como Great Expectations y dbt permitieron a los ingenieros de datos validar las suposiciones de su organización sobre los datos y escribir lógica para evitar que el problema se propagara aguas abajo.

Imagen cortesía del autor.

Las plataformas de observabilidad de datos utilizan aprendizaje automático en lugar de codificación manual para generar automáticamente controles de calidad para cosas como frescura, volumen, esquema y tasas nulas en todas sus tablas de producción. Además de una cobertura de calidad integral, una buena solución de observabilidad de datos también generará una línea de tiempo tanto a nivel de tabla como de columna para ayudar a los equipos a identificar rápidamente dónde ocurrió un fallo y qué ha sido afectado en función de las dependencias ascendentes y descendentes.

El valor de su plataforma de datos, y por extensión sus productos, está inexorablemente ligado a la calidad de los datos que la alimentan. Basura entra, basura sale. (O no sale nada si tiene un trabajo de ingestión roto). Para tener productos de datos confiables, accionables y útiles, los datos subyacentes deben ser confiables. Si no puede confiar en los datos, no puede confiar en el producto de datos.

Desafortunadamente, a medida que sus datos crecen, sus problemas de calidad de datos también crecerán. Cuanto más compleja sea su plataforma, más fuentes ingiera, más equipos admita, es más probable que tenga incidentes de calidad. Y a medida que los equipos aprovechan cada vez más los datos para alimentar modelos de IA y casos de uso de ML, la necesidad de garantizar su confianza y confiabilidad crece de manera exponencial.

Aunque las pruebas de datos pueden proporcionar cierta cobertura de calidad, su función se limita a problemas conocidos y tablas específicas. Y debido a que cada prueba manual debe codificarse a mano, la escalabilidad solo es proporcional a los recursos de ingeniería disponibles. Por otro lado, la observabilidad de datos proporciona cobertura de forma automática en todas las tablas, por lo que se le alertará sobre cualquier incidente de calidad de datos, conocido o desconocido, antes de que afecte a los consumidores aguas abajo. Y a medida que su plataforma y sus datos crezcan, su cobertura de calidad también se ampliará.

Además, la observabilidad de datos proporciona una línea de tiempo de extremo a extremo hasta la capa de BI, lo que permite identificar y resolver incidentes de calidad. Eso puede significar horas de tiempo recuperado para su equipo de datos. Si bien las pruebas manuales pueden detectar una parte de los incidentes de calidad, no sirven para resolverlos. Esto es aún más alarmante cuando se da cuenta de que el tiempo de resolución se ha duplicado casi el doble para los equipos de datos de un año a otro.

A diferencia de las pruebas de datos, que son reactivas por naturaleza, la observabilidad de datos proporciona visibilidad proactiva de problemas conocidos y desconocidos con un registro en tiempo real de la línea de tiempo de su canalización para posicionar su plataforma de datos para el crecimiento, todo sin sacrificar el tiempo o los recursos de su equipo.

Orquestación de datos

Cuando extraes y procesas datos para análisis, el orden de las operaciones importa. Como ya hemos visto, tus datos no solo existen dentro de la capa de almacenamiento de tu pila de datos. Se ingieren desde una fuente, se almacenan en otra y luego se transportan a otro lugar para ser transformados y visualizados.

En términos más amplios, la orquestación de datos es la configuración de múltiples tareas (algunas pueden ser automatizadas) en un solo proceso de extremo a extremo. Se activa cuando y cómo se activarán los trabajos críticos para garantizar que los datos fluyan de manera predecible a través de su plataforma en el momento adecuado, en la secuencia correcta y a la velocidad adecuada para mantener los estándares de producción. (Como una cinta transportadora para tus productos de datos).

A diferencia del almacenamiento o la transformación, las canalizaciones no requieren orquestación para considerarse funcionales, al menos no a nivel fundamental. Sin embargo, una vez que las plataformas de datos crecen más allá de cierto punto, la gestión de trabajos rápidamente se vuelve difícil de manejar según los estándares internos.

Cuando extraes y procesas una pequeña cantidad de datos, programar trabajos requiere solo un pequeño esfuerzo. Pero cuando extraes y procesas grandes cantidades de datos de múltiples fuentes y para innumerables casos de uso, programar esos trabajos requiere un esfuerzo muy grande, un esfuerzo inhumano.

La razón por la que la orquestación es una necesidad funcional de la Pila de Datos de 5 Capas, si no una literal, se debe a la falta inherente de escalabilidad en las canalizaciones codificadas a mano. Al igual que la transformación y la calidad de los datos, los recursos de ingeniería se convierten en el principio limitante para programar y gestionar canalizaciones.

La belleza de gran parte de la pila de datos moderna es que permite herramientas e integraciones que eliminan los cuellos de botella de ingeniería, liberando a los ingenieros para proporcionar un nuevo valor a sus organizaciones. Estas son las herramientas que se justifican por sí mismas. Eso es exactamente lo que también hace la orquestación.

Y a medida que su organización crece y naturalmente comienzan a desarrollarse silos en sus datos, tener una capa de orquestación en su lugar posicionará a su equipo de datos para mantener el control de sus fuentes de datos y seguir proporcionando valor en diferentes áreas.

Algunas de las soluciones más populares para la orquestación de datos incluyen Apache Airflow, Dagster y el recién llegado Prefect.

¿La parte más importante? Construir para el impacto y la escala

Por supuesto, cinco no es el número mágico. Una gran pila de datos puede tener seis capas, siete capas o 57 capas. Y muchas de esas capas potenciales, como la gobernanza, los contratos e incluso algunas pruebas adicionales, pueden ser bastante útiles según la etapa de su organización y su plataforma.

Sin embargo, cuando recién está comenzando, no tiene los recursos, el tiempo o incluso los casos de uso necesarios para explorar todas las herramientas de plataforma disponibles en la pila de datos moderna. Además, cada nueva capa introducirá nuevas complejidades, desafíos y costos que deberán ser justificados. En su lugar, concéntrese en lo que más importa para aprovechar el potencial de sus datos y impulsar el crecimiento de la empresa en el corto plazo.

Cada una de las capas mencionadas anteriormente: almacenamiento, transformación, BI, observabilidad de datos y orquestación, proporciona una función esencial en cualquier pila de datos moderna totalmente operativa que maximiza el impacto y proporciona la escalabilidad inmediata que necesitará para hacer crecer rápidamente su plataforma, sus casos de uso y su equipo en el futuro.

Si es un líder de datos que recién está comenzando su viaje de datos y desea ofrecer una plataforma de datos eficiente que limite los costos sin sacrificar la potencia, la Pila de Datos de 5 Capas es la que debe superar.

¿No está de acuerdo? Comuníquese con Barr en LinkedIn con cualquier comentario, pregunta o recetas de salsa de frijoles.

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

Ciencia de Datos

10 hiperparámetros confusos de XGBoost y cómo ajustarlos como un profesional en 2023.

Un tutorial detallado y visual sobre cómo ajustar 10 de los hiperparámetros más confusos de XGBoost con Optuna.

Inteligencia Artificial

La evolución automatizada aborda tareas difíciles

El aprendizaje por refuerzo agrupa datos no etiquetados en conjuntos de similitudes, con el objetivo de maximizar las...

Inteligencia Artificial

MosaicML ayuda a los usuarios de IA a aumentar la precisión, reducir costos y ahorrar tiempo

La startup MosaicML tiene la misión de ayudar a la comunidad de IA a mejorar la precisión de las predicciones, reduci...