本文介绍: 明确没有这个项目之前,痛点在哪里规范不规范不易理解不易变更扩展存储冗余:磁盘,内存计算冗余:内存,cpu不够优化:数据倾斜,sql质量不按时不按量安全: 不安全数据治理考评平台:通过… 利用… 实现了…最终…通过:规划定义了各种数据治理指标项,从Hive, hdfs, ds日志提取各种数据源,实现了针对各个表和指标的考评利用:各个指标的评分排行和问题描述等方式,倒逼开发人员对数据治理不断改进最终: 让程序员发现数仓现有的问题,找到优化方向。
SpringBoot定时调度
- 在applicaiton类上加注解@EnableScheuling
- 创建调度包scheduler
- 创建一个考评类调度类AssessScheduler
- 创建exec()方法,添加注解@Scheduled(cron=“******”)
- 分表代表秒,分,时,日,月,星期
- 0/5,*****, 代表每5秒执行一次
调度工具
- 大数据:oozie, Azkaban, 任务众多,流程复杂,配置复杂
- java: quartz , xxl-job, elastic–job, 流程简单,分布式,高可用,配置较为复杂
- springtask,不支持复杂的流程,也不支持分布式,配置非常简单
血缘关系
- 通过双向树形图,来展示表与表之间的关系
- 提取关系,每个表的上游source_table, 每个表的下游sink_table
- 提取表的元数据 + 当天任务实例的sql
- 解析SQL,提取来源表(调用SQL工具,制作一个节点处理器,目的就是提取来源表),得到key–value结构,Key是目标表,value是source表集合。
- 保存数据到血缘关系表中
展示血缘图
方案1:把数据写出来,用Java递归实现组装左右树结构
方案2:利用图数据库neo4j, 存储两个节点之间的关系,可以通过语法直接提取某个节点与其他所有父子多层级的关系
方案3:每次只展开一层,用户点击时再查询下一层的节点
总结
为什么要做这个项目
-
如何实现的?
原文地址:https://blog.csdn.net/qq_44273739/article/details/134637543
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_7243.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。