Flink

许多大厂使用flin + storm.spart/storm是批处理大数据,flink是流处理大数据。也就是说支持增量的更新,不用牵一发而动全身,实施更改。

安装和部署。

可以用kubernates管理cluster,把程序部署到集群中。也可以部署到本地虚拟机。

nc -l -p 9000,然后输入命令行数据。

然后

datastream.map().keyby().print().sink()

关键概念:

flink支持savepoint, checkpoint,对出错点支持rollback,fallover.把运行中的状态保存到内存或者磁盘,同时支持watermark,所以数据是原子性的,有序的。

flink如何在代码级实现流的合并于通信,需要了解,以及并行度的问题

目前可以操作savePoint

Flink on Yarn

deployment:

1. 准备工作

linux server: >=2 

准备flink的包

2. 安装基础软件

1) rz和sz

sudo yum install lrzsz

2) java

3. 上传安装包

rm -rf ss // delete on linux

tar -xvf flink-1.6.2-bin-scala_2.11.tgz

ln -s flink-1.6.2 flink

环境变量: FLINK_HOME=/opt/flink

// 配全局的环境变量, 而不是改用户的环境变量

vi etc/profile

export FLINK_HOME=/opt/flink

export path=${FLINK_HOME}/bin:$path

// 刚开始键入flink,并不会生效,而是要source使之生效

source etc/profile

bin/start-local.sh or bin/start-cluster.sh

stop: bin/stop-cluster.sh

jps 查看进程

jps -l 看详细名字

4. flink部署

1) flink配置

check ips by echo /etc/hosts

conf/flink-conf.yaml

job manager.address:slave05

taskmanager.numberOfSlot:2

conf/slaves

slave06

1.2) 分发包

ssh面密

// -r 级联, hadoop是用户名

scp传包 scp -r flink-1.6.2 hadoop@slave06:~/

2) 启动flink

bin/start-cluster.sh

可以自动添加Jobmanager/ taskmanager

bin/jobmanager.sh

bin/taskmanager.sh

3) run socket wordcound example

on slave06: nc -l 9000

on slave05: flink run ./wordcount.jar --port 9000 --hostname slave06

running on dashboard

see taskmanager, check record and stdout

mvn clean install -DskipTests
mvn clean package
mvn clean install -DskipTest -Dfast (javadoc, QA plugin, default import hadoop2)
mvn clean install -DskipTests -Dhadoop.version=2.6.1 (ss pom)

原文地址:https://www.cnblogs.com/connie313/p/12232336.html