Flink学习笔记-编译和安装

原创
2019/11/05 15:42
阅读数 501

编译和安装

blink是阿里巴巴贡献的分支,由于阿里巴巴已经收购Flink的母公司Data Artisans,后续Flink很多特性应该会参考blink,所以本次源码的学习会参考blink分支,blink主要是基于flink 1.5.1分支改进

下载代码

git clone https://github.com/apache/flink.git

切换到blink分支

git checkout blink
//查看分支图
git log --graph --decorate --oneline --simplify-by-decoration --all 

源码编译

跳过测试编译方法

mvn clean install -DskipTests

还有一种加快编译的方式,跳过测试、QA插件和JavaDocs

mvn clean install -DskipTests -Dfast

mac pro 256G,scala version 2.11.8,java verison 1.8.0_151-b12,maven version 3.5.4。编译总耗时 27:13 min,编译后生成build-target目录

运行

编译完成后生成build-target目录

cd build-target
./bin/start-cluster.sh

启动可以通过http://localhost:8081 查看flink运行情况

启动完毕后会有两个flink进程

org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint
org.apache.flink.runtime.taskexecutor.TaskManagerRunner

Flink的整体架构图如下:

  • StandaloneSessionClusterEntrypoint进程即为JobManager
  • TaskManagerRunner进程即为TaskManager

WordCount Demo

由于采用的是blink分支,client需要使用alibaba的包

<dependency>
        <groupId>com.alibaba.blink</groupId>
        <artifactId>flink-streaming-scala_2.11</artifactId>
        <version>1.5.1</version>
</dependency>

example可以参考这里,直接运行main方法采用的本地模式。如果希望采用远程模式运行,可以后台提交jar包,如图:

编译后会打包相关的example包,在flink/flink-examples/flink-examples-streaming/target目录下,可以使用WordCount.jar上传运行。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部