首页 > 其他分享 >谷歌云 | BigQuery 现在支持用于查询开放表格式的清单文件

谷歌云 | BigQuery 现在支持用于查询开放表格式的清单文件

时间:2023-08-11 20:02:48浏览次数:44  
标签:Hudi 谷歌云 Lake BigQuery 连接器 Delta 清单

【本文由Cloud Ace整理发布。Cloud Ace是谷歌云全球战略合作伙伴,拥有 300 多名工程师,也是谷歌最高级别合作伙伴,多次获得 Google Cloud 合作伙伴奖。作为谷歌托管服务商,我们提供谷歌云、谷歌地图、谷歌办公套件、谷歌云认证培训服务。】

开放表格式依赖嵌入式元数据来提供事务一致的 DML 和时间旅行功能。它们保留不同版本的数据文件,并且能够生成清单,清单是表示时间点快照的数据文件列表。 许多数据运行时(例如Delta Lake和Apache Hudi)都可以生成清单,可用于加载和查询用例。BigQuery 现在支持清单文件,这将使使用 BigQuery 查询开放表格式变得更加容易。

BigQuery 支持 SymLinkTextInputFormat 中的清单文件,它只是一个以换行符分隔的 URI 列表。客户现在可以在表选项中将 file_set_spec_type 标志设置为NEW_LINE_DELIMITED_MANIFEST,以指示提供的 URI 是换行符分隔的清单文件,每行一个 URI。此功能还支持 Hive 式分区表的分区修剪,从而提高性能并降低成本。

以下是使用清单文件创建 BigLake 表的示例。 1.jpg

使用清单支持查询 Apache Hudi

Apache Hudi是一个用于大数据工作负载的开源数据管理框架。它构建在 Apache Hadoop 之上,提供了一种管理 Hadoop 分布式文件系统 (HDFS) 或任何其他云存储系统中的数据的机制。

可以使用Hudi-BigQuery Connector从 BigQuery 作为外部表查询 Hudi 表。Hudi-BigQuery 集成仅适用于 hive 样式分区的写入时复制表。该实现不允许使用一些重要的查询处理优化,这会损害性能并增加槽消耗。

为了克服这些痛点,Hudi-BigQuery 连接器进行了升级,以利用 BigQuery 的清单文件支持。以下是使用连接器查询 Apache Hudi 工作负载的分步过程。

第 1 步:下载并构建 BigQuery Hudi 连接器

下载并构建最新的 hudi-gcp-bundle 以运行BigQuerySyncTool。

步骤 2:运行 Spark 应用程序以生成 BigQuery 外部表

以下是使用清单方法使用连接器的步骤:

  • 删除 BigQuery 中表示 Hudi 表的现有视图 [如果使用旧实现]
    • Hudi 连接器查找表名,如果存在,它只会更新清单文件。由于架构不匹配,查询将开始失败。确保在触发最新的连接器之前删除视图。
  • 运行最新的 Hudi Connector 来触发清单方法
    • 使用 --use-bq-manifest-file 标志运行 BigQuerySyncTool。
    • 如果您要从旧实现过渡,请将 --use-bq-manifest-file 标志附加到运行现有连接器的当前 Spark 提交。建议使用相同的表名称,因为它将允许保留现有的下游管道代码。
    • 使用 use-bq-manifest-file 标志运行连接器将以 BigQuery 支持的格式导出清单文件,并使用它来创建具有 --table 参数中指定的名称的外部表。 以下是清单方法的 Spark 提交示例。 2.png

步骤 3:推荐:升级到加速 BigLake 表

运行大规模分析的客户可以将外部表升级到 BigLake 表,以设置适当的细粒度控制,并通过利用元数据缓存和物化视图来加速这些工作负载的性能。

使用清单支持查询 Delta Lake

Delta Lake是一个开源存储框架,可以构建 Lakehouse 架构。它使用基于文件的事务日志扩展了 Parquet 数据文件,以实现 ACID 事务和可扩展的元数据处理。它还提供了导出清单文件的选项,其中包含表示时间点快照的数据文件列表。

借助清单支持,用户可以创建 BigLake 表来查询 GCS 上的 Delta Lake 表。每当底层 Delta Lake 表发生更改时,用户有责任生成清单,并且此方法仅支持查询 Delta Lake reader v1 表。

以下是使用清单支持查询 Delta Lake 表的分步过程。

步骤 1:使用 Apache Spark 生成 Delta 表的清单

Delta Lake 支持导出清单文件。生成命令在 <path-to-delta-table>/_symlink_format_manifest/ 生成清单文件。此目录中的文件将包含读取 Delta 表快照时应读取的数据文件(即 Parquet 文件)的名称。 3.jpg

步骤 2:在生成的清单上创建 BigLake 表

使用上一步生成的清单文件创建基于BigLake 表的清单文件。如果底层 Delta Lake 表已分区,您可以创建 Hive 样式分区 BigLake 表。

4.png

步骤 3:推荐:升级到加速 BigLake 表

在 Delta Lake 工作负载上运行大规模分析的客户可以通过利用元数据缓存和物化视图来提高性能。

