
1、Flink是什么
Java Apache Flink是一个开源悔瞎的分布式,高性能,高可用,准确的流处理框架。支持实时流处理和批处理。
2、Flink特性
(1)支持批处理和数据流程序处理
(2)优雅流畅的支持java和scala api
(3)同时支持高吞吐量和低延迟
(4)支持事件处理和无序处理通过SataStream API,基于DataFlow数据流模型
(5)在不同的时间语义(时间时间,处理时间)下支持灵活的窗口(时间,技术,会话,自定义触发器)
(6)仅处理一次的容错担保
(7)自动反压机制
(8)图处理(批) 机器学习(批) 复杂事件处理(流)
(9)在dataSet(批处理)API中内置支持迭代程序(BSP)
(10)高效的自定义内存管理,和健壮的切换能力在in-memory和out-of-core中
(11)兼容hadoop的mapreduce和storm
(12)集成YARN,HDFS,Hbase 和其它hadoop生态系统的组件
3、Flink分布式执行
Flink分布式程序包含2个主要的进程:JobManager和TaskManager.当程序运行时,不同激冲的进程就会参与其中,包括Jobmanager、TaskManager和JobClient
Flink程序提交给JobClient,JobClient再提交到JobManager,JobManager负责资源的协调和Job的明前歼执行。一旦资源分配完成,task就会分配到不同的TaskManager,TaskManager会初始化线程去执行task,并根据程序的执行状态向JobManager反馈,执行的状态包括starting、in progress、finished以及canceled和failing等。当Job执行完成,结果会返回给客户端。
使用下面其中一个命令来创中旦闷迟戚建Flink Java工程卖弯1、使用Maven archetypes:
$ mvn archetype:generate \
-DarchetypeGroupId=org.apache.flink \
-DarchetypeArtifactId=flink-quickstart-java \
-DarchetypeVersion=1.0.0
2、运行quickstart脚本
$ curl https://flink.apache.org/q/quickstart.sh | bash
yarn-session.sh(开辟资庆旅源) + flink run(提交任务)1.在yarn上启动一个Flink会话,node1上誉坦凳执行以下命令
/export/server/flink/bin/yarn-session.sh -n 2 -tm 800 -s 1 -d
说明:
申请2个CPU、1600M内存
-n 表示申请2个容器,这里指的就是多少个taskmanager
-tm 表示每个TaskManager的内存大小
-s 表示每个TaskManager的slots数量
-d 表示以后台程序方式运行
注意:
该警告不用管
WARN org.apache.hadoop.hdfs.DFSClient - Caught exception
java.lang.InterruptedException
http://node1:8088/cluster
/export/server/flink/bin/flink run /export/server/flink/examples/batch/WordCount.jar
运行完之后信羡可以继续运行其他的小任务
/export/server/flink/bin/flink run /export/server/flink/examples/batch/WordCount.jar
yarn application -kill application_1599402747874_0001
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)