flink Table API 与 SQL

Table API 是流处理和批处理通用的关系型 API Table API 可以基于流输入或者
批输入来运行而不需要进行任何修改。 Table API SQL 语言的超集并专门为 Apache
Flink 设计的, Table API Scala Java 语言集成式的 API 。与常规 SQL 语言中将
查询指定为字符串不同, Table API 查询是以 Java Scala 中的语言嵌入样式来定义
的,具有 IDE 支持如 : 自动完成和语法检测。
1 需要引入的 pom 依赖

 .2 简单了解 TableAPI

 

 1 动态表

如果流中的数据类型是 case class 可以直接根据 case class 的结构生成 table

tableEnv.fromDataStream(dataStream)
或者根据字段顺序单独命名
tableEnv.fromDataStream(dataStream,’id,’timestamp .......)

最后的动态表可以转换为流进行输出

table.toAppendStream[(String,String)]

2 字段

用一个单引放到字段前面来标识字段名, ‘name , ‘id ,’amount

3 TableAPI 的窗口聚合操作
3.1 通过一个例子了解 TableAPI

 

 3.2 关于 group by

 

3.3 关于时间窗口
1. 用到时间窗口,必须提前声明时间字段,如果是 processTime 直接在创建动
态表时进行追加就可以。

 4 SQL 如何编写

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大数据开发工程师-宋权

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值