大数据-计算框架选型与对比

计算框架选型与对比

  • 一、大数据平台
  • 二、计算框架分类
    • 1.批处理架构
    • 2.实时流处理架构
    • 3.流批一体处理架构
  • 三、计算框架关键指标
    • 1.处理模式
    • 2.可伸缩性
    • 3.消息传递
      • 3.1 至少一次(at least once)
      • 3.2 至多一次(ai most once)
      • 3.3 恰好一次(exactly once)
    • 4.中间结果存储
    • 5.迭代计算
    • 6.吞吐量
    • 7.容错
    • 8.状态管理
  • 四、计算框架对比
  • 总结
    • 参考链接

一、大数据平台

针对大数据的应用每个企业都有自己特定的需求和情况,所以都需要针对需求成本技术等搭建自己的大数据平台。大数据平台是一个对海量数据从采集、存储、计算、应用、管理、运维的多方位、多维度的组合研究设计,从而建设合理高效满足企业需求的大数据平台架构。

二、计算框架分类

为了应对数据量的激增、分析需求时效性的要求,计算框架逐步从早期的批处理转变到现在的实时流处理的转变,按照对数据处理方式计算框架可以分类如下:

1.批处理架构

批处理指的是将数据按照批次进行收集、存储和处理分析。批处理是一种离线数据处理方式、数据被收集完毕后才会进行处理,因此需要等待一段时间。早期大数据平台基本都是采用批处理对数据进行计算。Apache Hadoop就是一个批处理框架,包括存储组件HDFS和计算组件MapReduce。
优点:

  • 适用于离线数据处理,特别是对历史数据进行分析和挖掘 (例如日志数据、数据库数据等)
  • 高吞吐量、能够处理大规模数据、适合大数据分析
  • 处理的数据规模比较大,通常数百万或数千万条数据

缺点:

  • 不能实现实时分析,数据处理延时比较高
  • 不适合低延迟场景

2.实时流处理架构

实时流处理就是数据生产之后立刻进行处理,数据以流的形式产生后即可进行处理和分析,可以实现更低的延迟和更高的即可性。实时流是一种在线数据处理方式,Apache Storm和Apache Samza是实时流处理架构。
优点:

  • 实时性更强
  • 低延迟、适合一些即时场景(例如金融交易、物联网等)
  • 一般是实时小规模数据流

缺点:

  • 针对离线数据处理吞吐量低于批处理
  • 可能无法支持复杂逻辑处理

3.流批一体处理架构

随着需求发展,大数据需要提供更全面的数据处理能力,也就是需要同时支持批处理和实时处理。所以一个架构将批处理和流处理结合成为一种趋势,将实时流数据存储下来,然后在批量任务中进行深入分析和挖掘。Apache Spark和Apache Flink是典型的流批一体处理架构。
优点:

  • 可以充分发挥批处理和实时处理的优势,满足不同的业务需求。
  • 可以减少实时流处理的压力,将部分处理转移到批处理中进行。

缺点:

  • 增加了系统复杂性,需要同时维护批处理和实时处理组件
  • 数据一致性需要特别关注

三、计算框架关键指标

计算框架在对大数据处理过程中会遇到一些普遍存在和框架需要处理的问题,所以计算框架支持的功能和解决一些问题的处理方式可以看作关键指标和对比维度。主要维度如下:

1.处理模式

处理模式是指计算框架对批处理和实时处理支持与否。

2.可伸缩性

可伸缩性是指系统通过增加资源来应对不断增加的负载的能力。由于大数据本地就存在负载不均衡或者不连续的情况,所以是大数据架构的基本指标。现有的大数据框架基本都是通过水平拓展来应对负载的增加。

3.消息传递

针对在处理过程中如果出现异常,每个框架对消息如何处理并不相同。按照处理类型分为

3.1 至少一次(at least once)

意味着会很多次尝试对消息进行处理,并且至少处理成功一次。可能导致最终的处理结果中数据重复的情况。

3.2 至多一次(ai most once)

意味只会一次尝试对消息进行处理,也就是最多成功一次。可能导致最终处理结果中数据缺失的情况

3.3 恰好一次(exactly once)

