SQLFlow是一个可视化的在线处理SQL对象依赖关系的工具,只需要上传你的SQL脚本,它可以自动分析SQL里的数据对象,包括database、schema、table、view、column、procedure、function、trigger等等,并且能够分析这些数据对象之间的依赖关系,并将这些依赖关系可视化展现出来。本文将描述SQLFlow的高阶模式——Job任务

什么是Job任务

SQLFlow的Job任务,可以支持多文件,数据库连接等复杂的方式对数据库或者SQL文件进行数据对象依赖关系分析,并且可以查看Job历史记录。

Job任务包含三种分析模式:

1. SQL文件静态分析,支持多个SQL文件,以多文件或者zip包的方式上传到服务端分析

2. 通过数据库连接获取元数据,进而分析数据库各种表、视图、存储过程、Function、Trigger等数据对象直接的依赖关系

3. SQL文件+数据库连接获取元数据方式分析,能提供更精准的SQL依赖关系分析

SQL文件静态分析

该模式和常规的SQL分析类似,属于SQL静态分析,但是用户也可以提供数据库DDL SQL,sqlflow 会通过扫描ddl语句,构建数据库元数据信息,进而能够提供分析的准确性。另外普通的SQL分析只支持300KB大小的sql分析,并且有超时限制,而Job sql文件分析,则没有这个限制。

通过数据库连接分析数据库数据对象依赖关系

该模式可以通过JDBC连接数据库,获取数据库的数据对象信息,以及视图、存储过程、方法、触发器等数据对象的源码,并对这些数据对象进行依赖关系分析,目前已支持的数据库包括:Oracle、Mysql、SQLServer、Progresql、Redshift、Greenplum、Snowflake、Teradata、Netezza等。

数据库连接+SQL文件分析

由于提供了数据库连接,SQLFlow可以获得完整的数据库元数据信息,进而能够更加准确的对SQL进行分析,这对多表Join查询分析非常有帮助,能够准确识别字段所属表

需要说明的是,数据库连接涉及到用户数据安全,需要用户授权,并且数据库密码传输是通过RSA进行加密的,确保传输过程的安全性。

SQLFlow官方入口: https://sqlflow.gudusoft.com

最新文章

  1. kubernetes部署Fluentd+Elasticsearch+kibana 日志收集系统
  2. 洛谷P1373 小a和uim之大逃离[背包DP]
  3. JavaOO面向对象中的注意点(二)
  4. 使windows隐藏文件全部显示出来
  5. HTTP-崔希凡笔记
  6. 求拓扑排序的数量,例题 topcoder srm 654 div2 500
  7. Java for LeetCode 042 Trapping Rain Water
  8. 带删除小图标的EditText
  9. event对象具有的方法
  10. python yield 理解
  11. yii2 无法显示debug条的问题解决方法
  12. iOS导出ipa包时四个选项的意义
  13. [Swift]LeetCode441. 排列硬币 | Arranging Coins
  14. [daily][device][archlinux][trackpoint] 修改指点杆速度/敏捷度
  15. 并行开发-Task
  16. C# “试图访问已释放的资源”
  17. 解题:HAOI 2012 道路
  18. java配置使用手册
  19. Spring事务管理—aop:pointcut expression 常见切入点表达式及事物说明
  20. 进阶篇:2.2)DFMA运用实例

热门文章

  1. Python基础(九):字典的使用
  2. BUAA_OS lab4 难点梳理
  3. OO_Unit1总结
  4. keepalived安装及组合nginx配置负载实现高可用
  5. 【剑指offer】7:斐波那契数列
  6. leetcode 刷题(数组篇)152题 乘积最大子数组 (动态规划)
  7. 自动化kolla-ansible部署centos7.9+openstack-train-超融合单机架构
  8. Go-30-main包
  9. Day07_39_集合中的remove()方法 与 迭代器中的remove()方法
  10. Django中的CBV视图