点开看看,教你轻松搭起flink流计算框架

本文介绍如何从官网下载并安装Apache Flink,详细解释DataSources的概念及其在流处理中的作用,提供启动Flink集群及发布作业的步骤,并分享在调整并行度和TaskSlots配置时的经验教训。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

https://flink.apache.org/zh/downloads.html 官网下载包,

 

下载最新版,发送到虚拟机中并解压,然后使用命令./bin/start-cluster.sh # Start Flink

启动后登录 ip:8081 可看到控制台

 

Data Sources 是什么呢?就字面意思其实就可以知道:数据来源。

 

Flink 做为一款流式计算框架,它可用来做批处理,即处理静态的数据集、历史的数据集;也可以用来做流处理,即实时的处理些实时数据流,实时的产生数据流结果,只要数据源源不断的过来,Flink 就能够一直计算下去,这个 Data Sources 就是数据的来源地。

 

Flink 中你可以使用 StreamExecutionEnvironment.addSource(sourceFunction) 来为你的程序添加数据来源。

 

Flink 已经提供了若干实现好了的 source functions,当然你也可以通过实现 SourceFunction 来自定义非并行的 source 或者实现 ParallelSourceFunction 接口或者扩展 RichParallelSourceFunction 来自定义并行的 source,

 

发布

将项目打成jar包

 

进入控制台发布JOB,使用google浏览器操作,其他浏览器可能会有Bug。

 

填写后点击submit按钮成功启动任务

 

 

 

注意事项:修改conf/flink-conf.yaml中的taskmanager.numberOfTaskSlots来设置,具体指单个TaskManager可以运行的并行操作员或用户功能实例的数量。如果此值大于1,则单个TaskManager将获取函数或运算符的多个实例。这样,TaskManager可以使用多个CPU内核,但同时,可用内存在不同的操作员或功能实例之间划分。此值通常与TaskManager的计算机具有的物理CPU核心数成比例(例如,等于核心数,或核心数的一半)。

以上操作旨在扩大任务并行数量,避免并行数量大与槽数导致报错

 

 

踩坑:

1. 程序中的stream.sink.parallelism并行数被我设置为了5,而flink初始TaskSlots值为1, 导致slot不报错NoavalibleSource,建议在配置文件中将taskmanager.numberOfTaskSlots值设置为 cpu核数/cpu核数一半

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值