• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

bigdata-sql-parser: 数据血缘,支持spark sql,presto sql,tidb sql, flink sql, data ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

bigdata-sql-parser

开源软件地址:

https://gitee.com/duhanmin_admin/bigdata-sql-parser

开源软件介绍:

介绍

数据血缘,支持spark sql,presto sql,tidb sql, flink sql, Spark/flink jar 运行命令的血缘解析

  • 特别提示:presto和spark均支持with语法
  • 目前解析到表级别,可以扩展到字段级别
  • 支持datax血缘(mysql/pg/s3)

编译

mvn antlr4:antlr4

mvn clean package

使用

  • spark SQL
val sql = "CREATE DATABASE IF NOT EXISTS bigdata"val statementData = SparkSQLHelper.getStatementData(sql)println(statementData.statement)
  • presto SQL
val sql = "INSERT INTO adc.fsfd with recursive t as (select a,b,v from a.x)  select a,b,v from t"val statementData = PrestoSQLHelper.getStatementData(sql)println(statementData.statement)
  • Tidb SQL/MySQL
val sql = "insert into bigdata.user select * from users a left outer join address b on a.address_id = b.id"val statementData = PrestoSQLHelper.getStatementData(sql)println(statementData.statement)
  • Flink SQL
val sql = "CREATE SOURCE TABLE student_scores (\n" +        "  student_number varchar comment '学号', \n" +        "  student_name varchar comment '姓名', \n" +        "  subject varchar comment '学科',\n" +        "  score INT comment '成绩' \n" +        ")\n" +        "WITH (\n" +        "  type = \"dis\",\n" +        "  kafka.region = \"cn-north-1\"\n" +        ") TIMESTAMP BY proctime proctime1"val statementData = StreamSQLHelper.getStatementData(sql).get(0)println(statementData.statement)

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap