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")
相关推荐
RFID舜识物联网6 小时前
RFID技术重构医疗试剂管理:从“人工时代”到“智能时代”的跨越
大数据·人工智能·科技·物联网·安全
BullSmall6 小时前
借助AI高效推动性能测试
大数据·人工智能
2501_943124057 小时前
认证护航品质,青岛福尔蒂新材料构建国际级材料安全体系
大数据·人工智能
一只努力的微服务7 小时前
【Calcite 系列】深入理解 Calcite 的 SetOpToFilterRule
大数据·数据库·calcite·优化规则
七夜zippoe7 小时前
Elasticsearch全文搜索与数据分析实战指南
大数据·python·elasticsearch·数据分析·全文搜索
diaya7 小时前
麒麟客Dengine-client-2.6.0.12-Linux-x64客户端部署配置并访问Dengine服务器端
大数据·时序数据库·tdengine
Mr -老鬼8 小时前
Go存储架构选型实战:单库、双库还是多库?——基于核心元数据+动态表场景的技术解析
大数据·架构·golang
乐迪信息8 小时前
乐迪信息:AI防爆摄像机识别船舶违规明火作业
大数据·人工智能·安全·计算机视觉·目标跟踪
D愿你归来仍是少年8 小时前
Apache Spark 第 3 章:核心概念 RDD / DataFrame
大数据·spark·apache
尽兴-8 小时前
大厂生产级 Redis 分布式锁:从原理到避坑实战
数据库·redis·分布式·分布式锁·setnx