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")
相关推荐
金融小师妹15 分钟前
基于LSTM趋势预测的白银价格突破58美元阈值,年度累计涨幅超100%的强化学习驱动分析
大数据·人工智能·编辑器·1024程序员节
少许极端22 分钟前
Redis入门指南:从零到分布式缓存(一)
redis·分布式·缓存·微服务
DashVector34 分钟前
如何通过HTTP API删除Doc
大数据·后端·云计算
爬山算法1 小时前
Redis(161)如何使用Redis实现分布式锁?
数据库·redis·分布式
边缘计算社区1 小时前
云边协同推理再突破:新型分布式解码框架吞吐量提升近 10%
分布式
Light601 小时前
星火链智:领码SPARK融合平台与湖北数据知识产权综合服务平台全栈对接技术白皮书
大数据·零信任安全·领码spark·数据知识产权·ipaas集成·ai数据治理
beijingliushao1 小时前
100-Spark Local模式部署
大数据·python·ajax·spark
一水鉴天1 小时前
整体设计 定稿 之19 拼语言表述体系之2(codebuddy)
大数据·前端·人工智能·架构
大猫子的技术日记2 小时前
[后端杂货铺]深入理解分布式事务与锁:从隔离级别到传播行为
分布式·后端·事务
科技观察2 小时前
国产MATLAB替代软件的关键能力与生态发展现状
大数据·人工智能·matlab