Flink安装(单机模式、Windows)

目录

1.1 使用意义

1.2 基本概念

1.2.1 执行机构

 1.2.2 部署模式

下载


1.1 意义

想要深入学习Flink的可以另外参考其他文献,我对Flink概念了解也不太深,文本只做简单说明(比较抽象)。

对于Flink我把它理解为一款非常优秀的数据处理中间件,它能把数据处理的过程单独提取出来,减轻数据流通过程中其他步骤的压力。

用过大数据量数据库的同道们应该有体验,当数据量足够大时,简单的查询都会变得很缓慢,更别说在查询语句中加入计算。正常情况下,我们计算数据的过程是在程序中,而sql只需要负责拿出数据。但一些特殊情况下,比如在帆软、grafana等报表工具使用中,我们经常需要通过sql直接处理数据,在大数据量的情况下,这就会大大增加延迟、降低用户体验。

而通过Flink,我们可以将数据处理过程单独提取出来,并应用其高性能机制地提前处理好数据,以便后续使用。

以需求“每秒采集一次设备温度,获取每日最大值和最小值(一台设备一个月约259w条)”为例,通过Flink,我们可以提前计算历史每日最大最小值(批处理) 或 实时计算最近一天的最大最小值(流处理),并将其存入另外的数据表(一台设备一个月约30条)。259w条变30条,查询效率差距显而易见。

1.2 基本概念

在使用Flink之前,需要简单了解几个概念。

1.2.1 执行机构

 JobManager是任务的管理者,负责协调任务执行(接收、分配、维护任务)

 TaskManager是任务的执行者,执行任务内容

 1.2.2 部署模式

本地模式

  • 所有计算任务运行在同一进程中(在同一个程序),不涉及真正的调度
  • 相当于只有一个JobManager和一个TaskManager
  • 实际使用就是没有下载安装Flink,只用了在java程序中使用Flink框架工具包。

单机模式

  • 计算任务可以运行在不同进程中,但运行在同一台机器上,接受一个JobManager的调度
  • 只有一个JobManager,但有多个TaskManager
  • 实际使用就是在且只一台机器上安装部署了Flink,并且把程序上传到Flink中运行。

集群模式

  • 计算任务可以运行在不同机器去上,接受多个JobManager的调度
  • 一个或多个 JobManager 调度多个 TaskManager
  • 实际使用就是在多台机器上安装部署了Flink,做了集群处理,并且把程序上传到Flink中接受调度。

本文只说明单机模式

经验尚浅,理解抽象,欢迎纠正。

网上关于Linux系统的部署Flink的文献有很多,windows的比较少,也因此踩了挺多坑这里。

这里分享的是windwos的部署方式,需要linux版的可另行参考。

下载

我用的是java8,但Flink 从1.15.0开始就不支持java8了,所以使用java8的推荐下载1.14.*版本

镜像(推荐)

Index of /dist/flink

官网

Downloads | Apache Flink

ec1384cec8d44e1c8ba4e74306dbbe20.png

解压文件

一般需要解压两次,第一次解压处tar,第二次才能解压出文件。

8eb5028e4f8c40ab8bd59170183a9f0c.png

这里推荐一款干净的解压软件:

7-Zip

解压后进入bin目录,这里可以看到执行文件都是清一色的shell文件,对windows不太友好。

1.9.*版本之前是有bat的,但1.10之后就没了,Flink对Linux的兼容性更好,windwos推荐测试、学习使用。

a166d35f4bdb4700929cb8513c98ecd7.png

要运行shell,网上也有一些使用自定义bat来间接执行启动文件的,但不太推荐,会出先taskmanager启动不起来等bug。

这里推荐使用Cygwin

Cygwin 是一个为 Windows 系统提供的类 Unix 环境,允许用户在 Windows 上运行类 Unix 应用程序。

官网:Cygwin

4685544f192b4de58d8c008d2c280da5.png

下载后打开

2267b8e8edee4accb5f5116b5269ec19.png

650c098a2bfe47ef8f4270471b105164.png

ab98fc08e8f54bacaf9e8ca7a8b27ead.png

754ac9b711d84c6ebe3d3924f67b0a88.png

这里推荐使用镜像

96eab5c00a7a4f6a99dee277bc7fb63e.png

只需要安装Bash一条即可,初次安装应该在base词条展开的文件下。选中后点击下一步

7399f81af61f474c8131a28d5f63a96b.png

下载完成后完成即可。

后续cygwin如果需要安装其他拓展包或更新拓展包,按照同样的方式,通过setup包更新安装包。

打开cygwin终端

进入bin目录打开mintty.exe或者通过快捷方式打开

ee6ef4186ea54bb795980df82d0ba6ad.png

5c357c1900c24175b9ad38d5d27ec674.png

切盘方式:

cd D:

也可直接进入Flink的bin目录 

cd /cygdrive/d/develop/tool/middleware/compute/flink/flink-1.14.6/bin

运行

./start-cluster.sh

a75d21ca22134e1895ceb944a3d24ccd.png

要停止就执行stop-cluster.sh

运行失败时,可以进入log目录查看最新日志文件记录的具体原因

c9b0c9f1933c428ebc6808aa165a9b3d.png

启动后,浏览器访问localhost:8081,即可正常访问和使用的Flink UI界面。

1b2dd4f10fdf4fea88c125a79a3518e1.png

至此,单机Flink搭建完毕,在Flink上执行任务可以参考后面这篇

Flink实战(Java/MongoDB/Mysql)

评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值