大数跨境
0
0

官宣:Cloudera 数据平台引入 Apache Iceberg

官宣:Cloudera 数据平台引入 Apache Iceberg Apache Iceberg
2022-02-26
2
导读:数据大爆炸必须要有新的解决方案,这就是为什么我们很高兴在Cloudera数据平台(CDP)中引入下一代的大规模分析数据集表格格式——Apache Iceberg。



官宣Cloudera 数据平台中引入 Apache Iceberg



在过去的十年中,我们的客户成功部署了大规模的数据平台,这就像一个大数据飞轮,推动了更多数据的引入,应用更复杂的分析,并吸引了从业务分析师到数据科学家等许多新的数据实践者。这种前所未有的大数据工作负载带来了许多挑战。数据架构层就是这样一个领域,不断增长的数据集已经突破了可伸缩性和性能的极限。数据爆炸必须要有新的解决方案,这就是为什么我们很高兴在Cloudera数据平台(CDP)中引入下一代的大规模分析数据集表格格式——Apache Iceberg。今天,我们宣布了用于公共云CDP数据服务的Iceberg私有技术预览版(TP),包括clouddera数据仓库(CDW)和clouddera数据工程(CDE)。
Apache Iceberg是一种新的开放表格式,用于PB级的分析数据集。它被设计和开发为一个开放的社区标准,以确保跨语言和实现的兼容性。Apache Iceberg是开源的,是由Apache软件基金会开发的。Adobe、Expedia、LinkedIn、腾讯和Netflix等公司都发表了一些博客,介绍他们采用Apache Iceberg来处理大型分析数据集的情况。
为了满足对大型数据集的多功能分析,以及混合和多云部署提供的灵活性,我们将Apache Iceberg与CDP集成,以提供一个独特的解决方案,为我们的客户提供面向未来的数据架构。通过使用Iceberg优化各种CDP数据服务,包括CDW、CDE和Cloudera机器学习(CML), Cloudera客户可以使用SQL命令定义和操作数据集,使用时间旅行等功能构建复杂的数据管道,并部署从Iceberg表构建的机器学习模型。除了CDP的企业特性,如共享数据体验(SDX),跨混合云和多云的统一管理和部署,客户还可以受益于Cloudera对Apache Iceberg的贡献,这是用于大规模分析数据的下一代表格格式








012】
关键设计目标



当我们着手将 Apache Iceberg 与 CDP 集成时,我们不仅希望整合新表格格式的优势,而且还希望扩展其功能以满足现代化企业的需求,包括安全性和多功能分析。这就是我们设定以下创新目标的原因,这些目标将提高跨多功能分析平台的大规模数据集的可扩展性、性能和易用性:


  • 多功能分析:Iceberg 设计为开放式且与引擎无关,允许共享数据集。通过我们的贡献,我们扩展了对 Hive 和 Impala 的支持,实现了从大规模数据工程 (DE) 工作负载到快速 BI 和查询(在 DW 内)和机器学习 (ML) 的多功能分析数据架构的愿景.

  • 快速查询计划: 查询计划是在表中查找 SQL 查询所需文件的过程。在 Iceberg 中,Iceberg不是在表中以O(n) 列出分区(运行时的目录列表)以进行查询计划,而是以 O(1) 执行RPC 来读取快照。快速查询计划可实现更低延迟的 SQL 查询并提高整体查询性能。  

  • 统一安全: Iceberg 与统一安全层的集成对于任何企业客户来说都是至关重要的。这就是为什么从一开始我们就确保 SDX 的相同安全性和治理适用于 Iceberg 表。

  • 物理和逻辑布局分离: Iceberg 支持隐藏分区。用户不需要知道表是如何分区来优化 SQL 查询性能的。随着数据量的变化,Iceberg 表可以随着时间的推移演变分区模式。不需要昂贵的表重写,并且在许多情况下也不需要重写查询。 

  • 高效的元数据管理:与需要跟踪所有 Hive 表分区(分区键值对、数据位置和其他元数据)的 Hive Metastore(HMS)不同,Iceberg 分区将数据存储在文件系统上的 Iceberg 元数据文件中。它消除了 Metastore 和 Metastore 后端数据库的负载。 


在接下来的部分中,我们将仔细研究如何将 Apache Iceberg 集成到 CDP 中,以解决性能和易用性领域的关键挑战。我们还将讨论您对 TP 版本的期望以及客户可以从中受益的独特功能。



02
CDP 中的 Apache Iceberg: 我们的实践方式



Iceberg提供了一种定义良好的开放表格格式,可以插入到许多不同的平台中。它包括一个支持对快照进行原子更改的目录——这是确保我们知道对冰山表的更改是成功还是失败所必需的。此外,文件I/O实现提供了一种读/写/删除文件的方法——这是使用定义良好的API访问数据和元数据文件所必需的。


这些特性及其已有的实现使得将Iceberg集成到CDP非常简单。在CDP中,我们将冰山表和Hive表类型放在一起,它们都是我们SDX元数据和安全框架的一部分。通过利用SDX及其原生metastore,可以注册少量的目录信息来标识Iceberg表,并且通过保持交互的轻量级,可以扩展到大型表,而不会产生通常的元数据存储和查询开销。




