MAPREDUCE服务 MRS-Hudi写入小精度Decimal数据失败:回答

时间:2024-07-02 16:39:31

回答

原因:

Hudi表数据含有Decimal类型数据。

初始入库BULK_INSET方式会使用Spark内部parquet文件的写入类进行写入,Spark对不同精度的Decimal类型处理是不同的。

UPSERT操作时,Hudi使用Avro兼容的parquet文件写入类进行写入,这个和Spark的写入方式是不兼容的。

解决方案:

执行BULK_INSERT时指定设置“hoodie.datasource.write.row.writer.enable = false”,使hoodie采用Avro兼容的parquet文件写入类进行写入。

support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_24504.html