继我们上篇文章《在AWS Glue中使用Apache Hudi》介绍了如何在Glue中同步Hudi元数据之后,本文我们再简短截说一下Hudi在EMR上的元数据同步。

首先,EMR对于元数据的存储提供两种方案:一是标准的Hive Metastore ,将元数据存储在一个外置关系型数据库上;二是使用Glue Catalog。显然,如果使用标准Hive Metastore,我们不必担心Hudi同步元数据有任何问题,需要我们确认的是在EMR使用Glue Catalog时,应该如何配置元数据同步。

先说结论:当EMR使用Glue Catalog时,Hudi依然可以正常同步元数据到Hive,不必做特殊配置,尤其是不必像在Glue中那样配置DataSourceWriteOptions.HIVE_USE_JDBC_OPT_KEY -> "false"。原因很简单,虽然EMR使用了Glue Catalog,但EMR上却有Glue上没有的HiveServer2服务,也就意味着Hudi可以通过JDBC与Glue Catalog交互。这背后的原因同样是因为EMR让HiveServer2使用AWSCatalogMetastoreClient与Glue Catalog交互,关于这一点,请参考《在AWS Glue中使用Apache Hudi》一文的 《3.4. 将Hudi元数据同步到Glue Catalog》

再延伸一下,如果我们在EMR中配置了DataSourceWriteOptions.HIVE_USE_JDBC_OPT_KEY -> "false"会怎样呢?在EMR 5上依然是可以正常工作的,只是同步方式从JDBC改为了由AWSCatalogMetastoreClient实现的IMetastoreClient,这与在Glue上使用Hudi的方式是一致的。但是,有一点要注意,在目前的EMR 6 + Hudi 0.7版本上,如果配置了DataSourceWriteOptions.HIVE_USE_JDBC_OPT_KEY -> "false",会报如下错误:

java.lang.ClassNotFoundException: org.apache.calcite.rel.type.RelDataTypeSystem

这是由于Hive3/Spark3移除了对于calcite包的依赖引起的,所以不建议在EMR上配置DataSourceWriteOptions.HIVE_USE_JDBC_OPT_KEY -> "false",这与Glue中的配置是完全相反的,因为Glue的Spark版本是2.4.3


关于作者:耿立超,架构师,15年IT系统开发和架构经验,对大数据、企业级应用架构、SaaS、分布式存储和领域驱动设计有丰富的实践经验,热衷函数式编程。对Hadoop/Spark 生态系统有深入和广泛的了解,参与过Hadoop商业发行版的开发,曾带领团队建设过数个完备的企业数据平台,个人技术博客:https://laurence.blog.csdn.net/ 作者著有《大数据平台架构与原型实现:数据中台建设实战》一书,该书已在京东和当当上线。

Apache Hudi在AWS Glue和AWS EMR上同步元数据的异同相关推荐

  1. aws rds监控慢sql_如何将AWS RDS SQL Server与AWS Glue连接

    aws rds监控慢sql This article gives you an overview of configuring AWS RDS SQL Server with AWS Glue ser ...

  2. aws rds恢复数据库_使用AWS Glue将数据从AWS S3加载到AWS RDS SQL Server数据库

    aws rds恢复数据库 This article explains how to develop ETL (Extract Transform Load) jobs using AWS Glue t ...

  3. Apache+Hudi入门指南: Spark+Hudi+Hive+Presto

    一.整合 hive集成hudi方法:将hudi jar复制到hive lib下 cp ./packaging/hudi-hadoop-mr-bundle/target/hudi-hadoop-mr-b ...

  4. 使用Apache Hudi + Amazon S3 + Amazon EMR + AWS DMS构建数据湖

    1. 引入 数据湖使组织能够在更短的时间内利用多个源的数据,而不同角色用户可以以不同的方式协作和分析数据,从而实现更好.更快的决策.Amazon Simple Storage Service(amaz ...

  5. Apache Hudi 0.7.0 和 0.8.0 新功能已在 Amazon EMR 中可用

    文末限时福利倒计时3天,不要错过! 前言 Apache Hudi 是一个开源事务性数据湖框架,通过提供记录级插入.更新和删除功能,极大地简化了增量数据处理和数据管道开发.如果您要在 Amazon Si ...

  6. 基于Apache Hudi构建智能湖仓实践(附亚马逊工程师代码)

    数据仓库的数据体系严格.治理容易,业务规模越大,ROI 越高:数据湖的数据种类丰富,治理困难,业务规模越大,ROI 越低,但胜在灵活. 现在,鱼和熊掌我都想要,应该怎么办?湖仓一体架构就在这种情况下, ...

  7. Apache Flink 集成 Apache Hudi 快速入门指南

    摘要:本文由阿里巴巴的陈玉兆分享,主要介绍 Flink 集成 Hudi 的最新版本功能以及快速上手实践指南.内容包括: 背景 环境准备 Batch 模式的读写 Streaming 读 总结 一.背景 ...

  8. 探索Apache Hudi核心概念 (1) - File Layouts

    在以往众多介绍Apcache Hudi的文章中,对核心概念的解读大多会引用官方文档中的概念图,像Timeline(时间线).File Layouts(文件布局)这类结构清晰,逻辑严谨的概念,图解是很好 ...

  9. 技术干货|基于Apache Hudi 的CDC数据入湖

    简介:阿里云技术专家李少锋(风泽)在Apache Hudi 与 Apache Pulsar 联合 Meetup 杭州站上的演讲整理稿件,本议题将介绍典型 CDC 入湖场景,以及如何使用 Pulsar/ ...

最新文章

  1. wxWidgets刚開始学习的人导引(3)——wxWidgets应用程序初体验
  2. Api 函数: GetCursorPos 与转换
  3. mysql workbench ssh_通过MySQL Workbench进行SSH隧道
  4. 微盟数据库的涅槃之旅
  5. 工控交换机和工业级交换机是怎么区别的,具体有哪些区别?分别应用在什么领域?
  6. 遥控开关,4G远程控制增氧机,智慧农渔更轻松!
  7. pythonrsv分割_大数据经验
  8. CryptoQuant CEO:OKEx暂停提款对比特币价格影响不大
  9. 怎么查询服务器绑定的网站吗,服务器绑定网站吗
  10. sql server高可用_SQL Server始终在线可用性组采访问题与解答
  11. Linux中的挂载命令
  12. qtp(QuickTest Professional)的下载安装
  13. 道通诉大疆337调查之专利分析
  14. 英文期刊催稿信模板_SCI论文催稿信模板
  15. 海康威视校招C++岗面经
  16. Java线程状态总结
  17. 解决outlook 一直卡在加载配置文件界面的解决方法
  18. const 定义数组问题
  19. 悟空(wukong)搜索引擎源代码阅读(待续)
  20. Verilog -- 有符号与无符号的加法和乘法运算

热门文章

  1. idea中选中操作快捷键总结
  2. python中 .py .pyc .pyw .pyo .pyd各后缀文件区别
  3. 秋季喝什么茶对身体好
  4. 教你使用Android SDK布局优化工具layoutopt
  5. ffmpeg android mac,Mac上交叉编译ffmpeg For Android
  6. Android模拟器无法联网 模拟器DNS设
  7. 判断两个时间段交集、时间重叠问题
  8. Phonetic symbol 辅音 - 浊辅音 -- /ð/
  9. 买白酒时,看清瓶身“这行字”,轻松分辨勾兑酒和纯粮酒
  10. 计算机视觉-图像识别分类线性分类器