03
多功能分析



在 SDX 中提供 Iceberg 表之后,下一步是启用执行引擎来利用新表。Apache Iceberg 社区有大量经验丰富的 Spark 开发人员,他们集成了执行引擎。另一方面,Hive 和 Impala 缺少与 Iceberg 的整合,所以 Cloudera 将这项工作贡献给了社区。


在过去的几个月里,我们在支持 Hive 写操作(在 Hive 已经可用的读操作之上)和 Impala 写操作方面取得了很大的进展。使用 Iceberg 表,可以更积极地对数据进行分区。例如,在重新分区的时候,我们的一个客户发现Iceberg表的性能比之前使用 Impala 查询的 Hive 外部表要好10倍。以前,这种激进的分区策略在 Metastore 表中是不可能的,因为大量的分区会使对这些表的任何查询的编译非常慢。这是 Iceberg 在如此大的规模下熠熠生辉的完美例子。




04
统一安全



将 Iceberg 表集成到 SDX 中还具有与 Ranger 集成的额外好处,您可以开箱即用。管理员可以利用 Ranger 可以限制特定用户组的完整表/列/行的能力。它们可以屏蔽列,并且可以在 Hive 和 Impala 中对列和值进行编辑/无效/散列。CDP 为 Iceberg 表细粒度访问控制提供了独特的功能,以满足企业客户对安全和治理的要求。



05
外部表转换



为了继续使用存储在外部表中的ORC、Parquet和Avro数据集,我们整合并增强了对这些表迁移到Iceberg表格式的支持,在Spark现有的基础上增加了对Hive的支持。表迁移将保留所有数据文件,不创建任何副本,只为它们生成必要的Iceberg元数据文件,并在一次提交动作中发布它们。一旦迁移成功完成,后续对表的所有读和写操作都将通过Iceberg,对表的更改将开始生成新的提交。



06
下一步做什么



首先,我们将关注额外的性能测试,以检查和消除我们发现的任何瓶颈。这将贯穿以CDE和CDW开始的所有CDP数据服务。随着我们向GA迈进,我们将针对特定的工作负载模式,如使用Apache Iceberg的Spark ETL/ELT和Impala BI SQL分析。


在最初的GA版本之外,我们将扩展对其他工作负载模式的支持,以实现我们之前在这个新的数据体系结构上提出的多功能分析的愿景。这就是为什么我们热衷于增强Apache Iceberg与CDP的集成,包括以下功能:


  • ACID支持——冰山0.12在2021年8月发布了冰山v2格式,为ACID奠定了基础。为了利用新版本提供的新特性,比如行级删除,Hive和Impala的集成还需要进一步增强。有了这些新的集成,Hive和Spark将能够在Iceberg v2表上运行UPDATE、DELETE和MERGE语句,而Impala也将能够读取这些语句。


  • 表复制—灾难恢复和性能是企业客户的关键特性。冰山表的目标是易于复制,但仍需要与CDP复制管理器进行集成,以实现无缝的用户体验。


  • 表管理——通过避免文件List和相关操作成本,Iceberg表能够比Hive ACID表存储更长的历史。我们将启用自动快照管理和压缩功能,通过只保留相关的快照并将数据重构为查询优化的格式,进一步提高冰山表查询的性能。


  • 时间旅行——我们还考虑了一些额外的时间旅行特性,比如查询两个时间点之间的更改集(delta)(可能使用诸如between或since等关键字)。这些查询的确切语法和语义仍在设计和开发中。



05
准备好尝试了吗



如果您在处理大型数据集时遇到了挑战,或者想要利用通过快照和时间旅行管理数据集的最新创新,我们强烈建议您尝试CDP,亲眼看看Apache Iceberg在混合云、多功能分析平台中的好处。如果您有兴趣了解更多关于Apache Iceberg与CDP集成的信息,请联系您的客户团队。

END


原文地址 | https://blog.cloudera.com/introducing-apache-iceberg-in-cloudera-data-platform/

 作者 |  Bill Zhang, Shaun Ahmadian, Peter Vary, Marton Bod, and Wing Yew Poon


声明:以上内容源于网络,如有侵权,请联系删除!

精彩文章




Docker、Spark 和 Iceberg:体验 Iceberg 的最快方式!
Apache Iceberg 简介
回顾 | Apache Flink x Iceberg Meetup · 上海站精彩回顾 (附PPT下载)
汽车之家:基于 Flink + Iceberg 的湖仓一体架构实践
Flink + Iceberg 在去哪儿的实时数仓实践





点击此处“阅读全文”查看原文
【声明】内容源于网络
0
0
Apache Iceberg
为你提供 Iceberg 社区资讯、功能特性以及技术分享。
内容 100
粉丝 0
Apache Iceberg 为你提供 Iceberg 社区资讯、功能特性以及技术分享。
总阅读35
粉丝0
内容100