意味着该消息不会被重复处理,也不会不进行处理,只会被精确的处理一次。这种情况最终的处理结果中数据是精准的。

4.中间结果存储

计算过程中中间的结果存储介质,如果保存到磁盘、则计算速度慢、但是对内存需求会比较低;如果保存到内存、则计算速度快、但是需要较大的内存支持。

5.迭代计算

迭代计算是指迭代方法的实现,该迭代方法在没有实际解的情况下或在实际解的成本过高的情况下估计近似解

6.吞吐量

7.容错

分布式系统中,包含任务故障、节点故障、网络故障等,框架应该能够恢复,并且应该从它离线的位置再次开始处理,一般通过不时地检查流式传输到某个持久存储的状态来实现

8.状态管理

在状态处理要求的情况下,我们需要维护某些状态(例如记录中看到的每个不同单词的计数),框架应该能够提供一些机制来保存和更新状态信息。

四、计算框架对比

在这里插入图片描述

总结

以上对大数据平台组成、计算框架需要提供哪些功能、常用计算框架对比。

参考链接

1.大数据处理平台的架构演进:从批处理到实时流处理

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

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

相关文章

边海防可视化智能视频监控与AI监管方案,助力边海防线建设

一、背景与需求 我国有3万多公里的边境线和海岸线,随着我国边海防基础设施建设的快速发展,边海安防也逐渐走向智能化。传统人工巡防的方式已经无法满足边海智能化监管的需求,在沿海、沿边地区进行边海智慧安防视频监控系统等边海防基础设施建…

智慧海岛/海域方案:助力海洋空间智慧化、可视化管理

随着我国海洋经济的快速发展,海域海岛的安防技术也获得了进步。传统的安防监控模式已经满足不了海域海岛的远程监管需求。伴随着人工智能、边缘计算、大数据、通信传输技术、视频技术、物联网等信息化技术的发展,海岛海域在监管手段上,也迎来…

【Spring Cloud实战】分布式系统控制与组件应用

在现代软件开发中,分布式系统已经成为一种常见的架构模式,被广泛应用于各种规模的企业和组织中。这种架构模式通过将应用程序拆分为独立的组件,并分布在不同的计算机节点上运行,使得系统能够应对高负载和大规模的数据处理需求&…

python tkinter使用(四)

