马哈鱼分析数据库中metadata的血缘关系

马哈鱼数据血缘分析器是一个分析数据血缘关系的在线平台,用他可以获取指定数据库的 metadata,通过获取的 DDL 分析其中存储过程,视图等所依赖的各种数据源表。

本文介绍利用马哈鱼从 SQLServer 中获取 DDL,分析出其中存储过程的血缘关系。

获取 DDL

首先,使用马哈鱼连接到 SQLServer 服务器获取指定表的所有 DDL,如下图,需要填写正确的连接信息:

点击 test connection 按钮测试可否连接成功。在左下角 advanced 选项中,可以指定排除或者包含某些数据,其中的参数含义为:

  • excludedDbsSchemas 是排除某个 database 或 schema,格式具体看所连接数据库的架构,比如 MySQL 只有 database 没有 schema,格式为:db;SQLServer 有 database 和 schema 架构,格式为:db/schema
  • extractedDbsSchemas 是只包含某个 database 或 schema,格式同上
  • extractedStoredProcedures 是只包含某个 procedure,名称支持*正则匹配,前缀也同上,需要看具体架构模式,比如 SQLServer 格式则为:db/schema/test
  • extractedViews 是只包含某个 view,名称支持*正则匹配,格式同上

如图:

分析 metadata 的血缘关系

连接到数据库后,马哈鱼获取到了其中的所有表和 view,procedure 的 DDL,可以在马哈鱼的 Schema Explorer 模块查看导出的数据结构,并且能查看某个视图的血缘关系,如图:

从分析结果可知,VWALLBATCHESANDINTERVALS 视图的数据源最终来自于 ReadTrace.tblUniqueBatches 和 ReadTrace.tblTimeIntervals 两张表,最终流向了 ReadTrace.vwBatchUtilizationPerAllTimeIntervals 视图,其中也可以仔细的看出其中的字段的来源去向,总结看血缘路径为:

ReadTrace.tblUniqueBatches(TimeInterval),ReadTrace.tblTimeIntervals(HashID)->ReadTrace.vwAllBatchesAndIntervals(TimeInterval,HashID)->ReadTrace.vwBatchUtilizationPerAllTimeIntervals(TimeInterval,HashID)

点击 visualize lineage overview 按钮,可查看 table -> table 的血缘关系:ReadTrace.tblUniqueBatches,ReadTrace.tblTimeIntervals->ReadTrace.vwAllBatchesAndIntervals->ReadTrace.vwBatchUtilizationPerAllTimeIntervals

以上就是对马哈鱼分析指定数据库的 metadata 的处理流程介绍,关于马哈鱼的等多功能,请参考下面链接:

参考

马哈鱼数据血缘关系分析工具中文网站: https://www.sqlflow.cn

马哈鱼数据血缘关系分析工具在线使用:https://sqlflow.gudusoft.com

感兴趣的联系:Zy2133223

你可能感兴趣的:(SQLFlow,数据库,sqlserver,mysql)