Flink详解之一--概述

Flink SQL管理平台flink-streaming-platform-web安装搭建-整理 为什么我下的是适配flink 1.14.3的,我前面安装flink1.13.5,我也是下了一堆flink,经过尝试,才发现flink1.13.5这个版本,适配flink-streaming-platform-web tagV20220625。最近看到有人在用flink sql的页面管理平台,大致看了下,尝试安装使用,比原生的flink sql界面确实好用多了,我们看下原生的,通过bin/sql-client.sh命令进入那个黑框,一只松鼠,对,就是那个界面。否则,安装hadoop集群可老费事儿了。 阅读详情

大数据计算引擎的发展

近年来随着大数据的发展,涌现出了一大批开源的大数据处理引擎,比如hadoop, storm, spark等。国外的一些社区将这些大数据计算引擎分为4代:

第一代以hadoop承载的mapreduce为标志,开启了大数据处理的先河。mapreduce将处理过程分为map和reduce两个阶段,对于复杂应用,需要拆分为多个mapreduce的job, 并有应用层去管理各个job的依赖关系。

第二代以支持DAG框架为标志,也是以批处理为主,具体如Tez,以及更上层的Oozie。

第三代以spark为代表,开启了内存计算的时代,支持job内部DAG管理,同时支持流处理、批处理,并提供SQL高层API支持。

第四代就该系列要介绍的Flink,主要是由于Flink对流计算的支持。

Flink于2014年12月成为Apache软件基金会的顶级项目,2015年9月发布第一个稳定版本0.9,到目前为止已经发布到1.12版本,社区非常活跃。

全球有越来越多的公司在使用Flink, 国内主流互联网公司都在大规模使用Flink作为企业分布式大数据处理引擎。Flink之所以如此受到青睐,除了其提供高吞吐、低延迟和Exactly-once一致性语义支持外,更重要的是它能以流数据的处理方式来处理批数据,可以真正意义上实现批流处理的统一。正是由于这些特性,使Flink逐渐成为主流的大数据处理框架,并将在不久的将来成为下一代大数据处理的标准。

Flink架构

Flink是一个分布式系统,它的运行涉及到多个进程,这些进程会分布到集群的多台不同机器上。分布式系统就需要面对这样的几个问题:分配和管理集群计算资源,进程协调,持久且高可用的数据存储及故障恢复等。

Flink并不依靠自身去实现这些功能,而是在已有集群基础设施和服务之上专注于它的核心功能--分布式流数据处理。它和很多集群管理器(比如:YARN、Mesosd等)能很好的集成,也可以独立运行。它不提供分布式持久化存储,而是使用现有的分布式文件系统(HDFS)和对象存储(S3)。它使用ZooKeeper来完成可用性配置中的领导选举工作。

1、任务提交过程

以YARN作为资源管理器为例,Flink任务提交后,Client向HDFS上传Flink的Jar包和配置,之后向Yarn资源管理器提交任务,资源管理器分配容器资源并通知对应的NodeManager启动ApplicationMaster,ApplicationMaster启动后加载Flink的Jar包和配置构建环境,然后启动JobManager,之后ApplicationMaster向资源管理器申请资源启动TaskManager,资源管理器分配容器资源后,由ApplicationMaster通知资源所在节点的NodeManager启动TaskManager,NodeManager加载Flink的Jar包和配置构建环境并启动TaskManager,TaskManager启动后向JobManager发送心跳包,并等待JobManager向其分配任务。

flink--提交任务到yarn流程.png

2、运行架构

图片

从上面的Flink任务执行图可以看到,运行时有两个主要的进程:JobManager和TaskManager。client不是Flink程序运行时和程序执行的一部分,它主要负责准备和提交dataFlow到JobManager, 并接收JobManager返回的程序执行结果。

JobManager负责协调Flink程序的执行,包括:任务的调度、任务运行完成与失败的处理,协调检查点与恢复等,主要包括以下项职能:

  • ResourceManager:负责资源分配,管理任务slot, 这个是flink集群资源管理的单位。

  • Dispatcher:提供应用程序提交的REST接口,对每一个提交的作业启动JobMaster,并运行Flink WebUI提供作业执行的信息。

  • JobMaster:负责单个作业图(JobGraph)的执行。一个集群可以同时运行多个作业,每个作业都有自己的JobMaster。

TaskManager负责执行dataflow中的任务,缓存和交换数据流。一个作业执行时,至少要有一个TaskManager,TaskManager中资源调度的最小单位是slot。一个TaskManager中的slot数表示的是该TaskManager中可以并行执行任务的数量

