-sql语法-2-初涉&数据质量管理

数据量对比

大数据很多都是做数据仓库.底层,但是数据仓库数据量往往会有问题。比如需要把MySQL数据同步到数据仓库:

中间有可能丢数据                     100条        90条
也有可能不丢数据                     200条        200条     
 也有可能多数据	                   90条             100条  
 可能多数据的原由:原始是作100条数据,先做insert插入,但是由于业务或者维护的关系,有十条MySQL作了delete,delete有问题,过不来没有执行,数据仓库还停留在100条。

数据质量管理

1.数据量的比对 select count(1代表字段) 计数
90%公司比对数据量,但光比对数据量不行,因为不代表数据内容一致,比如dac.das.数据量一样,但是字段内容不一样。

2.数据内容比对,比对的不是一个组件,而是全字段,很难比对,全量比对代价很大,效率低,几乎没有公司做。 但是少部分公司是依据数据量的比对做:抽查比对,两边的规则抽十条到20条,比对这10-20条数据

 不相等:补数据 或 删数据  
 生产上:spark  ==full join
 咱这里:Linux MySQL  == union   

  补数据: select * from t where bid is null  拿到a表字段的数据 拼接sql插入数据仓库
  删数据::select * from t where aid is null --> bid  --delete 语句

  如若如以下案例,a表是MySQL数据库,b表是数据仓库,作数据质量,则最终结果是:b表缺5补id5数据一条,删除id  7-10

在这里插入图片描述

什么时候做比对数据?

假设 2019-06-29 
 <2019-06-01 00:00:00 全量  
  select count(1) from a where cretime<'2019-06-01 00:00:00'
 select count(1) from b where cretime<'2019-06-01 00:00:00'
  根据业务周期决定花大量时间做全量的修复  

    
增量:每天调度 crontab xxx.sh
         2019-06-29 01:00:00 启动作28号数据	        
         select count(1) from a where 
cretime>='2019-06-14 00:00:00' and cretime<'2019-06-29 00:00:00' ;          根据业务周期,这里是15天

复盘

再有变动怎么办,复盘。
每月做1次全量,当前时间-1个月。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值