El panorama de los datos ha experimentado cambios significativos en 2023, lo que presenta nuevas oportunidades (y desafíos potenciales) para los equipos de ingeniería de datos.
Creo que veremos lo siguiente este año en análisis, OLAP, ingeniería de datos y la capa de servicio, brindando a los equipos mejores protocolos y más opciones en un mar de herramientas.
Pronósticos de datos del lago
De Hadoop: En 2023, herramientas como DuckDB (C++), Polars (Rust) y Apache Arrow (Go, Rust, Javascript,…) se hicieron muy populares, comenzando a dominar el espacio analítico en pleno dominio de la JVM y C/ Show irrumpen. Pitón. .
Creo que el ritmo de la innovación fuera de la JVM se acelerará, enviando las arquitecturas existentes basadas en Hadoop al legado.
Si bien la mayoría de las empresas aún no utilizan Hadoop directamente, la mayor parte del estado actual del arte todavía se basa en el andamiaje de Hadoop: Apache Spark depende completamente de la implementación de E/S de Hadoop para acceder a sus datos subyacentes. La mayoría de las arquitecturas de Hive se basan en tablas estilo Apache Hive, o más directamente, en Hive Metastore y sus interfaces para crear una abstracción de tabla en su capa de almacenamiento.
Si bien Hadoop y Hive no son intrínsecamente malos, ya no representan lo último en tecnología. Por una vez, se basan completamente en la JVM, que hoy en día tiene un gran rendimiento, pero aún no es la mejor opción si buscas aprovechar al máximo las CPU que simplemente no son más rápidas.
Además, Apache Hive, que dio un gran paso adelante en el procesamiento de big data al eliminar la naturaleza distribuida básica de Hadoop y exponer una colección de tablas SQL(-ish) familiar en un sistema de archivos distribuido, está comenzando a mostrar su antigüedad y limitaciones: falta de comunicación y control de concurrencia, falta de separación entre metadatos y datos, y otras lecciones que hemos aprendido en sus más de 15 años de existencia.
Creo que este año veremos a Apache Spark evolucionar desde estas raíces: Databricks ya tiene una implementación libre de JVM de Apache Spark (Photon), mientras que nuevos formatos de tablas como Apache Iceberg también se están implementando desde nuestras raíces. alejándose. proporciona una característica abierta para catálogos de tablas, así como un enfoque más moderno para la capa de E/S.
Batalla de las metatiendas
Mientras que Hive se está convirtiendo lenta pero constantemente en una cosa del pasado y los formatos Open Table como Delta Lake e Iceberg se están volviendo omnipresentes, también se está reemplazando un elemento central en cualquier arquitectura de datos: el «meta-almacén». Es una capa indirecta entre los archivos de una tienda o sistema de archivos y las tablas y entidades que representan.
Si bien los formatos de tablas son abiertos, parece que sus metatiendas se están volviendo cada vez más propietarias y cerradas.
Databricks está impulsando fuertemente a los usuarios a su catálogo Unity, AWS tiene Glue y Snowflake tiene su propia implementación de catálogo. Estos son incompatibles y, en muchos sentidos, se convierten en un punto de venta para los usuarios que buscan aprovechar la apertura que ofrecen los nuevos formularios tabulares. soy un creer que en algún momento el péndulo retrocederá, a medida que los usuarios avancen hacia una mayor estandarización y flexibilidad.
La ingeniería de Big Data como práctica crecerá
A medida que proliferan el análisis y la ingeniería de datos, crece el conjunto de conocimientos colectivos y comienzan a surgir mejores prácticas.
Para 2023, habremos visto herramientas que desarrollan un enfoque estructurado de prueba y lanzamiento donde la ingeniería de datos se vuelve cada vez más frecuente. dbt es muy popular y está establecido. El seguimiento y el seguimiento ahora se consideran algo más que el bienestar animal, a juzgar por el éxito de herramientas como Great Expectations, Monte Carlo y otras plataformas de seguimiento y calidad. lakeFS aboga por el control de versiones de datos para permitir la ramificación y consolidación tipo git, lo que permite construir canales de desarrollo, prueba y lanzamiento sólidos y repetibles.
Además, ahora también estamos viendo patrones como Data Mesh y Data Products desarrollados por todos, desde Snowflake y Databricks hasta nuevas empresas que surgen para llenar el vacío de herramientas que todavía existe en torno a estos patrones.
Creo que veremos muchas herramientas en 2024 que apuntan a ayudarnos a lograr estos objetivos en 2024. Desde el monitoreo y el registro centrados en datos hasta las pruebas de productos y mejores opciones de CI/CD, hay mucho que ver con las prácticas de ingeniería de software. , y este es el momento adecuado para cerrar estas brechas.
Predicciones de la capa de publicación
Las aplicaciones nativas de la nube cambiarán gran parte de su estado al almacenamiento de objetos: A finales de 2023, AWS anunció que una de las funciones más importantes desde su creación en 2006 llegaría a S3, su principal servicio de almacenamiento.
Esa característica, «S3 Express One-Zone», permite a los usuarios utilizar la misma * API de almacenamiento estándar proporcionada por S3, pero con una latencia constante de milisegundos de un solo dígito para el acceso a los datos. Aproximadamente la mitad del costo de las llamadas API.
Esto representa un cambio dramático. Hasta ahora, los casos de uso para almacenar cosas han sido un poco limitados: si bien permiten almacenar datos prácticamente ilimitados, tienes que lidiar con tiempos de acceso más prolongados, incluso si solo buscas leer pequeños detalles.
Obviamente, esta compensación lo ha hecho muy popular para el análisis y el procesamiento de big data, donde la latencia suele ser menos importante que el rendimiento general, pero significa que los sistemas de baja latencia, como las bases de datos, HPC y las aplicaciones orientadas al usuario, realmente no pueden funcionar por sí solos. . Confía en ellos. como parte de su camino crítico.
Si hicieran uso del almacén de objetos, normalmente sería en forma de archivo o repositorio de almacenamiento. Si desea un acceso rápido, debe elegir un dispositivo de bloque, que de alguna manera dependa de su instancia, y renunciar a los beneficios de escalabilidad y estabilidad que brindan las tiendas de productos básicos.
Creo que S3 Express One-Zone es el primer paso para cambiar eso.
Con lectura continua y baja latencia, ahora es teórico es posible crear bases de datos totalmente respaldadas por un almacén de objetos que nunca dependan del almacenamiento en bloques. S3 es la nueva unidad de disco.
Con eso en mente, predigo que en 2024 veremos más bases de datos operativas comenzar a adoptar ese concepto en la práctica: permitir que las bases de datos se ejecuten en entornos informáticos totalmente persistentes, solo para la persistencia confiar en la tienda de artículos.
Los datos laborales comenzarán a separarse
Con la predicción anterior en mente, podemos llevar este enfoque un paso más allá: ¿qué pasaría si estandarizáramos la capa de almacenamiento para OLTP de la misma manera que la estandarizamos para OLAP?
Una de las mayores promesas del Data Lake es la capacidad de separar el almacenamiento y la computación, de modo que los datos escritos por una tecnología puedan ser leídos por otra tecnología.
Esto brinda a los desarrolladores la libertad de elegir la mejor pila que mejor se adapte a su caso de uso. Tomó un tiempo llegar allí, pero con tecnologías como Apache Parquet, Lake Delta y Apache Iceberg, ahora es posible.
¿Qué pasa si estandarizamos los métodos utilizados para acceder a los datos operativos? Imaginemos una abstracción clave/valor (¿quizás similar a LSM sstables?) que permita almacenar pares clave-valor regulares, ubicados de manera óptima para almacenar objetos.
Podemos configurar un RDBMS sin estado para proporcionar análisis/planificación/ejecución de consultas además, incluso como una función lambda bajo demanda. Otro sistema podría usar la misma abstracción de almacenamiento para almacenar un índice invertido para búsqueda, o un índice de similitud vectorial para una buena aplicación creativa de IA.
Si bien no creo que dentro de un año ejecutemos todas nuestras bases de datos como funciones lambda, creo que veremos una transición de «almacenamiento de objetos como una matriz de archivos» a «almacenamiento de objetos como un sistema de archivo». . ”también ocurre en bases de datos de trabajo.
Pensamientos finales
Soy optimista de que en 2024 el panorama de los datos seguirá evolucionando principalmente en la dirección correcta: mejores abstracciones, mejores conexiones entre diferentes partes de la pila y nuevas capacidades abiertas por el progreso tecnológico.
Sí, no siempre será perfecto y la facilidad de uso se cambiará por una menor flexibilidad, pero después de haber visto crecer este ecosistema durante las últimas dos décadas, creo que estamos en mejor forma que nunca.
Tenemos más opciones, mejores protocolos y herramientas, y una barrera de entrada más baja que nunca. Y no creo que eso vaya a cambiar.
Sobre el autor: Oz Katz es el cofundador y director de tecnología de Treeverse, la empresa detrás del lago que proporciona versiones de código abierto. controlar lagos de datos mediante operaciones similares a Git.
Artículos relacionados:
2024 y el riesgo de una ola logarítmica de IA
Predicciones de gestión de datos para 2024
Catorce predicciones de Big Data para 2024