3、任务和算子链

为方便执行,Flink将不同算子的子任务(subtask)链接到一个任务里,每一个任务在一个线程中执行。这是一个非常有用的优化方式,它减小了进程间数据交换和缓存的开销,而且在减少延迟同时增加了吞吐量。这种链接关系是可配置的,下面是一个有5个子任务(subtask)的示例,有5个线程并行执行。

图片

4、任务Slot和资源

每个worker(TaskManager)都是一个JVM进程,可以执行一个或多个子任务(subtask)。任务槽(task slot)就是为了控制一个worker能同时运行多少个任务的(至少一个)。

每个任务槽(task slot)代表TaskManager一个设定的资源子集。比如, 一个TaskManager有3个槽,会将其管理的1/3的内存分给每个槽位。将资源分成不同的槽位意味着一个子任务(subtask)不会跟其他作业的子任务竞争资源,而是会拥有一定量的保留资源。需要注意的是,这里不涉及CPU隔离,目前任务槽仅仅分割task管理的内存。

为了适配任务槽(task slot)的数量,用户可以定义子任务(subtask)是如何隔离的。如果每个TaskManager有一个槽,就意味着task组运行在不同的GJVM里。如果每个TaskManager有多个槽意味着多个字任务(subtask)共享同一个JVM。任务在同一个JVM运行可以共享TCP链接和心跳信息。它们可以共享数据集和数据结构,因此可以减少每个任务的开销。

图片

Flink系列三:Flink架构、独立集群搭建及Flink on YARN模式详解 Flink架构,Flink独立集群搭建与使用,Flink on yarn的三种部署模式(Application,Per-Job Cluster,Session ) 阅读详情

相关推荐

【Flink】详解Flink的八种分区

本文详细介绍乐Flink中分区API以及底层分区器并给出图例,从源码角度分析各个分区器的原理,最后介绍了分区器的使用源码。

pcx171的博客 5911

学习flink概述入门篇

一、Flink概述 1、技术发展趋势 (1)2020年,在整个大数据领域,Flink可算是火得一塌糊,不但将阿里Blink中的大部分特性merge到社区的Flink中,使得Flink在流式实时计算领域更是一骑绝尘,让其他实时计算框架只能望其项背 (2)目前Flink根本看不到其他的对手!同时Flink新版本又完美的兼容Hive,使得Flink在离线计算也快马加鞭,飞速赶超,完美实现批流统一,甚至很多有人称2020年为批流统一元年!、 2、Flink简介 (1)Apache Flink 是一个分

weixin_39868387的博客 1399

尚硅谷大数据Flink1.17实战教程-笔记01【Flink概述、Flink快速上手】

尚硅谷大数据Flink1.17实战教程-笔记01【Flink概述、Flink快速上手】

upward 5832

Flink基本原理 + WebUI说明 + 常见问题分析

Flink基本原 + 框架解析 + 如何通过WebUI排查常见问题

qijingpei的博客 7271

Flink 搭建 - Flink On Yarn 集群模式

Flink 搭建 - Flink On Yarn 集群模式模式说明安装准备安装配置启动测试(Session模式)启动测试(Job 分离模式) Apache Flink 1.10 Documentation 模式说明 将 Flink 的 jar 包提交在 yarn 集群中,由 yarn 集群调度执行,所以我们只需要在 1 台服务器中解压 Flink 安装包就可以,其本质仅仅只是为了提交 Flink 应用到 yarn 集群中 Flink On Yarn 的两种运行模式 ① Session 会话模式 特点:需要事

半吊子Kyle的博客 1万+

【Flink实战系列】Flink web UI 的使用介绍

最近也是由于电脑出了一点问题,就没有更新,今天主要来介绍一下Flink的web ui的使用,我们先提交一个job上去(我的集群是on yarn的),命令如下: flink run -m yarn-cluster -c flink.window.FlinkWindowDemo -yn 2 -ys 4 -nm hbase -yjm 2048 -ytm 2048 -p 9 /home/jason/b...

JasonLee实时计算 3万+

Flink窗口概述及用法详解

一.简介 窗口window是处理无限流的核心。窗口将流分成有限大小的“存储块”,我们可以在其上应用计算。本博客重点介绍如何在Flink中执行窗口化,以及程序员如何从其提供的功能中获得最大收益。 窗口式Flink程序的一般结构如下所示。第一个片段指的是键控流,而第二个片段指的是非键控流。正如人们所看到的,唯一的区别是keyBy(…)使用window操作键控流和使用windowAll(…)操作的非键控流。 键控窗口 stream .keyBy(...) <- k

