Spark streaming写入delta数据湖问题

问题1 一个batch运行时间过长

检查发现问题出现在merge写文件时间过长,一个batch本来应该是控制在1min。但项目上线到生产环境,检查spark streaming的job,发现数据在merge写入到数据湖时,往往超过1小时。继续排查,发现是一张表往往出现几百个小文件,影响数据写性能,故每天进行小文件合并操作。

  • . 优化小文件问题:

    sql 复制代码
    optimize delta.`dbfs:/your_mount_path/` 
  • 增加分区:

    python 复制代码
    df = spark.read.format('delta').load("abfs:/your_history_path")
    df = df.withColumn('CDC_DATE', df['cdc_timestamp'].cast('date'))
    df.write.partitionBy('CDC_DATE').mode('overwrite').option('overwriteSchema', 'true').format('delta').save("abfs:/your_partitioin_path")
相关推荐
名不经传的养虾人9 分钟前
从0到1:企业级AI项目迭代日记 Vol.38|能演示的系统,和能日常用的系统,差的是这五件事
大数据·人工智能·ai编程·企业ai·多agent协作
小小王app小程序开发12 分钟前
陪诊小程序开发功能深度分析:功能架构、业务逻辑与落地要点
大数据·架构
Yang961113 分钟前
鼎讯信通 RM-1000:助力风电信号覆盖与设备稳定运行
大数据·网络
仙俊红30 分钟前
rocketmq学习
大数据·学习·rocketmq
星辰_mya35 分钟前
数据同步的几种姿势
大数据·elasticsearch·搜索引擎
卷毛迷你猪1 小时前
快速实验篇(A5)基于 MapReduce 的降水百分位数计算与干旱等级划分
大数据·mapreduce
Volunteer Technology1 小时前
Flink的DataStream分区操作
大数据·linux·flink
米云科技1 小时前
小红书客服软件支持多账号吗?米多客高效解决跨账号管理难题
大数据·人工智能
曾阿伦1 小时前
Elasticsearch Analyzer 分析器开发指南
大数据·elasticsearch·搜索引擎
庞白OS2 小时前
一次ds对话
大数据·人工智能