马哈鱼数据血缘分析器介绍

一、马哈鱼数据血缘分析器( SQLFlow )是什么

在大型数据仓库和数据湖中,完整的数据血缘关系可以用来进行数据溯源、表和字段变更的影响分析、数据合规性的证明、数据质量的检查等。

那么到底什么是数据的血缘关系 (data lineage) 呢?

维基百科上的定义是:数据从哪里来,往哪里去,中间发生了哪些变化。

马哈鱼数据血缘分析器通过分析 SQL 脚本,给出完整的数据血缘关系。 马哈鱼能够处理多达 20 多种数据库的 SQL 语句,复杂的存储过程、动态 SQL 语句也不在话下。 拥有自主研发的通用 SQL 解析器的强大 SQL 处理能力,马哈鱼是你分析 SQL 数据血缘的首选。

二、马哈鱼数据血缘分析器是怎样工作的

本视频介绍如何利用马哈鱼数据血缘分析器来快速发现 create view SQL 语句中各个表和字段的血缘关系,并用可视化的方式展现出来。

三、马上体验一下

点击这里可以免费体验马哈鱼完整功能。

四、产品版本

1.马哈鱼数据血缘分析器

马哈鱼数据血缘分析器是一个 SaaS 服务。通过浏览器直接使用,无需安装任何软件。

  • 通过浏览器访问马哈鱼数据血缘分析器
  • 在浏览器中上传SQL文本或文件。
  • 点击分析按钮后,查看数据血缘关系的可视化结果。
  • 在浏览器中,以交互形式,查看特定表或视图的完整血缘关系图。
  • 用 grabit 工具或 API,提交需要处理的 SQL 文件,然后在浏览器中查看结果,或在自己的代码中对返回的结果做进一步处理。

2.私有化部署版本

支持企业私有化部署,可部署在隔离内网环境。仅供企业内部人员使用,保证数据的安全。 提供完整的 API。

支持软件OEM。软件Logo定制,去除马哈鱼Logo,定制品牌Logo,突出品牌信息。

详情请见安装手册

3.企业版

马哈鱼数据血缘分析器企业版,包含私有化部署版本和 Java 类库,可以方便的把 data lineage 功能集成到你的项目中, 支持多达20几种主流数据库复杂的 SQL 脚本,包含存储过程。 单击这里下载可运行的 Java 程序及类库

五、马哈鱼数据血缘分析器的组成

  • Backend, 后台由一系列 Java 程序组成。负责 SQL 的解析、数据血缘分析、可视化元素的布局、身份认证等。
  • Frontend, 前端由一系列 javascript、html 代码组成。负责 SQL 的递交、数据血缘关系的可视化展示。
  • Grabit 工具, 一个 Java 程序。负责从数据库、版本控制系统、文件系统中收集 SQL 脚本,递交给后台进行数据血缘分析。
  • Restful API,一套完整的 API。让用户可以通过 Java、C#、Python、PHP 等编程语言与后台进行交互,完成数据血缘分析。

六、马哈鱼数据血缘分析器的局限

马哈鱼数据血缘分析器仅仅通过分析 SQL 脚本,包含存储过程(proceudre, function, trigger)来获取数据库中 的数据血缘关系。 但在 ETL 数据转换过程中,会用到很多其它技术和工具,由此产生的数据血缘关系目前 马哈鱼数据血缘分析器无法探知。

七、进一步了解马哈鱼数据血缘分析器

八、数据血缘关系

这里用数据库中常用的表和视图来对数据血缘关系做一个说明,实际的情况会比这个复杂。

数据库中视图 (View) 的数据来自表 (Table) 或其他视图,视图中字段 (Column) 的数据可能来自多个表中多个字段的聚集 (aggregation)。 表中的数据可能通过ETL从外部系统中导入。这种从数据的源头经过各个处理环节,到达数据终点的数据链路关系称为数据血缘关系 (data lineage)

举例来说,领导可能会问财务报表中的统计结果,它是有哪些子系统(采购、生产、销售等)提供的数据汇总而成的? 开发人员会关心当某个子系统(例如 销售子系统)的数据结构发生变化时,可能会影响哪些其它子系统,财务报表子系统也是否需要进行改动?

马哈鱼数据血缘分析器会帮助你回答这些问题,以可视化的图形方式把 数据血缘关系呈现在你面前,让你对组织的IT系统中的数据流动一目了然。