踏雪无痕 2296

【Flink实战系列】Flink 本地 Web UI 的配置及使用

当你在本地开发调试 Flink 任务的时候,如果没有搭建集群环境,但是又想要查看 Flink 的 Web UI 该怎么办呢? 其实 Flink 是提供有在本地查看 Flink UI 功能的。 添加依赖 <!-- 本地查看 Flink UI 需要这个包 --> <dependency> <groupId>org.apache.flink</groupId> <artifactId>fl.

JasonLee实时计算 6947

Flink的State概述

文章目录前言Flink的State类型基本类型划分组织形式划分 前言 当我们经常在谈论一个Flink任务是否是有状态的,此时我们谈论的点其实就是Flink内部的State的概念。但是这里的State的概念已经不是单纯指我们平时所说的Event–&amp;amp;gt;State这样的比较固定的概念,更确切地说,它是一种运行间的数据信息。这些状态数据在容错恢复及checkpoint时将起到很关键的作用。本文笔者来...

走在前往架构师的路上 7908

蓝牙耳机充电仓——功能框架

数据传输:大部分充电仓会跟耳机通信,控制耳机开机、关机和进入可搜索模式等等。蓝牙耳机给大家的生活带来便利,来讲讲TWS蓝牙耳机的搭档充电仓吧!方便携带:如果耳机单独带着,指定能弄丢一个,有了充电仓就安全多了。收纳保护:把珍爱的耳机放入充电仓里,防止丢失、磕碰、刮花等。给耳机充电:提供电力补给,让耳机持续使用。

改变自己现在能改变的,珍惜自己现在所拥有的 8948

C++继承与多态 - 继承多态原理01

C++继承多态原理讲解

大秦坑王的专栏 2977

Flink Checkpoint 详解

阳阳阳的博客 8995

若依框架集成saToken

若依版本3.8.8,鉴权采用security框架,这种框架太重,项目中想实现对外提供接口功能。尽快减少修改原框架的逻辑基础上,采用satoken实现。

sccd2009的专栏 1482

Flink概述

Flink概述一、Flink 是什么二、为什么要用 Flink三、流处理的演变发展四、Flink 的主要特点五、Flink vs Spark Streaming 一、Flink 是什么 Flink 起源于 Stratosphere 项目, Stratosphere 是在 2010~2014 年由 3 所地处柏林的大学和欧洲的一些其他的大学共同进行的研究项目, 2014 年 4 月 Stratosphere 的代 码 被 复 制 并 捐 赠 给 了 Apache 软 件 基 金 会 , 参 加 这 个 孵

聚焦大数据、AI、数据库三大核心领域,分享 Flink/Spark 实时计算、数仓架构设计、AI 模型落地、数据库性能调优的实战干货,附可直接运行的源码与方案。提供企业技术内训、项目咨询与定制化服务,助力开发者与企业高效搞定数智技术难题。 2051

uniapp实战:5分钟搞定PDA激光扫码功能(附完整代码)

本文详细介绍了在Uniapp应用中快速集成工业PDA激光扫码功能的实战方案。通过解析PDA硬件扫码与手机摄像头扫码的核心机制差异,提供了完整的广播监听封装类代码,并演示了在Vue页面中的集成使用方法,帮助开发者高效解决仓储、零售等行业的条码扫描需求。

weixin_29239661的博客 456

dToF直方图之美_deadtime死区时间

IMX459的死区时间可以在6ns,这个时间是什么级别,车载激光雷达激光器的光脉宽一般都在4ns以上,也就是这个时间贴近去SPAD的死区时间,这就导致了pile up会非常弱,不会有太多数量的光子计数堆积,加上某些SPAD设计,对TDC有一些更深入的考量,所以不需要去校正pile up算法。Sensor层面决定了pile up的复杂程度,如果一个dToF的SPAD一致性非常好,那么pile up校正可以简单到极致,也就是一句代码的事,比如IMX611,优秀到不需要后端去考虑校正pile up。

dream it possible 1434

Flink(1):Flink概述

0. 相关文章链接 1. 实时即未来 如今的我们正生活在新一次的信息革命浪潮中,5G、物联网、智慧城市、工业4.0、新基建……等新名词层出不穷,唯一不变的就是变化!对于我们所学习的大数据来说更是这样:数据产生的越来越快、数据量越来越大,数据的来源越来越千变万化,数据中隐藏的价值规律更是越来越被重视!数字化时代的未来正在被我们创造! 历史的发展从来不会一帆风顺,随着大数据时代的发展,海量数据和多种业务的实时处理需求激增,比如:实时监控报警系统、实时风控系统、实时推...

