利用job提升马哈鱼数据血缘分析效率
利用job提升马哈鱼数据血缘分析效率
一、Job基本知识
前面文章中已介绍马哈鱼的基本功能,其中一个是job,job其实是一个任务集合处理的概念,就是让用户通过job,可以一次递交所有需要处理的 SQL,SQLFlow处理这些 SQL,把所有的数据血缘都分析出来。从用户角度,job包含job list和The Latest Job。其中,job list是当前用户所有的job。而The Latest Job是所有用户job中最新的job列表。本文向您重点介绍job的作用及用法。
job是马哈鱼收集各种数据源的数据后分析的任务,现在马哈鱼平台上支持三种方式: 1、上传文件(支持SQL脚本文件,Spark的python脚本文件和CSV文件,支持的CSV文件的文档;
2、从数据库中收集metadata,其实就是收集表,存储过程,视图的DDL,metadata结构文档:
3、上传文件并从数据库中收集metadata,同时也从数据库中收集metadata的目的是为了解决文件中SQL脚本分析过程中产生的Orphan Column的异常(详情参阅《利用元数据提高 SQLFlow 血缘分析结果准确率》)。
二、如何使用Job进行血缘分析
job是一个与用户紧密关联的功能,如果您以访客身份登录马哈鱼官网https://sqlflow.gudusoft.com/后,在没有登录时,您无法正常使用job功能,其中job list列表为空,The Latest Job需要登录后才能进行查看。如下图:

对任何用户,马哈鱼官方提供一个示例job作业,帮助用户快速熟悉job的使用。
1、Job支持的文件格式
单个 SQL 文件。
多个 SQL 文件,可以包含子目录,打包成zip文件再上传。
从 git server 上获取的所有 SQL 文件
从数据库中获取的,包含元数据和DDL语句的,专门格式的 JSON文件。
包含 SQL 语句的 CSV 文件
其它 grabit 工具可以事先处理文件,抽取出 SQL 提交给 SQLFlow 来分析血缘。
2、创建一个新的job
客户在创建job前,必须先进行sql source选择,不同的sql source对应填充项是不同的。马哈鱼job目前支持三种sql source,分别是:

upload file
仅上传SQL文件,马哈鱼会根据上传的SQL语句进行解析所有溯源关系,它必须填写dbvendor、jobname、file等基本信息,如果是csv文件,还需要填写database、schema、objectType、objectCode等在csv中的对应列名称。如下图:

from database
客户需要填写用户数据库连接信息,通过直连客户数据库,马哈鱼将从数据库中直接获取对象定义及它们间的逻辑关系,该类型job将会根据客户选择的数据库所有或特定schema下所有的对象血缘关系进行分析。
通过下图中advanced选项,客户可以限制马哈鱼job的分析范围,如果不选择默认分析当前连接数据库中所有的对象间的血缘关系。

upload file+database metadata
该方式是将上述两种方式进行整合,更加灵活,客户可以通过连接到数据库方式对任何自定义语句集合进行集中分析,该方式灵活且能避免较多因sql语句书写不规范带来的问题。

3、使用已有的job
你设计一下,看看如何为所有的用户,包含standard 用户预设一个sample job 目的是为了可以让用户首次登录后马上可以体验job的功能,可以查看该sample job的data lineage
job

点击upload按钮,可以上传文件,创建一个job。当job处理完成后,可以点击view lineage,打开处理结果。
当客户登录到马哈鱼后,在左侧功能导航栏中有两个job入口,分别是job list和The Latest Job,其中,job list显示该用户下所有的job,而The Latest Job会使用新窗口自动加载最新的一个job的分析结果。

三、参考
马哈鱼数据血缘分析器: https://sqlflow.gudusoft.com
马哈鱼数据血缘分析器中文网站: https://www.sqlflow.cn
利用job提升马哈鱼数据血缘分析效率的更多相关文章
- 马哈鱼数据血缘分析器分析case-when语句
马哈鱼数据血缘分析器是一个分析数据血缘关系的平台,可以在线直接递交 SQL 语句进行分析,也可以选择连接指定数据库获取 metadata.从本地上传文件目录.或从指定 git 仓库获取脚本进行分析. ...
- 数据治理中Oracle SQL和存储过程的数据血缘分析
数据治理中Oracle SQL和存储过程的数据血缘分析 数据治理中的一个重要基础工作是分析组织中数据的血缘关系.有了完整的数据血缘关系,我们可以用它进行数据溯源.表和字段变更的影响分析.数据合规性 ...
- 马哈鱼血缘分析工具部署介绍--win 10
马哈鱼血缘分析工具部署介绍--win 10 随着大数据技术的发展与普及,数据治理和数据质量变得越来越重要,数据血缘分析在业界悄然兴起并得到了广泛流行,马哈鱼是国内少有的一款专业且易用的血缘分析工具.本 ...
- 马哈鱼间接数据流中的where-group-by子句
马哈鱼间接数据流中的where-group-by子句 本文介绍间接数据流中的where-group-by子句. 1.列在where子句中 WHERE子句中源表中的某些列不影响目标列,但对所选行集至关重 ...
- 使用grabit分析mysql数据库中的数据血缘关系
使用grabit分析mysql数据库中的数据血缘关系 Grabit 是一个辅助工具,用于从数据库.GitHub 等修订系统.bitbucket 和文件系统等各种来源收集 SQL 脚本和存储过程,然后将 ...
- 智能驾驶数据后处理分析利器—INTEWORK-VDA
随着智能驾驶技术在新车上逐步普及,车辆研发阶段需要做大量的实车测试工作,当前的测试方式主要是路采实车数据后,按标准和法规进行测试场景提取和测试数据分析.调查显示绝大部分智能驾驶研发厂商 ...
- [.net 面向对象程序设计进阶] (15) 缓存(Cache)(二) 利用缓存提升程序性能
[.net 面向对象程序设计进阶] (15) 缓存(Cache)(二) 利用缓存提升程序性能 本节导读: 上节说了缓存是以空间来换取时间的技术,介绍了客户端缓存和两种常用服务器缓布,本节主要介绍一种. ...
- 利用元数据提高 SQLFlow 血缘分析结果准确率
利用元数据提高 SQLFlow 血缘分析结果准确率 一.SQLFlow--数据治理专家的一把利器 数据血缘属于数据治理中的一个概念,是在数据溯源的过程中找到相关数据之间的联系,它是一个逻辑概念.数据治 ...
- C#利用SqlDataAdapte对DataTable进行批量数据操作
C#利用SqlDataAdapte对DataTable进行批量数据操作,可以让我们大大简化操作数据的代码量,我们几乎不需要循环和不关心用户到底是新增还是修改,更不用编写新增和修改以及删除的SQL语句, ...
随机推荐
- SSH远程端口转发实战详解
问题 前段时间在外地没有在实验室,随身携带了一个笔记本电脑.但是笔记本性能不够,想用SSH远程连接实验室的电脑.问如何连接?现有以下设备 设备 IP 备注 系统 实验室电脑C1 192.168.0.2 ...
- 图解 HTTP 连接管理
熟悉我的小伙伴都知道,我之前肝了本<HTTP 核心总结>的 PDF,这本 PDF 是取自我 HTTP 系列文章的汇总,然而我写的 HTTP 相关内容都是一年前了,我回头看了一下这本 PDF ...
- 涨姿势啦!Java程序员装X必备词汇之对象标记Mark Word!
大家好,我是庆哥Java,一个专注于干货分享的Java自学者! 写在前面 如果你已经知道什么是Mark Word,那我也希望你都好好阅读下本篇文章,因为你有可能发现不一样的切入点来帮助你更加深入的了解 ...
- 墙裂推荐!2020Android阿里&腾讯&百度&字节&美团校招面试汇总
基本情况 2021届硕士生,Android开发岗 此文主要是2020年年初春招实习的面试和正式校招面试经验汇总,最终校招拿到了腾讯,百度,美团等offer 主要包括阿里4面,腾讯实习4面和校招4面,字 ...
- 程序员被老板要求两个月做个APP,要不比京东差,网友:做一个快捷方式,直接链到京东
隔行如隔山,这句话说得一点都没错.做一个程序员,很多人都会羡慕,也有很多人会望而却步. 作为一个外行人,你别看程序员每天坐在电脑前敲敲键盘打打代码,以为很简单,其实啊也只有程序员自己明白,任何一个看似 ...
- Tengine2.3+openssl1.1.1支持TLS1.3
安装包下载: openssl1.1.1 链接:https://pan.baidu.com/s/1-qCDhkLtlkT0fdwKdVuh2g 提取码:0ncc pcre3.2.1 链接:https:/ ...
- IOC概念和原理:BeanFactory 接口与ApplicationContext
IOC(概念和原理)1.什么是 IOC(1)控制反转,把对象创建和对象之间的调用过程,交给 Spring 进行管理(2)使用 IOC 目的:为了耦合度降低(3)做入门案例就是 IOC 实现2.IOC ...
- 旅游景点 Tourist Attractions 题解
题面在这里 再次破了纪录,连做了3天... 让我们从头来一点一点分析 1.预处理 先看题面,乍一看貌似是个图论题,有n个点m条边,给定一些必须经过的点和强制经过顺序,求一条最短路 我们发现n和m都比较 ...
- Jpa-操作mongodb
pom <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spr ...
- mysql删除大表更快的办法
实现:巧用LINK(硬链接),原理:linux文件系统中硬链接相当于文件的入口,记录着ionde的信息.一个文件存在多个硬连接时,删除一个硬链接不会真正的删除ionde(存储文件的数据) # 创建硬链 ...