A medida que el volumen y la velocidad de los datos siguen creciendo, el grado de complejidad y procesamiento en la canalización de datos sigue creciendo simultáneamente. Delta Lake está diseñado por Databricks para manejar tanto el procesamiento por lotes como el de flujo, así como las preocupaciones por la complejidad del sistema. Su objetivo es resolver estos problemas al proporcionar soluciones de canalización de datos de alto rendimiento, confiables y simples con capacidades transaccionales similares a ACID.
Según la documentación de Databricks, Delta Lake es una capa de almacenamiento de código abierto que brinda confiabilidad a los lagos de datos. Delta Lake proporciona transacciones ACID, manejo de metadatos escalables y unifica el procesamiento de datos por lotes y de flujo. Delta Lake se ejecuta sobre su lago de datos existente y es totalmente compatible con las API de Apache Spark.
Estructuración de Structured Streaming
A nivel conceptual, Structured Streaming trata los datos en vivo como una tabla que se va añadiendo continuamente. Lo mejor de Structured Streaming es que permite obtener rápidamente valor de los sistemas de streaming prácticamente sin cambios de código.
Structured Streaming nos permitió resolver casi todos los problemas con las transacciones ACID. Sin embargo, la creación de los pipelines con Structured Streaming solo resuelve parte del problema. Resolvió la falta de garantías ACID para las inserciones, pero los pipelines de datos requieren limpieza de datos, eliminaciones de GDPR y tareas de reprocesamiento de datos que siguen siendo un desafío.
Al reprocesar archivos en un directorio, es muy fácil eliminar archivos que necesita,
Por qué Delta Lake
Algunos de los problemas que enfrentan los ingenieros de datos al desarrollar canales de datos son el rendimiento de las consultas, la confiabilidad de los datos y la complejidad del sistema. Así es como Delta aborda estos desafíos:
Rendimiento de las consultas:
A medida que los datos crecen exponencialmente en tamaño, poder obtener información significativa de los datos se vuelve crucial. Mediante el uso de varias técnicas, Delta hace alarde de un rendimiento de las consultas varias veces más rápido que con Apache Spark en Parquet.
Delta administra los tamaños de los archivos de Parquet subyacentes para un uso más eficiente.
Delta Lake tiene una verificación de seguridad para evitar que ejecutemos un comando VACUUM peligroso. Sin embargo, si estamos seguros de las operaciones en nuestra tabla delta, podemos desactivar esta verificación de seguridad configurando la propiedad de configuración de Spark park.databricks.delta.retentionDurationCheck.enabled en falso.
Blogs Recientes