yang_shibiao的博客 2058

SMOKE 3D:从 Python 到 C++ 实现车辆与行人单目 3D 视觉识别在 RK3588 上的深度部署

SMOKE的网络结构通常基于高性能的骨干网络(如DLA-34,您使用的模型就是基于此),通过编码器-解码器架构来提取特征。输入:RGB图像(本项目为骨干网络:用于特征提取。检测头热力图分支:预测关键点热力图。通常在热力图上进行NMS来找到局部最大值,即潜在的关键点位置。回归分支:对于每个关键点位置,预测上述的8维3D属性向量。分类分支:预测每个关键点对应的物体类别。置信度分支:预测每个关键点的置信度。本教程详细介绍了SMOKE单目3D目标检测模型在RK3588上的部署。我们从SMOKE的。

LXY_LOVE36的博客 436

Flink基础概述

封装了底层处理函数,提供了通用的模块,比如转换(包括map,flatmap),连接(joins),聚和(aggregations),窗口(windows)操作,的状态一致性保证(例如,如果要将flink里的数据交给MySQL,该特点可以保证数据移交过程没有数据丢失)语义(按照数据本身的时间来计算),对于乱序事件流,事件时间语义仍然能提供一致性且准确的结果。:本身高可用的设置,加上k8s,yarn和mesos的紧密集成,再加上。,如kafka,hive,jdbc,redis等。

2401_84143502的博客 743

疾风气象大模型4.0白皮书

《疾风气象大模型白皮书摘要》 疾风气象大模型(J-AFM)是国内首个基于3D建模的气象智能平台,突破传统二维气象分析的局限,采用体素化技术构建"x-y-z-t"四维统一模型,实现从分钟级短临到30天跨时效的连续预测。核心技术包括:1)多源数据三维同化,融合雷达、卫星、风廓线等异构数据;2)物理约束AI解码器,嵌入能量守恒、湍流封闭等气象原理;3)行业适配插件,服务风电、光伏、航空等领域,如山地风场尾流校正、云影短临预测。平台支持批流一体推理与边缘部署,提供概率化输出和误差溯源能力,显著降

专注AI大模型,软件混淆,授权 540

LFM线性调频信号的MATLAB仿真

线性调频(LFM)是一种不需要伪随机编码序列的扩展频谱调制技术。由于线性调频信号占用的频带宽度远大于信息带宽,所以也可以获得很大的系统处理增益。线性调频信号又称鸟声(Chirp)信号,因为其频谱带宽落于可听范围,则听若鸟声,所以又称Chirp扩展频谱(CSS)技术。LFM技术在雷达、声纳技术中有广泛应用,如在雷达定位技术中,它可在增大射频脉冲宽度、提高平均发射功率、加大通信距离同时又保持足够的信号频谱宽度,不降低雷达的距离分辨率。线性调频(LFM)是一种不需要伪随机编码序列的扩展频谱调制技术。

平时工作较为繁忙,私信消息一般晚上回复,谢谢大家~~ 902

Flink 概述

一、简介   Flink是 Apache 基金会旗下的一个开源大数据处理框架。目前,Flink 已经成为各大公司大数据实时处理的发力重点,特别是国内以阿里为代表的一众互联网大厂都在全力投入,为Flink 社区贡献了大量源码。如今 Flink 已被很多人认为是大数据实时处理的方向和未来,许多公司也都在招聘和储备掌握 Flink 技术的人才。 二、特性 2.1 Flink 的核心特性 Flink 区别与传统数据处理框架的特性如下。 高吞吐和低延迟。每秒处理数百万个事件,毫秒级延迟。 结果的准确性。Flink

mengxianglong123的博客 6282

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Flink on K8s 概述

flink on k8s

tianhouquan的专栏 2464

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

flink概述

文章目录flink概述flink应用场景重要特点事件驱动型(Event-driven)流与批的世界观分层 api其它特点对比sparkstreaming flink概述 Apache Flink 是一个框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。Flink 被设计在所有常见的集群环境中运行,以内存执行速度和任意规来执行计算。 Apache Flink 是为分布式、高性能、随时可用以及准确的流处理应用程序打造的开源流处理框架 flink应用场景 为什么选择flink 流数据更真实地反映

weixin_46155444的博客 764

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

上一篇: Flink详解系列之二--核心概念
下一篇: 大数据Hadoop之——新一代流式数据湖平台 Apache Hudi
wrr-cat
博客等级 码龄9年 128粉丝 302原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值