没有合适的资源?快使用搜索试试~ 我知道了~
Flink实战总结1
资源详情
资源评论
资源推荐
Flink学习
#学习
基础
相关概
flink程序能实现在分布式的结合上进各种转换操作,集合通常来订阅的来源(件,
kafka,local,in-memory),结果被返回到sinks(多数写入分布式件系统,或者标准输
出)
flink 的operator 会尽按照链式式分在同个task slot,以优化执
DataSet and DataStream
DataSet和DataStream在flink中都代表种数据结构,是不可变且包含重复记录的集合。
区别在于DataSet是有限的集合,DataStream是界的
flink 配置interlij ideal 在本地运调试
只需要将flink依赖的包引入项中即可启动项
讲解Flink怎么序化objects,怎么分配内存Apache Flink: Juggling with Bits and Bytes
DataStream
Apache Flink 1.7 Documentation: Flink DataStream API Programming Guide
datasource(数据源):
File-based: readTextFile, readFile…
Socket-based: socketTextStream
Collection-based: fromCollection, fromElements
custom: addSource, FlinkKafkaConsumer08 or other connectors
DataSet
Apache Flink 1.7 Documentation: Flink DataSet API Programming Guide
不得不会的Flink Dataset的DeltaI 迭代操作
savepoint
Apache Flink 1.7 Documentation: Savepoints
Savepoints are created, owned, and deleted by the user.
前savepoint和checkpoint实现和format式都相同(除checkpoint选择rocksdb作为
state backend,这样format会有些微不同)
Operations:
Triggering Savepoints: FsStateBackend or RocksDBStateBackend:
Trigger a Savepoint
Cancel Job with Savepoint
bin/flink cancel -s [:targetDirectory] :jobId
Resuming from Savepoints
$ bin/flink run -s :savepointPath [:runArgs]
Disposing Savepoints
$ bin/flink savepoint -d :savepointPath
checkpoint
Apache Flink 1.7 Documentation: Checkpoints
命周期是由Flink管,checkpoint的管,创建以及释放统通过Flink,需要户
预
Checkpoints are usually dropped(随应退出被清除) after the job was terminated by
the user (except if explicitly configured as retained Checkpoints)
retained checkpoints 不会随着应清除,所以需要动清,与savepoint有点区
别,不持rescaling
resuming from checkpoints
bin/flink run -s :checkpointMetaDataPath [:runArgs]
checkpoint 优化 Apache Flink 1.7 Documentation: Tuning Checkpoints and Large State
state 双写:份在distributed storage(HDFS);份在local
task-local recovery:默认是关闭的状态,可以通过 state.backend.local-recovery 打开
Barriers
Apache Flink 1.8-SNAPSHOT Documentation: Data Streaming Fault Tolerance
Window,waterMark,Trigger
Window,waterMark,Trigger介绍- 简书
window
常重要还未研究 Windows
滚动窗:分配器将每个元素分配到个指定窗的窗中,并且不会重叠;
TumblingEventTimeWindows.of(Time.seconds(5))
滑动窗:滑动窗分配器将元素分配到固定度的窗中,与滚动窗类似,窗的
由窗参数来配置,另个窗滑动参数控制滑动窗开始的频率;因此可能出现
窗重叠,如果滑动参数于滚动参数的话;
SlidingEventTimeWindows.of(Time.seconds(10), Time.seconds(5))
会话窗:通过session活动来对元素进分组,跟滚动窗和滑动窗相比,不会有重
叠和固定的开始时间和结束时间的情况。当他在个固定的时间周期内不再收到元素,即
非活动间隔产,那么窗就会关闭;
个session窗通过个session间隔来配置,这个session间隔定义非活跃周期的
度。当这个非活跃周期产,那么当前的session将关闭并且后续的元素将被分配
到新的session窗中去。如:
EventTimeSessionWindows.withGap(Time.minutes(10)
触发器(Triggers)
触发器定义个窗何时被窗函数处
EventTimeTrigger
ProcessingTimeTrigger
CountTrigger
PurgingTrigger
驱逐器(Evictors)
任务提交与停姿势
任务提交
启动命令详解 :Apache Flink 1.7 Documentation: YARN Setup
参数
Usage:
Required
-n,--container <arg> Number of YARN container to allocate (=Number of
Task Managers)
Optional
-D <arg> Dynamic properties
-d,--detached Start detached
-jm,--jobManagerMemory <arg> Memory for JobManager Container with
optional unit (default: MB)
-nm,--name Set a custom name for the application on
YARN
-q,--query Display available YARN resources (memory,
cores)
-qu,--queue <arg> Specify YARN queue.
-s,--slots <arg> Number of slots per TaskManager
-tm,--taskManagerMemory <arg> Memory per TaskManager Container with
optional unit (default: MB)
-z,--zookeeperNamespace <arg> Namespace to create the Zookeeper sub-
paths for HA mode
提交到yarn-cluster上需要以 y 或者yarn作为前缀;如: ynm=nm
flink run -c com.jacobs.jobs.realtime.wordcount.WindowWordCount target/real-
time-jobs-1.0.0-SNAPSHOT.jar
flink run -m yarn-cluster -ynm SinkToKafkaStream -yn 4 -yjm 1024m -ytm 4096m -
ys 4 -yqu feed.prod -c com.weibo.api.feed.dm.stream.TestFlinkStream /data1/dm-
flink/feed-dm-flink-1.0.4-SNAPSHOT.jar
flink run -m yarn-cluster -ynm SinkToKafkaStream -yn 2 -yjm 1024m -ytm 4096m -
ys 2 -yqu feed.prod -c com.weibo.api.feed.dm.stream.SinkToKafkaStream /data1/
dm-flink/feed-dm-flink-1.0.4-SNAPSHOT.jar
停任务
关闭或重启flink程序能直接kill掉,这样会导致flink来不及制作checkpoint,应该调
flink提供的cancel语意
//重启正确姿势, with savepoint
1. 调cancel,cancel之前先触发savepoint
bin/flink cancel -s [:targetDirectory] :jobId -yid: yarnAppId
: flink cancel -s hdfs://vcp-yz-nameservice1/user/hcp/hcpsys/feed/flink-
checkpoints/test-user-logs 97b4e67859af4bfb1b597355f1c846f3 -yid
application_1542801635735_2121
2. 从savepoint中恢复flink程序
剩余15页未读,继续阅读
基鑫阁
- 粉丝: 59
- 资源: 358
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- .archivetemp04 - 继承和多态 作业.doc
- 基于运动学车辆模型的开放式驾驶MPC横向控制算法Analyzed commaai Openpilot MPC lateral c
- STM32F103单片机源码STM32-74HC595串转并控制数码管显示
- python语言教程项目案例
- 斐波那契数列java代码 FibonacciProblem
- 服务器的概要介绍与分析
- logseq-linux包
- 蓝色简历首页的微信小程序模板源码
- 基于MPC的仿真轨迹跟踪模块MPC-based Simulink trajectory tracking module
- 递归地求解Fibonacci数列.pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0