Apache Flink(四):Flink 其他实时计算框架对比

🏡 个人主页:IT贫道_大数据OLAP体系技术栈,Apache Doris,Clickhouse 技术-CSDN博客

 🚩 私聊博主:加入大数据技术讨论群聊,获取更多大数据资料。

 🔔 博主个人B栈地址:豹哥教你大数据的个人空间-豹哥教你大数据个人主页-哔哩哔哩视频


根据前文描述我们知道Flink主要处理的是流数据,针对的是实时计算领域,在Flink之前,大数据实时领域中还有Storm、SparkStreaming。Storm是比较早的流式计算框架,后来又出现了SparkStreaming,为了支持SQL Spark后期又推出StructuredStreamig,现在又出现了Flink这种优秀的实时计算框架,那么这几种计算框架到底有什么区别呢?下面我们从不同角度来对比下三个实时计算框架:

  1. 模型:Storm和Flink是真正的一条一条处理数据,而SparkStreaming是微批批处理,一次处理一批数据(小批量),后期Spark推出的StructuredStreaming支持微批处理也支持连续处理(Continuous),目前还处于实验性,实时性不如Flink。
  2. API:Storm使用基础API进行开发,比如实现一个简单的sum求和操作需要自己编写很多业务逻辑;而SparkStreaming、StructuredStreaming和Flink中都提供封装后的高阶函数,可以直接来使用,非常方便。
  3. SQL支持:早期Storm处理流数据不支持SQL,最新版本支持SQL处理流数据,SparkStreaming不支持SQL处理,后期Spark推出的StructuredStreaming支持SQL处理流式数据,Flink也是支持SQL处理实时数据。
  4. EventTime支持:Storm早期和SparkStreaming实时数据处理不支持事件时间,Storm后期实时数据处理支持事件时间,同样Spark后期推出的StructuredStreaming处理流数据也是支持事件时间,Flink诞生开始处理实时数据就支持事件时间。
  5. 保证次数:在数据处理方面,Storm可以实现至少处理一次,但不能保证仅处理一次,这样就会导致数据重复处理问题,所以针对计数类的需求,可能会产生一些误差,SparkStreaming、StructuredStreaming和Flink支持Exactly-once数据处理语义。
  6. 容错机制:Storm可以通过ACK机制实现数据的容错机制,而SparkStreaming、StructuredStreaming和Flink可以通过CheckPoint机制实现容错机制。
  7. 状态管理:Storm中没有实现状态管理,SparkStreaming实现了基于DStream的状态管理,StructuredStreaming支持基于Dataset/DataFrame的状态管理,而Flink实现了基于操作的状态管理。
  8. 延时:表示数据处理的延时情况,Storm和Flink接收到一条数据就处理一条数据,其数据处理的延时性是很低的;SparkStreaming和StructuredStreaming都支持微批处理,数据处理的延时性相对会偏高,虽然StructuredStreaming支持Continuous连续处理,但是目前处于实验阶段,数据处理延迟性相对Flink偏高,Flink实时数据处理延迟最低。
  9. 吞吐量:Storm的吞吐量其实也不低,只是相对于其他几个框架而言较低;SparkStreaming、StructuredStreaming和Flink的吞吐量是比较高的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

用高性价比CRM系统,轻松管理复杂的销售流程

对于中小企业来说,选型CRM系统的重点便是性价比。中小企业预算有限,要在满足需求的前提下选择符合预算的CRM系统。那么,有没有性价比高的CRM系统?Zoho CRM就很不错哦。 Zoho CRM是一款SaaS云端CRM客户管理系统,多次荣…

4D雷达目标检测跟踪算法设计

1.算法流程 4D雷达点云跟踪处理沿用3D毫米波雷达的处理流程,如下图: 从接收到点云开始,先对点云做标定、坐标转换、噪点剔除、动静分离,再分别对动态目标和静态目标做聚类,然后根据聚类结果做目标的特征分析和检测等&a…

Vue3-数据交互请求工具设计

1.安装axios pnpm add axios 2.利用axios.create创建一个自定义的axios来使用 参考官网:axios中文文档|axios中文网 | axios 在src/utils文件夹下新建request.js,封装axios模块 import axios from axios const baseURL const instance axios.creat…

2023.11.12 阿里云产品全线故障

阿里云 11.12 故障原因曝光:访问密钥服务 (Access Key) 异常 (baidu.com) 故障原因竟然是因为生成白名单代码逻辑缺陷。

TP4056是一款单节锂离子电池恒流/恒压线性充电器IC

TP4056 1A 锂电池充电器 概述: TP4056 是一款单节锂离子电池恒流 / 恒压线性充电器 , 采用底部带散热片的ESOP-8L封装以及简单的外部应用电路,非常适合便携式设备应用,适合USB电源和适配器电源工作,内部采用防倒充电路,不需要外部隔离二极管。热反馈可对…

JVM 字节码

