Azure Databricks 集群合并小文件与删除过多的历史版本

原因是:databricks 集群的数据底层是HDFS虽然是spark做为引擎读写如果没有及时合并也一样会因为小文件问题造成大量的资源消耗,也就会越来越慢。目前采用的主要方式,定时合并,与版本删除

1、python 脚本如下有用到的同学可以参考下

bash 复制代码
# 合并
for database_name in database_list:
    sqlQueryShowTables = "SHOW TABLES FROM {0}".format(database_name)
    tablesDF = spark.sql(sqlQueryShowTables).collect()

    for table in tablesDF:
        sqlOptimizeTable = "OPTIMIZE {0}.{1}".format(database_name, table['tableName'])
        try:
            spark.sql(sqlOptimizeTable)
            print("INFO: Optimize table {0}.{1} completed.".format(database_name, table['tableName']))
        except Exception as e:
            print("ERROR: Optimize table {0}.{1} failed.".format(database_name, table['tableName']))
bash 复制代码
# 删除多的版本
for database_name in database_list:
    sqlQueryShowTables = "SHOW TABLES FROM {0}".format(database_name)
    tablesDF = spark.sql(sqlQueryShowTables).collect()

    for table in tablesDF:
        sqlVACUUMTable = "VACUUM {0}.{1} RETAIN 168 HOURS".format(database_name, table['tableName'])
        try:
            spark.sql(sqlVACUUMTable)
            print("INFO: VACUUM table {0}.{1} completed.".format(database_name, table['tableName']))
        except Exception as e:
            print("ERROR: VACUUM table {0}.{1} failed.".format(database_name, table['tableName']))

2、在workflows 设置好定时器就行了,

相关推荐
枫叶丹44 分钟前
【HarmonyOS 6.0】ArkUI Scroll组件新特性:手势缩放能力全解析
microsoft·华为·harmonyos
IOFsmLtzR3 小时前
Flink Agents 源码解读 --- (5) --- ActionExecutionOperator
microsoft·flink·wpf
小邓睡不饱耶5 小时前
花店花品信息管理系统开发实战:Python实现简易门店管理系统
服务器·python·microsoft
竹之却7 小时前
【Microsoft Store】解决微软商店无法打开,MicrosoftStore 初始化失败,请尝试刷新 或稍后返回
microsoft·微软商店·microsoft store
Wave8458 小时前
LVGL—组件介绍
microsoft
Ashmcracker10 小时前
Codex Desktop如何接入Azure OpenAI?AI Foundry部署GPT‑5.3‑codex 实操
人工智能·gpt·microsoft·azure
公子小六10 小时前
基于.NET的Windows窗体编程之WinForms布局简介
windows·microsoft·c#·.net
weitingfu10 小时前
Excel VBA 入门到精通(一):宏录制与 VBE 环境详解
microsoft
zhengyquan10 小时前
微软砸1.6万亿日元布局日本AI!
人工智能·microsoft
七夜zippoe10 小时前
OpenClaw 消息工具详解:多渠道消息发送实战指南
人工智能·microsoft·多渠道·互动·openclaw