大数据测试梳理及未来趋势探索

    数据即资产,数据质量是数据的生命线,有了数据+模型+算力,便有了持续将数据应用于业务场景的能力。而成百上千张库表是否每日按时生成、生成的数据字段是否完整、生成数据的逻辑是否正确、生成数据分布是否合理、生成数据是否一致都会影响业务使用,而这些便是数据质量的范畴。

   

1.数据流向简总

1.1数据基本流向

数据从生产到应用,主要经历数据源、数据清洗、数据计算、数据中间件再到数据应用5大环节。用户直观感受的数据,都在数据应用层。前4个环节都是为了得出最后1层的数据结果。

1.2简总数仓各层含义:

ODS:数仓最底层也叫贴源层,数据无任何信息损失及加工逻辑存储于ods层,保持数据最原始结构,包括脏数据在内。

DWD:数据预处理,需要对数据进行进行统一的数据清洗、归一例如脏数据处理、字段缺失、格式错误、乱码、空值等,将数据变成格式化或半格式化数据,比如字段格式处理、或者转化为parquent列式存储等,

DWS(中间层):很重要的一层。当所有的数据都存好了,处理完脏数据之后,通过此层将数据通过不同主题进行汇总存储,通常说得业务域,比如:订单域、采购域、库存域、商品域、用户域、物流域等等,可冗余尽可能多的信息,对于提高下游计算的速度、减少运算数据量、简化业务逻辑、合并计算单元等具有特别大的好处

DM:维度信息:来源:dws层数据表,处理:多维度整理数据,用于多个维度的快速查找、分组和排序等

ADS:数据应用层,也是数仓最上层数据,高度汇总数据,针对公司业务需求,通过其它层数据的统一加工和处理,计算出可直接导入到服务去应用的数据,此层代表了与最终业务数据的一致性。

2、数据保障

数据生产前的数据验证,是保障数据质量的重要阶段,也是提前规避问题的主要环节。做好数据验证,数据验证包含数据梳理、数据测试、过程管理3个方面

2.1数据梳理

2.2数据测试

数据测试,主要包括项目功能需求理解、分析方案梳理、数据流向梳理、开发代码走查、数据表验证几个环节。以数据表验证为例,分别从一下维度验证:

 

2.1.1完整性

  1. 数据量是否完整

分区完整性验证

select a.dataday from

(select dataday from dim.dim_day_week where year>='2014' and year<='2022' and dataday<='2022-06-21' and dataday >='2014-05-30') a left join

(select distinct dt from ads.ads_sd_sales_volume_amount_cost_profit_d) b on a.dataday = b.dt where b.dt is null;

  1. 所需字段是否完整

表结构检查:如下表:

srv_supply_chain_sku_replace_d 对应替换关系的sku

CREATE TABLE `srv_supply_chain_sku_replace_d` (

  `org_sku_code` varchar(100) DEFAULT NULL COMMENT '原始的sku商品',

  `org_sku_name` varchar(100) DEFAULT NULL COMMENT '原始的sku商品',

  `sku_name` varchar(100) DEFAULT NULL COMMENT '商品名称',

  `sku_code` varchar(100) DEFAULT NULL COMMENT '商品sku',

  `replace_type` int(10) DEFAULT NULL,

  `replace_name` varchar(100) DEFAULT NULL

) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4

3. 字段内容是否完整,空值率等

判断为null

--空值判断 SELECT sku_id,sku_name FROM xxx.ads_xxx_sku WHERE pt = '20221211' and (sku_id IS NULL OR sku_name IS NULL)

判断是否为空

select sku_id,sku_name from xxx.ads_xxx_sku where pt='20221211'

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值