从逻辑角度来看,SQL中对执行结果没有任何影响的字段就是冗余字段;从需求角度来看,SQL中出现的需求没有用到的字段就是冗余字段。冗余字段 增加了SQL执行过程中的IO的负载,也增加了逻辑的复杂度。
这里开发了一个SQL优化的工具,用于定位和优化SQL中的冗余字段。
数据的逻辑运算可以的到计算的结果。但面对结果数据,如何知道每行结果数据的来源?这个过程就是数据溯源。它在我们生活中已经随处可见, 从平时的外卖、快递到疫情防控使用的健康码...准确来说它就是记录和重现原始数据在整个数据生产的生命周期内,从产生、传播或消亡的演变和处理过程。
最常用的是标注法,反向查询法。而我实现了另一个全新的方法分析数据血缘关系,修改数据计算逻辑,在计算结果的同时也收集和记录参与计算的原始数据,根据原始数据和计算逻辑重现每行结果的计算过程。
数据的生产就像淘金,步骤繁琐还需消耗大量的计算资源,而数据的多样性和差异性使得数据生产异常复杂,不断的迭代处理逻辑更是数据质量的噩梦。 为了获得高效稳定且质量可控的数据,就需要梳理清楚数据的来源、经过那些处理步骤、数据间存在那些引用和依赖的关系,而这些信息归纳起来就是数据的血缘关系。
数据处理程序、ETL工具及SQL脚本等都是血缘关系的重要的来源。✪Demo用可视化的方式展示了SQL转换的数据血缘关系。
✪工具链接 可视化展示SQL中字段的血缘关系
✪工具链接 定位和优化SQL中的冗余字段
欢迎专注于大数据技术,特别是数据血缘关系、数据质量控制和治理、T+0实时数据生产、数据湖等技术和相关行业的朋友联系交流。工作时间较忙,请勿直接来电非常抱歉,添加微信好友请备注 SL。
QQ/EMail: 12727289@qq.com
WeChat: 点击显示二维码