parquet文件上传到hdfs_将之前的parquet存储在hdfs的表改成delta

随着Delta Lake的采用,作者计划将之前以Parquet格式并按pt分区存储的报表转换为Delta格式。转换过程包括:1) 执行转换代码,使Parquet文件夹出现_delta_log目录,标志转换成功;2) 更改数据写入方式,从直接写入Parquet文件变为写入Delta;3) 更新数据读取方式,从spark.read.format("parquet")改为spark.read.format("delta")。完成这些步骤即可将Parquet分区表转换为Delta分区表。
摘要由CSDN通过智能技术生成

随着delta lake的逐渐引入,打算将之前生成的分区报表 改成 delta。

流程上:

一:执行 转换操作 代码。

# 转换位于路径 /path/to/table 下的 Parquet 分区表,分区列是名为 part 的 integer 列DeltaTable.convertToDelta(spark, "parquet.`/user/hive/warehouse/nifi.db/vn9/ge_v9_bi_disp_detail`", "pt int")

这步操作,就是将 xxx1这张分区表,以 pt 分区,parquet格式存储的数据 改成了 delta存储。

执行后的样子是

105d86f5f3fa11e68a75c675c02263ce.png

文件夹下会出现一个 _delta_log 这个目录,表示已经转换成功了。

二:数据写入

之前的结果是通过parquet写入,删除hdfs的文件等,现在变成delta了,这里需要变更下。

        val filterSql = "pt>=" + fromTime.substring(0, 8) + " and pt=20200303 and pt<20200304"DeltaTable.forPath(s1, writePath)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值