华为云FusionInsight MRS实战:如何用DeltaStreamer实现Hudi实时数据入湖的最佳策略?

2026-05-17 01:481阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2310个文字,预计阅读时间需要10分钟。

华为云FusionInsight MRS实战:如何用DeltaStreamer实现Hudi实时数据入湖的最佳策略?

背景:传统大数据平台的架构是针对离线数据处理需求设计的。常用的数据导入方式是采用sqoop工具,通过定时作业批量导入数据。

数据需求:随着数据量增长,对实时性要求不断提高。因此,需要按小时甚至分钟级别不断优化数据。

数据:按小时或分钟级别的数据。

背景

传统大数据平台的组织架构是针对离线数据处理需求设计的,常用的数据导入方式为采用sqoop定时作业批量导入。随着数据分析对实时性要求不断提高,按小时、甚至分钟级的数据同步越来越普遍。由此展开了基于spark/flink流处理机制的(准)实时同步系统的开发。

然而实时同步从一开始就面临如下几个挑战:

  • 小文件问题。不论是spark的microbatch模式,还是flink的逐条处理模式,每次写入HDFS时都是几MB甚至几十KB的文件。长时间下来产生的大量小文件,会对HDFS namenode产生巨大的压力。
  • 对update操作的支持。HDFS系统本身不支持数据的修改,无法实现同步过程中对记录进行修改。
  • 事务性。不论是追加数据还是修改数据,如何保证事务性。即数据只在流处理程序commit操作时一次性写入HDFS,当程序rollback时,已写入或部分写入的数据能随之删除。

Hudi就是针对以上问题的解决方案之一。使用Hudi自带的DeltaStreamer工具写数据到Hudi,开启–enable-hive-sync 即可同步数据到hive表。

阅读全文

本文共计2310个文字,预计阅读时间需要10分钟。

华为云FusionInsight MRS实战:如何用DeltaStreamer实现Hudi实时数据入湖的最佳策略?

背景:传统大数据平台的架构是针对离线数据处理需求设计的。常用的数据导入方式是采用sqoop工具,通过定时作业批量导入数据。

数据需求:随着数据量增长,对实时性要求不断提高。因此,需要按小时甚至分钟级别不断优化数据。

数据:按小时或分钟级别的数据。

背景

传统大数据平台的组织架构是针对离线数据处理需求设计的,常用的数据导入方式为采用sqoop定时作业批量导入。随着数据分析对实时性要求不断提高,按小时、甚至分钟级的数据同步越来越普遍。由此展开了基于spark/flink流处理机制的(准)实时同步系统的开发。

然而实时同步从一开始就面临如下几个挑战:

  • 小文件问题。不论是spark的microbatch模式,还是flink的逐条处理模式,每次写入HDFS时都是几MB甚至几十KB的文件。长时间下来产生的大量小文件,会对HDFS namenode产生巨大的压力。
  • 对update操作的支持。HDFS系统本身不支持数据的修改,无法实现同步过程中对记录进行修改。
  • 事务性。不论是追加数据还是修改数据,如何保证事务性。即数据只在流处理程序commit操作时一次性写入HDFS,当程序rollback时,已写入或部分写入的数据能随之删除。

Hudi就是针对以上问题的解决方案之一。使用Hudi自带的DeltaStreamer工具写数据到Hudi,开启–enable-hive-sync 即可同步数据到hive表。

阅读全文