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

相关推荐
彧翎Pro11 小时前
ASP.NET Core 外部依赖调用治理实战:HttpClientFactory、Polly 与幂等边界
microsoft·asp.net·php
火山引擎开发者社区13 小时前
从监控盲区到业务洞察:深入解读 APMPlus 生产指标
大数据·人工智能·microsoft
好运的阿财13 小时前
OpenClaw四种角色详解
人工智能·python·程序人生·microsoft·开源·ai编程
Access开发易登软件14 小时前
在 Access 中实现 Web 风格 To Do List
前端·数据结构·microsoft·list·vba·access·access开发
宝桥南山14 小时前
GitHub Copilot - 尝试使用一下GitHub Copilot SDK
microsoft·ai·微软·github·aigc·copilot
步步为营DotNet14 小时前
解锁.NET 11 中 Microsoft.Extensions.AI 在智能后端开发的深度应用
人工智能·microsoft·.net
weixin_3077791315 小时前
使用COPY INTO从S3导入CSV文件到Azure Synapse Dedicated SQL Pool表的问题分析与自动化验证方案
sql·自动化·azure
diablobaal1 天前
云计算学习100天-第102天-Azure入门4
学习·云计算·azure
筱璦1 天前
期货软件开发 - C# 调用 HQChart 指标计算 C++ 动态库
c++·microsoft·c#
武藤一雄1 天前
C# 异常(Exception)处理避坑指南
windows·microsoft·c#·.net·.netcore·鲁棒性