Delta lake底层提供了一种基于事务日志的机制来实现ACID的事务特性,能够实现读写数据的一致性,同时提供较高质量的数据保证。
在ACID事务的基础之上,Delta lake提供了更多的数据管理及性能优化特性,比如时间回溯、数据版本等,能够基于它的事务日志回溯到某个时间或某个版本的数据;同时还可以实现数据的高效。upsert和delete,以及可扩展的元数据管理的能力。
在大数据的场景下,元数据管理本身可能会成为一种负担,因为对于较大的表来说,元数据本身就能成为大数据。所以如何高效地支持元数据管理,也是对架构挑战。Delta lake事务日志场景下,元数据是以文件形式存储在事务log里,因此可以借助Spark这种大数据引擎,来实现数据元数据的扩展性。
同时Delta Lake还能够提供统一的流批方式,可以以统一的方式对数据的注入提供支持,上述实现的前提是说因为Delta Lake能够支持可串行化的隔离级别,实现一些典型的流式需求,比如CDC.同时,为了保证数据湖中的数据质量,Delta Lake也提供了Schema的强制约束以及自动演化的能力。
此外,在Delta Lake的商业版本里,还提供了数据库中的数据布局自动优化的能力,同时实现了传统数仓数据库一系列性能优化特性,比如缓存、索引等优化能力。
以上内容摘自《Databricks数据洞悉》电子书,点击https://developer.aliyun.com/topic/download?id=8545可下载完整版
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云EMR是云原生开源大数据平台,为客户提供简单易集成的Hadoop、Hive、Spark、Flink、Presto、ClickHouse、StarRocks、Delta、Hudi等开源大数据计算和存储引擎,计算资源可以根据业务的需要调整。EMR可以部署在阿里云公有云的ECS和ACK平台。