JVM概述 问题引出 你是否也遇到过这些问题? 运行着的线上系统突然卡死,系统无法访问,甚至直接OOM!想解决线上JVM GC问题,但却无从下手。新项目上线,对各种JVM参数设置一脸茫然,直接默认吧&…

完美的输出打印 SQL 及执行时长[MyBatis-Plus系列]

导读 Hi,大家好,我是悟纤。过着爱谁谁的生活,活出不设限的人生。 在我们日常开发工作当中,避免不了查看当前程序所执行的SQL语句,以及了解它的执行时间,方便分析是否出现了慢SQL问题。 MyBatis-Plus提供了两种SQL分析打印的方式,用于输出每条SQL语句及其执行时间,针…

现代化工安全保障迎来巡查无人机新时代

当今现代化工企业呈现出规模不断扩大,设备逐渐趋向大型化的局面,由此导致化工安全生产面临日益严峻的挑战。然而,随着巡查无人机技术的成熟,这种新的高效手段正在提高化工安全检测的工作效率。 一、传统化工安全巡检存在弊端 化工…

博捷芯:半导体芯片切割,一道精细工艺的科技之门

在半导体制造的过程中,芯片切割是一道重要的环节,它不仅决定了芯片的尺寸和形状,还直接影响到芯片的性能和使用效果。随着科技的不断进步,芯片切割技术也在不断发展,成为半导体制造领域中一道精细工艺的科技之门。 芯片…

【MySQL:从零开始练级】环境安装与基础认识

hello大家好,失踪人口回归,今天开始新专栏MySQL:从零开始练级,今天给大家分享MySQL的环境安装与基础认识,希望大家能有所学习收获。 目录 1️⃣ Centos 7环境下安装 2️⃣什么是数据库 3️⃣服务器、数据库、表关系 4️⃣MySQ…

训练 CNN 对 CIFAR-10 数据中的图像进行分类-keras实现

1. 加载 CIFAR-10 数据库 import keras from keras.datasets import cifar10# 加载预先处理的训练数据和测试数据 (x_train, y_train), (x_test, y_test) cifar10.load_data() 2. 可视化前 24 个训练图像 import numpy as np import matplotlib.pyplot as plt %matplotlib …

出一个画质demo

#灵感# 画质demo, 适应的场景不一定多,但演示的功能却一个不少。简单列一下,短时间出一个画质demo的流程。 目录 1、基础检查 2、目标确认 3、调试 4、释放demo 参数 1、基础检查 分辨率、帧率、max gain、bit depth(输出raw图像位宽&a…

【Flink进阶】-- Flink kubernetes operator 快速入门与实战

1、课程目录 2、课程链接 https://edu.csdn.net/course/detail/38831

新型信息基础设施下的IP追溯技术:构建数字化安全新境界

随着新型信息基础设施的快速发展,IP(Internet Protocol)追溯技术在数字化安全领域变得愈发重要。IP追溯不仅能够帮助识别网络攻击源,提升网络安全水平,还有助于数字证据追踪、合规性审计等方面。本文将探讨新型信息基础…

Linux shell for jar test

Linux shell 脚本,循环解析命令行传入的所有参数,并按照不同的传参实现对不同的 java jar文件 进行测试执行。 [rootlocalhost demo]# cat connTest.sh #!/bin/bash# Linux shell for qftool java jar test# modes DEFAULT_MODE2jarfiles[1]common-1.0…

智慧城市管理的得力助手——无人机管理平台

近年来,随着无人机技术的迅猛发展,无人机管理平台应运而生,成为这一行业的重要基础设施。该平台充分利用智能无人机管理和物联网技术,实现了对城市重要领域的精细化动态管控。 一、无人机管理平台的特点 1、全方位数据获取&#…

Vue3使用LeaderLine

LeaderLine官方文档在这里 1.安装插件 npm install leader-line-vue 2.导出LeaderLine import LeaderLine from leader-line-vue; 3.创建连接线 let line LeaderLine.setLine(startElement, endElement, { startPlug: disc, endPlug: disc,color: white, size: 2 }); …

XSS骚操作

在网上看到的xss无字母的一个骚操作,可以先看一下下面这两个代码: 那么xss也是可以这样的,比如: 实战效果: 这里先将这个编码一下,直接塞到靶场看效果: alert(1)的编译代码: X[![]]!…

【Android】使用intent.putExtra()方法在启动Activity时传递数据

食用方法 在Android中,你可以使用Intent对象来在启动Activity时传递数据。以下是一个示例,展示了如何在startActivity时传递数据到被启动的Activity: 在启动Activity的地方,创建一个Intent对象,并使用putExtra()方法…

Java开发项目之KTV点歌系统设计和实现

项目介绍 本系统实现KTV点歌管理的信息化,可以方便管理员进行更加方便快捷的管理。系统的主要使用者分为管理员和普通用户。 管理员功能模块: 个人中心、用户管理、歌曲库管理、歌曲类型管理、点歌信息管理。 普通用户功能模块: 个人中心…