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 设置好定时器就行了,

相关推荐
海森大数据10 小时前
微软发布AI Agent五大可观测性实践,专治智能体“盲跑”难题
人工智能·microsoft
a5876913 小时前
消息队列(MQ)初级入门:详解RabbitMQ与Kafka
java·分布式·microsoft·面试·kafka·rabbitmq
拓端研究室13 小时前
专题:2025人形机器人、工业机器人、智能焊接机器人、扫地机器人产业洞察报告 | 附158+份报告PDF、数据仪表盘汇总下载
microsoft·机器人·pdf
Webb Yu13 小时前
Azure Databricks 实践:数据分析、机器学习、ETL 与 Delta Lake
机器学习·数据分析·azure
央链知播2 天前
双轮驱动 六方协同--“可信资产IPO+数链金融RWA“链改2.0深圳共识发布
microsoft·金融
Linux运维技术栈2 天前
Terraform 从入门到实战:历史、原理、功能与阿里云/Azure 上手指南
运维·阿里云·kubernetes·azure·terraform
Liquad Li2 天前
Azure Data Factory (ADF) vs Azure Logic Apps: 对比分析
microsoft·azure
Liquad Li2 天前
Azure Logic App 与 Azure Function 对比分析
microsoft·azure
爱睡觉的圈圈2 天前
突破反爬限制:动态IP轮换策略与实现
windows·tcp/ip·microsoft
fdc20172 天前
Avalonia:使用附加属性实现命令与事件的绑定
javascript·windows·microsoft