潜水深入的内部运作Lakehouse和三角洲湖
今年早些时候,砖写了博客,概述了越来越多的企业采用lakehouse模式。博客创建大量的技术爱好者的兴趣。虽然很多人称赞它是下一代数据架构,有些人认为Lakehouse湖是一样的数据。最近,我们的工程师和创业者的几个写一篇研究论文,描述的一些核心技术的挑战和解决方案设置Lakehouse范式除了数据湖,这是接受并发表在国际会议上非常大的数据库(VLDB) 2020。你可以看报纸,“三角洲湖:高性能酸表存储在云存储对象”,在这里。
亨利·福特的功劳往往被说:“如果我问别人他们想要什么,他们会说更快的马。”这句话的关键是人们经常想象一个更好的解决一个问题作为他们已经知道的进化,而不是完全重新思考解决问题的方法。在数据存储的世界,这种模式多年来一直上演。供应商继续试图彻底改造的旧马数据仓库和数据湖泊而不是寻求新的解决方案。
十多年前,云开了数据存储的新边疆。云商店像Amazon S3对象已经成为一些世界上最大的和最有效的存储系统,这使得他们一个有吸引力的平台来存储数据仓库和数据湖泊。bob体育客户端下载然而,他们的本性作为键值存储很难实现ACID事务,许多组织需要。同时,性能是由于昂贵的元数据操作(如清单对象)和有限保证一致性。
基于对象存储的特点,出现了三种方法。
数据的湖泊
第一个是目录的文件(即数据湖泊),存储表的对象集合,通常以柱状格式如Apache拼花。这是一个有吸引力的方法,因为桌子是一组对象,可以从各种各样的工具访问没有很多额外的数据存储或系统。然而,性能和一致性问题是常见的。隐藏数据腐败是常见的由于事务失败,最终一致性导致不一致的查询,延迟高,和基本管理功能表版本控制和审计日志等不可用。
定制的存储引擎
第二种方法是定制的存储引擎,如专有系统构建云像雪花的数据仓库。这些系统可以绕过湖泊的数据的一致性挑战管理元数据在一个单独的、强烈一致的服务,能够提供单一来源的真理。然而,所有I / O操作需要连接到这个服务元数据,它可以增加资源成本,减少性能和可用性。此外,它需要大量的工程实现等连接器现有计算引擎Apache火花,TensorFlow PyTorch,可以挑战数据团队使用各种数据计算引擎。工程挑战可以加剧了非结构化数据,因为这些系统通常是优化了传统的结构化数据类型。最后,也是最令人震惊的,专有的元数据服务将顾客锁定到某种特定的服务提供者,让客户应对持续高油价和昂贵,耗时迁移以后如果他们决定采用一种新方法。
Lakehouse
三角洲湖,一个开源酸表存储层云之上对象存bob下载地址储,我们试图建立一个汽车而不是更快的马不是一个更好的数据存储,但一个基本的变化如何通过lakehouse数据存储和使用。lakehouse是一种新模式,它结合了最好的湖泊和数据仓库的数据元素。Lakehouses启用了一个新的系统设计:实现类似的数据结构和数据管理功能在数据仓库中,直接在低成本存储用于数据的湖泊。他们是什么你会得到如果你不得不重新设计存储引擎在现代世界,现在,廉价和高可靠的存储(以对象的形式存储)是可用的。
三角洲湖维护信息哪些对象是三角洲的一部分表以酸的方式,使用写前日志,压实成拼花,这也是云存储在对象存储。这种设计允许客户机更新多个对象,替换对象与另一个的子集,等等,在一个可序列化的方式仍然达到高并行读/写性能的对象。日志还提供了显著加快大型表格数据集的元数据操作。此外,三角洲湖提供高级功能像时间旅行(即查询时间点快照或回滚错误更新),自动数据布局优化、插入、缓存和审计日志。在一起,这些特性提高处理数据的可管理性和性能在云对象存储,最终打开大门lakehouse范式,结合了数据仓库和数据的关键特性湖泊创造一个更好的,更简单的数据架构。
今天,三角洲湖跨成千上万的砖使用客户,每天处理eb的结构化和非结构化数据,以及许多组织在开源社区。bob下载地址这些用例跨各种数据源和应用程序。存储的数据类型包括变化数据捕获(CDC)从企业OLTP系统日志,应用程序日志、时间序列数据,图表,总表报告,为机器学习和图像或特征数据。应用包括SQL工作负载(最常见),商业智能,流媒体,数据科学、机器学习和图像分析。总的来说,三角洲湖已被证明是适合大多数数据湖的应用程序会使用结构化存储格式,如镶花或者兽人,和许多传统数据仓库的工作负载。
在这些用例,我们发现客户经常使用三角洲湖显著简化他们的数据架构通过运行更直接针对云对象存储工作负载,越来越多,通过创建一个lakehouse湖数据和事务特性代替部分或全部功能提供的消息队列(例如Apache卡夫卡),数据湖泊,或云数据仓库(如雪花,亚马逊红移)。
在研究论文,作者解释:
- 对象存储的特点和挑战
- 三角洲湖存储格式和访问协议
- 当前的功能、利益和三角洲湖的局限性
- 核心和专门的用例通常使用
- 性能实验,包括TPC-DS性能
通过本文,您将更好地了解三角洲湖以及它如何使各种DBMS-like性能和数据在低成本的云存储管理功能。以及如何三角洲湖存储格式和访问协议使其操作简单,高可用性,能够提供高带宽访问对象存储。