下一步是什么?

如果您是 OSS 客户,希望在 GCS 上查询 Delta Lake 或 Apache Hudi 工作负载,请利用清单支持,如果您还希望进一步提高性能,则可以通过利用元数据缓存和物化视图来实现。

标签:Hudi,谷歌云,Lake,BigQuery,连接器,Delta,清单
From: https://blog.51cto.com/u_15961229/7051396

相关文章

  • 海外优秀学习资源清单
    随着网络的快速发展,我们现在获取知识的资源可谓琳琅满目,但是优质的资源却往往又难以筛选。所以下面作者整理出了33个优质的资源,如果你能持续阅读或者学习的话,相信你很快就会有质的飞跃!当然,你也可以根据你感兴趣的方向挑选其中几个进行关注,所谓弱水三千只取一......
  • 提升Python运行速度的必备工具清单
    提升Python运行速度的必备工具清单大家好呀!今天我要给大家分享一下可以让Python变得更快的工具清单。可能有些小伙伴一直在为Python的执行速度苦恼,今天就给大家分享一些实用的工具,可能能够帮到你哦!1.PyPy:PyPy是一个用JIT(即时编译)技术实现的Python解释器,相比于传统的CPython解释器,它......
  • 2023中国(合肥)场景创新峰会成功举办,全息网御被纳入《合肥市第二批场景能力清单》
    场景作为重要的城市资源,在驱动科技创新、产业发展、城市治理方面发挥着重要作用。近年来,为促进数字技术与实体经济深度融合,加速前沿科技转化落地、吸引全球创新资源集聚,合肥市聚焦“双找”:为产品找场景,为场景找产品,推进全领域、全市域、全流程场景应用创新工作,打造“全域场景应用创......
  • 软件开发项目文档清单(多套实际案例)
    写在前面:我花了一些时间整理了这些年从事软件行业以来的文档,将它们分类整理后,电脑瞬间变得更加简洁。我整理了数百份软件开发过程中的常用文档,包括项目计划、立项计划、需求分析、概要设计、详细设计、数据库设计、用户操作手册、测试计划、测试分析报告、开发进度报告、项目开发......
  • 学 AI 该学哪些斯坦福 CS 课程,这个清单安排得明明白白
    By超神经内容概要:斯坦福大学的计算机本硕毕业生MihailEric,梳理了人工智能专业所需要的基础课程和专业课程,并将其整理成四年的学习清单分享出来。关键词:网课分享斯坦福AI课程自2011年,MIT和斯坦福大学首次将课程发布至线上,至今已经有数百所学校的上千门课程,免费对全球公众开放......
  • 谷歌云 | 电子商务 | 如何更好地管理客户身份以支持最佳的用户体验
    【本文由CloudAce整理发布。CloudAce是谷歌云全球战略合作伙伴,拥有300多名工程师,也是谷歌最高级别合作伙伴,多次获得GoogleCloud合作伙伴奖。作为谷歌托管服务商,我们提供谷歌云、谷歌地图、谷歌办公套件、谷歌云认证培训服务。】零售商经常问自己的一个基本问题是他们对客户......
  • 调皮哥的资料清单 | 请各位雷达er,好生收藏~(截止5.13日前)
    本文编辑:@调皮连续波,保持关注调皮哥,获得更多学习内容和建议!一、雷达经典理论书籍1.雷达入门书籍(1)学雷达怎么入门?雷达专业必备的理论书籍(PDF电子版,后台回复可下载,调皮哥强烈推荐)!2.雷达进阶书籍(1)调皮哥:再给大家分享一些雷达相关的书籍(PDF免费下载)(2)知乎答疑|雷达信号处理中的距离维F......
  • 金三银四跳槽季,程序员最常用的招聘网站清单来了!
    无论你是刚刚走出学校的毕业生,还是在职场摸爬滚打多年的打工人,除非已经拿到了那份让人艳羡的铁饭碗,否则,求职和跳槽这两个话题,怎么都不可能绕过去。如果你正在苦恼,不知道哪里可以找到适合的工作。别急,这篇文章可能为你打开新思路的大门。这篇文章主要给程序员列举一些用得上的招聘平......
  • SQLFlow——除了 Google 的 BigQueryML,微软基于 SQL Server 的 AI 扩展,以及 Teradata
    蚂蚁金服开源机器学习工具SQLFlow,技术架构独家解读2019-05-15· SQLFlow · #SQLFlow5月6日,在 QCon全球软件开发大会(北京站)2019 上,蚂蚁金服副CTO胡喜正式宣布开源机器学习工具SQLFlow,他在演讲中表示:“未来三年,AI能力会成为每一位技术人员的基本能力。我们希望通过开......
  • 应用谷歌云实现高效视频转码和分发
    了解音视频技术大会更多信息编者按:MeshCloud通过与GCP合作为中国出海企业提供强大的全球基础架构。今天LiveVideoStack公开课通过MeshCloud邀请到了谷歌云的于有志老师,为我们介绍如何借助谷歌云在高效视频转码和分发方面的技术与能力,实现海外音视频业务的快速与高质量部署。文/于有......