Flink基础介绍-1 概述

news2024/10/6 20:36:02

Flink基础介绍-1 概述

  • 一、Flink介绍
    • 1.1 批处理计算引擎
    • 1.2 流式计算引擎
    • 1.3 批处理和流处理

一、Flink介绍

Flink 是为分布式、高性能、随时可用以及准确的流处理应用程序打造的开源流处理框架。Flink 是一个框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。Flink 被设计在所有常见的集群环境中运行,以内存执行速度和任意规模来执行计算。

在这里插入图片描述

1.1 批处理计算引擎

(1)第一代
首先第一代的计算引擎,就是 Hadoop 承载的 MapReduce。它将计算分为两个阶段,分别为 Map 和 Reduce。对于上层应用来说,就不得不想方设法去拆分算法,甚至于不得不在上层应用实现多个 Job 的串联,以完成一个完整的算法,例如迭代计算。
(2)第二代
由于这样的弊端,催生了支持 DAG 框架的产生。因此,支持 DAG 的框架被划分为第二代计算引擎如 Tez 以及更上层的 Oozie。这里我们不去细究各种 DAG 实现之间的区别,不过对于当时的 Tez 和 Oozie 来说,大多还是批处理的任务。
(3)第三代
接下来就是以 Spark 为代表的第三代计算引擎。第三代计算引擎的特点主要是 Job 内部的 DAG 支持(不跨越 Job),以及强调的实时计算。在这里,很多人也会认为第三代计算引擎也能够很好的运行批处理的 Job。
(4)第四代
随着第三代计算引擎的出现,促进了上层应用快速发展,例如各种迭代计算的性能以及对流计算和 SQL 等的支持。Flink 的诞生就被归在了第四代。这应该主要表现在 Flink 对流计算的支持,以及更一步的实时性上面。当然 Flink 也可以支持 Batch 的任务,以及 DAG 的运算。

1.2 流式计算引擎

第一代实时计算引擎Storm(10年提出,11年问世)对Exactly Once 语义和窗口支持较弱,使用的场景有限且无法支持高吞吐计算;第二代Spark Streaming(13年发布) 采用“微批处理”模拟流计算,在窗口设置很小的场景中有性能瓶颈,Spark本身也在尝试连续执行模式(Continuous Processing),但进展缓慢。

Flink(11年发布,19年普及)是一个低延迟、高吞吐的实时计算引擎,其利用分布式一致性快照实现检查点容错机制,并实现了更好的状态管理,Flink可在毫秒级的延迟下处理上亿次/秒的消息或者事件,同时提供了一个Exactly-once的一致性语义,保证了数据的正确性,使得Flink可以提供金融级的数据处理能力。

1.3 批处理和流处理

批处理的特点是有界、持久、大量,批处理非常适合需要访问全套记录才能完成的计算工作,一般用于离线统计。流处理的特点是无界、实时,流处理方式无需针对整个数据集执行操作,而是对通过系统传输的每个数据项执行操作,一般用于实时统计。

在 Spark 生态体系中,对于批处理和流处理采用了不同的技术框架,批处理由 SparkSQL 实现,流处理由 Spark Streaming 实现,这也是大部分框架采用的策略,使用独立的处理器实现批处理和流处理,而 Flink 可以同时实现批处理和流处理。Flink 将批处理(即处理有限的静态数据)视作一种特殊的流处理。

Flink 的核心计算架构是下图中的 Flink Runtime 执行引擎,它是一个分布式系统,能够接受数据流程序并在一台或多台机器上以容错方式执行。

Flink Runtime 执行引擎可以作为 YARN(Yet Another Resource Negotiator)的应用程序在集群上运行,也可以在 Mesos 集群上运行,还可以在单机上运行(这对于调试 Flink 应用程序来说非常有用)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/528553.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PDF转HTML格式怎么弄?将PDF转换为HTML的三种简便方法

PDF和HTML是两种常见的文档格式,它们在用途和外观上有很大的差异。然而,令人惊讶的是,这两种看似毫不相关的格式实际上可以相互转换。 一些网页编辑人员在更新网站内容时,通常会先将内容保存为PDF文件,然后在发布时将…

软件测试——性能测试

性能测试基础 为什么要进行性能测试(WHY)(最重要) 应用程序是否能够很快的响应用户的要求?应用程序是否能处理预期的用户负载并有盈余能力?应用程序是否能处理业务所需要的事务数量?在预期和非…

全网最详细,性能测试各种测试场景分析+性能测试基准测(超细总结)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 面对日益复杂的业…

【JAVA程序设计】(C00135)基于Servlet+jsp的旅游管理系统

基于Servletjsp的旅游管理系统 项目简介项目获取开发环境项目技术运行截图 项目简介 本项目为基于Servletjsp的旅游管理系统:本项目分为二种角色: 管理员: 用户管理(增删改查)、线路管理(增删改查)、景点管…

对SRC并发漏洞挖掘的思考

对SRC并发漏洞挖掘的思考 1.burpsuite Turbo插件使用2.并发点赞测试3.并发验证码测试4.某代金券逻辑测试5.有限制的并发验证码绕过6.对于并发漏洞的思考 1.burpsuite Turbo插件使用 Turbo Intruder是一个用于发送大量HTTP请求并会分析其结果的Burp Suite扩展。它旨在补充Burp …

实景三维浪潮翻涌,新技术“席卷”石家庄!

5月11日,“全自主、全流程、全覆盖”2023实景三维新技术研讨会石家庄站暨航测与遥感学术交流会在石家庄凯旋金悦大酒店圆满举行。 本次会议由中国测绘学会、中国地理信息产业协会指导,河北省测绘学会、河北省地理信息产业协会主办,武汉大势智…

