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

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

# 合并
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']))
# 删除多的版本
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 设置好定时器就行了,

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-13 13:46:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-13 13:46:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-13 13:46:02       82 阅读
  4. Python语言-面向对象

    2024-03-13 13:46:02       91 阅读

热门阅读

  1. Redis 订阅发布(Pub/Sub) 详解 如何使用订阅发布

    2024-03-13 13:46:02       48 阅读
  2. 1261. 在受污染的二叉树中查找元素

    2024-03-13 13:46:02       41 阅读
  3. apisix http请求转发插件by lua

    2024-03-13 13:46:02       37 阅读
  4. python面向对象练习二

    2024-03-13 13:46:02       43 阅读
  5. pytorch升级打怪(二)

    2024-03-13 13:46:02       38 阅读
  6. room数据库升级

    2024-03-13 13:46:02       38 阅读
  7. Centos7 使用docker来部署mondb

    2024-03-13 13:46:02       43 阅读