Flink简介:
在当前的互联网用户,设备,服务等激增的时代下,其产生的数据量已不可同日而语了。各种业务场景都会有着大量的数据产生,如何对这些数据进行有效地处理是很多企业需要考虑的问题。以往我们所熟知的Map Reduce,Storm,Spark等框架可能在某些场景下已经没法完全地满足用户的需求,或者是实现需求所付出的代价,无论是代码量或者架构的复杂程度可能都没法满足预期的需求。新场景的出现催产出新的技术,Flink即为实时流的处理提供了新的选择。Apache Flink就是近些年来在社区中比较活跃的分布式处理框架,加上阿里在中国的推广,相信它在未来的竞争中会更具优势。 Flink的产生背景不过多介绍,感兴趣的可以Google一下。Flink相对简单的编程模型加上其高吞吐、低延迟、高性能以及支持exactly-once语义的特性,让它在工业生产中较为出众。相信正如很多博客资料等写的那样”Flink将会成为企业内部主流的数据处理框架,最终成为下一代大数据处理标准。”
1.下载和部署。
Flink可以运行在Linux、MacOS和Windows系统上,需要JDK1.7+的支持。本文记录了在linux(CentOS 7)上部署过程,默认已经安装了JDK1.8。
1.1 下载
从下面的链接中下载二进制的Flink,根据你喜欢的Hadoop/Scala版本选择对应的Flink版本。
1.2 部署
我选择的版本是 放在itcast目录下
[root@itcast01 ~]# wget http://mirrors.hust.edu.cn/apache/flink/flink-1.6.2/flink-1.6.2-bin-hadoop24-scala_2.11.tgz --2018-12-03 22:39:48-- http://mirrors.hust.edu.cn/apache/flink/flink-1.6.2/flink-1.6.2-bin-hadoop24-scala_2.11.tgz 正在解析主机 mirrors.hust.edu.cn (mirrors.hust.edu.cn)... 202.114.18.160 正在连接 mirrors.hust.edu.cn (mirrors.hust.edu.cn)|202.114.18.160|:80... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度:291631283 (278M) [application/octet-stream] 正在保存至: “flink-1.6.2-bin-hadoop24-scala_2.11.tgz” 28% [=========================> ] 82,004,863 642KB/s 剩余 9m 7s 解压到指定目录 2 [root@itcast01~]# tar -zxvf flink-1.3.2-bin-hadoop27-scala_2.10.tgz -C /itcast [root@itcast01 bin]# ./start-cluster.sh # Start Flink 后面是1.3版本之前的启动方式 .bin/start-local.sh [root@itcast01 bin]# ./stop-cluster.sh 停止
如要停止Flink,请使用命令:bin/stop-cluster.sh
。
1.3 访问Flink监控界面
访问Flink前端界面,确认系统启动,地址: 这个界面是我已经运行测试任务代码的结果,有jobs任务
2. 运行WordCount
在数据处理领域,WordCount就是HelloWorld。Flink自带WordCount例子,它通过socket读取text数据,并且统计每个单词出现的次数。如果你想查阅例子源码,请点击链接:。
2.1 启动本地监听
首先,使用nc命令启动一个本地监听,命令是:
nc -l 9000
如果报错:-bash: command not found,请先安装nc,在线安装命令:yum -y install nc
。
2.2 提交WordCount程序
新开一个shell窗口 提交WordCount程序的命令:
切换到flink-1.6.2下,不要进入bin目录运行代码
[root@itcast01 flink-1.6.2]# bin/flink run examples/streaming/SocketWindowWordCount.jar --port 9000 Starting execution of program
正常运行的话,已经可以看到任务
2.3 发送数据
在启动nc的shell窗口,输入
[root@itcast01 flink-1.6.2]# nc -l 9000 cpu cpu cpu lmc lmc lmc jiao jiao jiao
新开一个shell窗口,去/itcasst/ flink-1.6.2/log目录下,执行tail -f flink*.out
,可以查看到word count的结果。
[root@itcast01 log]# tail -f flink-root-taskexecutor-0-itcast01.out cpu : 3 jiao : 3 lmc : 3 : 1
[root@itcast01 bin]# ./start-cluster.sh # Start Flink 开启服务 [root@itcast01 bin]# ./stop-cluster.sh 停止
以上就是为各位朋友分享的相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多等着你!