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")
相关推荐
海兰2 小时前
Elasticsearch 9.x 本地RAG个人知识库实操
大数据·elasticsearch·搜索引擎
Drifter_yh8 小时前
【黑马点评】Redisson 分布式锁核心原理剖析
java·数据库·redis·分布式·spring·缓存
一只鹿鹿鹿8 小时前
智慧水利一体化建设方案
大数据·运维·开发语言·数据库·物联网
Elastic 中国社区官方博客10 小时前
使用 Elastic 进行网络监控:统一网络可观测性
大数据·开发语言·网络·人工智能·elasticsearch·搜索引擎·全文检索
海兰11 小时前
Elasticsearch 9.x 借助神经模型优化中文文本分析
大数据·elasticsearch·搜索引擎
500佰15 小时前
Hive常见故障多案例FAQ宝典 --项目总结(宝典一)
大数据·linux·数据仓库·hive·hadoop·云计算·运维开发
家的尚尚签16 小时前
高定木作企业实践:案例分享与成果展示
大数据·人工智能·python
T062051417 小时前
【数据集】更新-各省平均受教育年限与学历结构数据(1993-2024年)
大数据