本篇文章主要讲下tkinter 的文本框相关. tkinter中用Entry来实现输入框,类似于android中的edittext. 具体的用法如下: 1:空白输入框 如下: name tk.Entry(window) name.pack()2: 设置输入框的默认文案 name tk.Entry(window) name.pack() name.insert(tk.END, "请…

使用支付宝的沙箱环境在本地配置模拟支付并发布至公网调试

文章目录 前言1. 下载当面付demo2. 修改配置文件3. 打包成web服务4. 局域网测试5. 内网穿透6. 测试公网访问7. 配置二级子域名8. 测试使用固定二级子域名访问9. 结语 前言 在沙箱环境调试支付SDK的时候,往往沙箱环境部署在本地,局限性大,在沙…

vue .prop修饰符

一、官网概念 .prop - 强制绑定为 DOM property 原本自定义属性默认会绑定在DOM的attributes上,加上prop之后会绑定在property,attributes上就不存在咯 在页面上的一个明显区别就是:不加prop时,DOM渲染后自定义属性和值都是暴露在…

自定义label组件

自定义label组件 支持边框绘制 支持shape背景(按指定圆角裁剪,矩形,圆角矩,圆形),支持指定角圆角 支持自定义阴影(颜色,偏移,深度) 边框颜色支持状态选择器 预览 核心绘制辅助类 public class LabelHelper {private final Paint paint;private Paint shadowPaint;private fina…

【无标题】学习HTML

由于工作需求,学习了一些html的相关知识,最终应用到打印功能上使用。 HTML是指超文本标记语言(HyperText Markup Language)。它是一种用于创建和呈现互联网上页面的标准标记语言。HTML是Web开发的基础,是构建网页和应…

宅家追剧神器推荐,高亮轻薄投影仪极米Z7X带你开启追剧新体验

周末假期怎么玩?相信有不少朋友已经准备好了出游计划,当然也有很多小伙伴想趁周末在家追追剧、看看电影、玩玩游戏放松一下。那么,今天笔者就给大家带来了一款假期娱乐神器——极米Z7X,无论是出游还是宅家追剧,极米Z7X…

深度解析 Docker Registry:构建安全高效的私有镜像仓库

文章目录 什么是Docker Registry?Docker Hub vs. 私有RegistryDocker Hub:私有Registry: 如何构建私有Docker Registry?步骤一:安装Docker Registry步骤二:配置TLS(可选)步骤三&…

SVD 最小二乘法解 亲测ok!

线性最小二乘问题 m个方程求解n个未知数&#xff0c;有三种情况&#xff1a; mn且A为非奇异&#xff0c;则有唯一解&#xff0c;xA.inverse()*bm>n&#xff0c;约束的个数大于未知数的个数&#xff0c;称为超定问题&#xff08;overdetermined&#xff09;m<n&#xff0…

OpenSSL SSL_read: Connection was reset, errno 10054

包含下面两种错误 一、unable to access https://github.com/username/xxx.git/: OpenSSL SSL_read: Connection was reset, errno 10054二、unable to access https://github.com/username/xxx.git/: Failed to connect to github.com port 443 after 21171 ms: Timed out不同…

精通Nginx(17)-安全管控之防暴露、限制访问、防DDos攻击、防爬虫、防非法引用

安全是每个系统都需要考虑的关键因素,Nginx在这方面提供了丰富的功能,使我们可以就实际情形做很精细调整。这些功能包括防信息暴露、客户端访问限制、通讯加密、防DDos攻击、防爬虫、防非法引用及防非法域名请求等。 目录 防信息暴露 关闭版本号 关闭目录列表 客户端访问…

18.oracle的过程和函数

oracle11g的过程和函数 一、过程&#xff08;Procedure&#xff09;1、子程序2、过程的相关语法 二、函数&#xff08;Function&#xff09;1、函数的概念2、函数的创建3、 案例 在Oracle数据库中&#xff0c;过程和函数都是用来封装一系列SQL语句和逻辑操作的数据库对象&#…

ChatGPT重磅升级!集简云支持GPT4 Turbo Vision, GPT4 Turbo, Dall.E 3,Whisper等最新模型

在11月7日凌晨&#xff0c;OpenAI全球开发者大会宣布了 GPT-4的一次大升级&#xff0c;推出了 GPT-4 Turbo号称为迄今为止最强的大模型。 此次GPT-4的更新和升级在多个方面显示出强大的优势和潜力。为了让集简云用户能快速体验新模型的能力&#xff0c;我们第一时间整理了大会发…

VR直播如何打破视角壁垒,提升观看体验?

随着数字技术的不断发展&#xff0c;直播行业也发生了新的变革&#xff0c;VR直播也成为了直播行业中新的趋势&#xff0c;那么VR直播是如何打破视角壁垒&#xff0c;提升观看体验的呢&#xff1f; 杭州亚运会那几天&#xff0c;多项比赛热火朝天&#xff0c;无论你是参赛队伍的…

【double check 读写锁】

使用double check 读写锁 读多写少场景 记录下 //来源 jdbc 中的查询连接信息 //public abstract class ConnectionUrl implements DatabaseUrlContainer public static ConnectionUrl getConnectionUrlInstance(String connString, Properties info) {if (connString null…

上市公司常见的印章问题契约锁如何帮您解决?

您知道公司印章的管理和使用是否存在问题&#xff1f;公司内部该如何通过印章问题自查&#xff0c;及时进行风险防治&#xff1f; 印章是上市公司权利的象征&#xff0c;开展“印章管理审查”确保管理和使用合规&#xff0c;也是上市公司内控和监管的一项重要内容。如果存在不合…

S71200通过PROFINET协议和岛电数字控制器通讯

项目要求 西门子S71200PLC需要通过PROFINET协议和岛电数字控制器&#xff08;型号&#xff1a;SRS13A&#xff09;通讯&#xff0c;读取温度的测量值PV和设定值SV。 项目实施 采用NET90-PN-MBT&#xff08;以下简称“网关”&#xff09;&#xff0c;它是一款将Modbus TCP/RT…