dataCompare核心功能之数据探针

简介: dataCompare核心功能之数据探针

1.数据探针产生的背景:

数据开发和接入的过程中,数据开发人员接到一个需求或者一条新的业务线可能需要搭建数仓,做数据处理,然后提供一些指标数据给到需求方,如果是你这边会怎么开始呢?

直接开干?抽表,清洗,分层,建模?

然后发现做完之后,怎么数据各种不对,取不到想要的数据,比如说:业务上说明明一个字段为空比例非常少(1%以内),但是加工出来的数据问题非常多?比如说:空值占比接近30%,然后报表显示的结果就各种问题,然后又往上排查发现,原来是别人提供的数据,或者采集的数据有问题

所以一上来开干,这就是瞎搞。啥也不知道不了解的情况下,对数据源一无所知的情况下,是谁给你勇气直接开干的?干完之后返工成本更大

2.正常的数据开发流程:

接到新的数据需求或者任务的时候,最开始应该需要做一下数据调研,即数据探查(也就是标题上提的数据探针),发现数据潜在的问题。

那数据探针到底要探测哪些内容呢?

3.现状

大多数数据开发人员的处理方法:写大量的sql

比如:

总行数据:select count(*) from table_name;

枚举值:select table_column,count(*) as cnt from table_name group by table_column

等等

4.数据探针

(1)低代码、少量配置即可实现探查任务

(2)将数据探测标准化,避免不同的数据开发人员采用不同的探测标准,做标准统一

(3)快速完成数据探测:30秒完成探测任务配置,2分钟出探测结果

5.功能演示

探测任务配置

探测结果详情

探测代码模板

//主键探测模板
public static final String mainTemplateSql = "select count(distinct column) as distinct_cnt," +
            "count(*) as cnt" +
            " from tableName filter";
//空值探测模板
    public static final String emptyTemplateSql = "select count(*) as cnt,column_dict from (\n" +
            "select *,\n" +
            "case when column is null then 0\n" +
            "else 1\n" +
            "end as column_dict\n" +
            "from tableName\n" +
            "filter\n" +
            ")t group by column_dict;";
//枚举值探测模板
    public static final String enumTemplateSql = "select * from (\n" +
            "select count(*) as cnt,column\n" +
            "from tableName\n" +
            "filter\n" +
            "group by column\n" +
            ")t order by cnt desc limit 50;";
//字段长度探测模板
    public static final String lengthTemplateSql = "select len,count(*) as cnt from (\n" +
            "select *,length(column) as len from tableName filter\n" +
            ")t group by len;";
//探测信息配置
String tableName = "";
String mainField = "";
String emptyFields = "";
String enumFields = "";
String lengthFields = "";
String filter = "";


相关文章
|
JavaScript 前端开发
uniapp获取时间年月日
uniapp获取时间年月日
460 0
|
5月前
|
监控 数据可视化 安全
看得见的安全:如何用可视化大屏提升数据监测和网络预警效率
网络安全已成各组织核心议题,传统防护难以应对复杂攻击。AnaTraf网络流量分析仪通过实时分析流量,提取关键行为,提前发现潜在威胁。其可视化大屏将数据直观呈现,助力安全人员快速捕捉风险。系统基于趋势分析构建动态风险模型,实现预判而非仅报警,成为有判断力的“网络安全参谋”。在攻击无孔不入的时代,AnaTraf提供全新认知方式,以“看得见”提升对威胁的判断力。
看得见的安全:如何用可视化大屏提升数据监测和网络预警效率
|
存储 分布式计算 资源调度
两万字长文向你解密大数据组件 Hadoop
两万字长文向你解密大数据组件 Hadoop
425 11
|
移动开发 运维 网络协议
运维必备 | Linux netstat命令详解
运维必备 | Linux netstat命令详解
403 8
|
SQL 数据采集 NoSQL
One ID中的核心技术ID-Mapping究竟是怎么实现的?
One ID中的核心技术ID-Mapping究竟是怎么实现的?
|
数据采集 SQL 数据可视化
Dataphin数据探查助力快速了解数据概貌,更早识别潜在风险
在日常数据加工处理工作中,不同角色(运营、开发、数据分析师、业务人员等)尝尝会面临一个共同问题:数据是否可用?在数据量大、数据可信度不高的情况下,常常需要花费大量时间精力对数据进行校验,了解数据概貌并评估数据是否可用,也就是需要进行所谓的“数据探查”工作。因此,Dataphin 特别推出“数据探查”功能,只需要进行简单的配置,就可以周期性地执行探查任务并产出内容丰富、结果准确的可视化探查报告。此外,也可以保留历史的数据探查结果,便于结合历史数据进行对比分析,不仅降低了操作门槛,也能解放人力,提升工作效率。
829 0
|
城市大脑 运维 负载均衡
数字政府 | 政务钉钉平台
本文介绍了数字政府|政务钉钉平台 的方案概述,方案价值及优势以及最佳实践。
数字政府 | 政务钉钉平台
|
存储 自然语言处理 关系型数据库
Elasticsearch创建一个索引怎么也这么复杂
Elasticsearch创建一个索引怎么也这么复杂
214 0
|
运维 安全 大数据
【TICA大咖】如何紧贴业务建设质量保障体系
阿里QA导读:铛铛铛,TICA大咖第二期带来大数据&智能化分会场出品人-小瑕老师的万字长文,讲述如何紧贴业务建设质量保障体系,结合不同业务实践给出分析总结,强烈建议大家mark住,找一个固定不被打扰时间仔细阅读,带着批判性思维从本文中提取出你觉得有用的保障方式,去自己的业务模块中进行实践。PS-文末公布上期中奖信息哦~
2048 1
【TICA大咖】如何紧贴业务建设质量保障体系
|
前端开发 Java 数据挖掘
基于 Jira 的产品需求全生命周期管理实践
在整个需求全生命周期的反馈回路中,如何对需求、项目、任务、缺陷、线上质量和功能优化进行有效组织和管理的呢?
2727 1