检查HIVE分区是否连续

检查HIVE分区是否连续

我们经常可能会有这样的诉求,需要对一张目标表进行分区检查,查看是否存在不连续的情况,该诉求频繁且重要,因此以下语句可以实现我们的诉求

场景描述

我们有一张表,表名 t_user_info,分区字段 ds,分区字段数据类型 String,分区数据格式 yyyyMMdd

分区连续性检查语句

sql 复制代码
SELECT  ds
       ,rn
       ,date_sub(ds_format, rn)
FROM
(
    -- 对分区数据进行类型转换
    SELECT  ds
           ,from_unixtime(unix_timestamp(ds, 'yyyyMMdd'), 'yyyy-MM-dd') as ds_format
           ,row_number() over(order by ds asc) rn -- 排序分区,按照ds升序
    FROM
    (
       -- 获取表中的所有分区数据 
       SELECT  ds
       FROM t_user_info
       -- 指定分区检查的时间段
       WHERE ds between '20221231' and '20230924'
       group by ds
    ) ds_info
) diff_ds_info
limit 1000
;
相关推荐
Vin0sen19 小时前
Hadoop安装
大数据·hadoop·分布式
AllData公司负责人20 小时前
AllData数据中台集成开源项目Apache Doris建设实时数仓平台
java·大数据·数据库·数据仓库·apache doris·实时数仓平台·doris集群
隐于花海,等待花开21 小时前
HIVE日期函数大全
数据仓库·hive·hadoop
juniperhan21 小时前
Flink 系列第9篇:Flink 重启策略详解
java·大数据·数据仓库·flink
隐于花海,等待花开2 天前
FIND_IN_SET 与 LIKE 函数:使用场景及性能对比
hive
夕除2 天前
javaweb--04
数据仓库·hive·hadoop
juniperhan3 天前
Flink 系列第4篇:Flink 时间系统与 Timer 定时器实战精讲
java·大数据·数据仓库·flink
juniperhan3 天前
link 系列第7篇:Flink 状态管理全解析(原理+类型+存储+实操)
大数据·数据仓库·flink
juniperhan3 天前
Flink 系列第6篇:Watermark 水印全解析(原理+实操+避坑)
大数据·数据仓库·flink
武子康3 天前
大数据-264 实时数仓-MySQL Binlog配置详解:从原理到实践|数据恢复与主从复制实战
大数据·hadoop·后端