Grafana安装、升级与备份(02)

一、安装Grafana软件包 Grafana部署非常简单,直接使用yum命令从官网拉到安装再启动就可以了,本次使用的grafana版本为9.5.0 官网下载地址:Download Grafana | Grafana Labs # wget yum install -y https://dl.grafana.com/oss/release/grafana-9.5.0-1.x86_64.rpm # yum …

js:正则表达式常用方法总结test、exec、match、matchAll、replace、replaceAll、search

文章目录 正则使用testmatch/matchAll不加g加ggroup 的使用 matchAll不加g加g exec不加g加g searchreplace 正则使用 常用的几种方法有:test、exec、match、matchAll、replace、replaceAll、search test // 匹配返回true,不匹配false /e/.test("…

高通摄像头打不开报错SOF Freeze!

目录 报错日志 代码分析 报错日志 E/mm-camera( 647): <MCT ><ERROR> 95: mct_bus_sof_thread_run: Session 3: Hinting SOF freeze to happen. Sending event to dump infoE/mm-camera( 647): <MCT ><ERROR> 57: server_debug_dump_dat…

大模型来了,自动驾驶还远吗?关键看“眼睛”

感知系统是自动驾驶最重要的模块之一&#xff0c;被视为智能车的“眼睛”&#xff0c;对理解周围环境起到至关重要的作用。随着深度学习以及传感器技术的发展&#xff0c;感知系统呈现出迅猛的发展趋势&#xff0c;涌现出各种新技术&#xff0c;性能指标不断提升。本文将围绕感…

手撕机器学习算法--一步步推导-------NFL(没有免费午餐定理)

文章目录 前言一、NFL是什么&#xff1f;二、表现形式三、介绍四、手动推导 前言 其实机器学习也好&#xff0c;深度学习也罢&#xff0c;在我看来&#xff0c;代码编程终究是不重要的&#xff0c;因为现成的库&#xff0c;其数学原理&#xff0c;其公式推导才是我们需要理解的…

bind查找用法

inclue中的root 也取了名字 引用的时候应该是 引用外面的名字再引用里面的名字&#xff0c;包括rootview也是 binding.errorView.errorView.visibility View.GONE binding.errorView.statusHintIcon?.visibility View.GONE

绩效管理常见的7大误区,越用企业越走下坡路!

绩效管理是企业中非常重要的一个环节&#xff0c;但是很多企业在实施过程中常常会犯一些误区&#xff0c;导致绩效管理的实际效果和预期效果相差甚远。下面我们一起来看看企业中常见的七个绩效管理误区。 1、公司战略和绩效没有关联 绩效管理需要与企业战略相结合&#xff0c;…

【大数据学习篇7】小试牛刀统计并且分析天猫数据

本项目基于搭建大数据环境&#xff0c;通过将数据存放在HDFS上&#xff0c;从HDFS中获取数据&#xff0c;然后根据实际需求通过Spark或Spark SQL对数据进行读取分析&#xff0c;将分析结果存储到HBase表中&#xff0c;最终通过 ECharts数据可视化工具基于Python Web平台实现数据…

【深入浅出】条件概率的链式法则:定义、公式与应用

前言 在概率论的研究中&#xff0c;条件概率是一种非常重要的概念。当多个随机事件发生时&#xff0c;我们有时需要考虑它们同时发生的概率。条件概率的链式法则就是一种用于计算多个随机事件同时发生的概率的方法。本文将会介绍条件概率的链式法则的定义、公式以及应用。 定…

[集合论]集合与二元关系

目录 二元关系导图集合集合表示方法对等差等于两个集合的相对补的或关系 关系序偶与笛卡尔积笛卡尔积 ------不满足交换律 不满足结合律 关系条件 集合与关系划分与覆盖等价关系 (取余、等)商集 偏序关系---自反 反对称 传递(大于等于 小于等于 整除关系 包含 cover 幂集子集关…

入门网络安全,NISP真的有必要考吗?

一、NISP是什么&#xff1f; 国家信息安全水平考试&#xff08;National Information Security Test Program&#xff0c;简称NISP&#xff09;&#xff0c;是由中国信息安全测评中心实施培养国家网络空间安全人才的项目&#xff0c;由国家网络空间安全人才培养基地运营/管理。…

【Git 操作指南】| 撤销远程仓库的 push 以及 git commit 提交

目录 一、撤销 git push二、撤销 git commit 一、撤销 git push 执行git log查看版本日志&#xff0c;找到目标版本。执行git reset --soft <version numbere>&#xff0c;如git reset --soft d8cedc98e008e14a35d3faf424764648fb29d55b&#xff0c;重置为之前提交的版本…

stm32ADC采样结构参数和相关配置

ADC原理&#xff1a; 原理上是将采集保持器与DAC分开的&#xff0c;如下&#xff1a; STM32 逐次逼近寄存器型(SAR)模拟数字转换器(ADC) 但实际电路可将DAC与采集保持器合并&#xff0c;主要运用的原理就是电容电荷再分配&#xff1a; SAR ADC 逐次逼近型模数转换原理及噪声…

通俗易懂理解spark的DAG

DAG简介 百度百科对DAG的解释用一句话概括:无回路有向图。 Spark的DAG(有向无环图)是一个基本概念,在Spark执行模型中起着至关重要的作用。DAG是“定向的”,因为操作是按特定顺序执行的,而“非循环的”是因为执行计划中没有循环或循环。这意味着每个阶段都取决于前一阶…