当前位置:网站首页>Flink学习6:编程模型
Flink学习6:编程模型
2022-07-04 03:47:00 【hzp666】

1.接口分层
Flink提供了不同级别的接口,最底层的是状态数据流处理,最高层是SQL

1.1 状态数据流处理
通过过程函数,被继承到DataStream API中

有状态数据流处理接口,
1.2 DataStream 和 DataSet API
核心API
DataStream 用来处理有界 和 无界数据流。
DataSet API 用来处理有界 数据流。
该接口提供了大量的通用组件

另外,
DataStream 集成更底层的函数
DataSet API 对有界数据提供了额外的支持

1.3 Table API
1.以表为中心,类似关系型数据库的二维表

2.提供可比较的操作,select, group by等

3.Table API 可以自定义函数进行扩展,但在表达能力上,比不上核心API。(不过Table API代码更简洁)
4.Table API是指定程序应该执行哪些操作,而不是精确的指定程序的执行步骤
5.Table API 在执行前会进行优化,另外Table API 和 DataStream , DataSet 之间可以无缝切换。所以在程序中可以混合只用。
1.4 SQL
Flink最高级封装接口就是 flink SQL
语法和表达能力上和Table API 类似,唯一的区别就是通过使用SQL查询语言实现程序。
SQL查询和Table API 交互密切,SQL可以直接在Table API中创建的表上查询

边栏推荐
- Reduce function under functools
- CUDA basic knowledge
- 02 ls 命令的具体实现
- Huawei cloud Kunpeng engineer training (Guangxi University)
- [PaddleSeg 源码阅读] PaddleSeg计算Dice
- Which product is better for 2022 annual gold insurance?
- Aperçu du code source futur - série juc
- Is it safe to buy insurance for your children online? Do you want to buy a million dollar medical insurance for your children?
- Mindmanager2022 efficient and easy to use office mind map MindManager
- 思考的小记录
猜你喜欢

【罗技】m720

Activiti7 task service - process variables (setvariable and setvariablelocal)

My opinion on how to effectively telecommute | community essay solicitation

I Build a simple microservice project

1289_ Implementation analysis of vtask suspend() interface in FreeRTOS

Mindmanager2022 efficient and easy to use office mind map MindManager

Perf simple process for multithreaded profile

渗透实战-guest账户-mimikatz-向日葵-sql提权-离线解密
![[untitled]](/img/b5/bf76783aa428222623d760756a14d9.jpg)
[untitled]

Sales management system of lightweight enterprises based on PHP
随机推荐
logistic regression
JDBC 进阶
【愚公系列】2022年7月 Go教学课程 002-Go语言环境安装
2022-07-03: there are 0 and 1 in the array. Be sure to flip an interval. Flip: 0 becomes 1, 1 becomes 0. What is the maximum number of 1 after turning? From little red book. 3.13 written examination.
Nbear introduction and use diagram
Introduction to asynchronous task capability of function calculation - task trigger de duplication
Myslq delete followed by limit
Penetration practice - sqlserver empowerment
Rhcsa-- day one
LNK2038 检测到“RuntimeLibrary”的不匹配项: 值“MD_DynamicRelease”不匹配值“MDd_DynamicDebug”(main.obj 中)
Katalon框架测试web(二十一)获取元素属性断言
Katalon框架测试web(二十六)自动发邮件
Two sides of the evening: tell me about the bloom filter and cuckoo filter? Application scenario? I'm confused..
Summary of Chinese remainder theorem
Graduation summary
三菱M70宏变量读取三菱M80公共变量采集三菱CNC变量读取采集三菱CNC远程刀补三菱机床在线刀补三菱数控在线测量
laravel admin里百度编辑器自定义路径和文件名
10 reasons for not choosing to use free virtual hosts
Smart subway | cloud computing injects wisdom into urban subway transportation
Aperçu du code source futur - série juc