数据的生产就像淘金,生产的步骤繁琐还需消耗大量的计算资源。而数据的多样性和差异性使得数据生产不得不不断的迭代处理逻辑, 分层数仓的设计简化了单层数据模型的设计,但增加了额外的计算资源消耗,当出现数据质量问题时更是质控者的噩梦。梳理清楚数据的来源、经过那些处理步骤、数据间存在那些引用和依赖的关系,这些信息归纳起来就是数据的血缘关系。而SQL强大的描述能力被广泛的应用在各种数据工具,分析SQL的AST是获取数据血缘关系的一个重要来源。个人开发了一个分析SQL获取数据血缘关系的小工具:
由于是利用个人业余时间,时间仓促,不少功能还有待完善,欢迎提出宝贵的改进意见。平时工作较忙,请勿电话,但非常欢迎邮件和微信留言。
目前暂时只支持select语句
蓝色表格代表 select的结果,橙色表格代表 中间结果,绿色表格代表原始的表。
子查询名字的后缀 _t代表子查询 _u 代表union的一个分段
蓝色线条代表字段的引用关系(目前未分类,未来希望做成不同样式的线条表示不同的引用关系)
橙色线条代表 表的join关系。
点击表的某个字段,这个字段关联的引用关系可以高亮显示。