栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

大数据学习-hive(三:如何对同步数据做监控)

大数据学习-hive(三:如何对同步数据做监控)

一:监控主键重复
select  '${dealDate}' as p_dt
         , count(1) as duplicate_pk_cnt      -- 重复主键数
from
      (
       select vehicle_id
              , ble_id
              , manufacturer_id
              , manufacturer_name
              ,model_brand
              ,produce_time
              , count(1) as cnt
		from temp_db.temp_data_monitor_table_info_day_02
		group by vehicle_id
                 , ble_id
                 , manufacturer_id
                 , manufacturer_name
                 ,model_brand
                 ,produce_time
         having cnt > 1;
二:监控关键字段非空
如果字段中有空,concat()直接返回空。
select  '${dealDate}' as p_dt
		, count(concat(vehicle_id, ble_id, manufacturer_id, manufacturer_name,model_brand,produce_time))
                                   as null_cnt         -- 非空数量
from temp_db.temp_data_monitor_table_info_day_02
三:数据量监控
针对表中每天数据量会变的表重数据量方面监控。
表中每天数据量是否会变化.
如果连续俩天数据量都没有变化,就需要排查。
 select  '${dealDate}' as p_dt
 ,count(a.vehicle_id) as cur_cnt   -- 前一天数据量
from temp_db.temp_data_monitor_table_info_day_02 a
四:僵尸表监控
针对每天变化的表,从内容方面监控。
 select  '${dealDate}' as p_dt
  		, count(a.vehicle_id) as last_cnt   -- 前一天数据量
        , count(b.vehicle_id) as cur_cnt    -- 当天数据量
        , case when
        	 count(case when a.vehicle_id is null then b.vehicle_id end) > 0
             or count(case when b.vehicle_id is null then a.vehicle_id end) > 0
             then 0
             else 1
             end as chk_diff     -- 僵尸表校验
from temp_db.temp_data_monitor_table_info_day_02_yesterday a      -- 前一天
full join temp_db.temp_data_monitor_table_info_day_02 b     -- 当天
on a.vehicle_id = b.vehicle_id  

五:表中内容监控
使用正则对表中字段的格式等进行监控。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/745805.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号