组件理解

HDFS(Hadoop分布式文件系统)的思路特别实在:切分+多节点备份

  • DataNode:多节点存,还怕丢数据?切好的小数据块,会分散存到集群里的“DataNode”(存储节点)上。
  • NameNode:“大脑”记位置,不用瞎找,这么多DataNode和数据块,咋知道哪个块在哪?HDFS有个“指挥中心”叫NameNode,它专门记两件事:每个文件由哪些块组成,每个块在哪个DataNode上。

MapReduce:切任务+分布式算+汇总结果。

  • Map阶段:各算各的,先出局部结果
    MapReduce先把要算的数据切成多个“分片”(Split),每个分片对应一个“Map任务”,分给不同的计算节点。比如统计消费能力,每个Map任务就负责自己分片里的订单,算出“这个分片里,程序员花了多少钱、设计师花了多少钱”——先搞出局部结果。
  • Reduce阶段:汇总一下,出最终答案
    所有Map任务算完,会冒出一堆局部结果。这时候“Reduce任务”登场,把相同key的结果凑到一起算总账。比如把所有分片里“程序员”的消费金额加起来,就是程序员的总消费;再除以程序员用户数,平均消费能力就出来了。

YARN(Yet Another Resource Negotiator) ,本质是一个 集群资源管理与作业调度框架

  • Container:给任务画个“资源圈”
    YARN会把每台服务器的CPU、内存,打包成一个个“容器”(Container)——其实就是个限制了资源的JVM进程。比如给一个Map任务分配1核CPU、2GB内存,它就只能在这个圈里跑,别想多占资源,保证其他任务也能正常干活。
  • 按需分配:该给谁就给谁
    你提交个MapReduce任务,YARN先看任务要多少资源,再在集群里找空闲的服务器,分配对应的Container,把任务塞进去跑。要是某台服务器崩了,YARN还能把任务转移到其他节点,保证计算不中断。
    简单说,MapReduce只管“咋算”,YARN只管“给资源让你算”,分工明确,互不耽误。

Hive
为了让数据分析人员能够像使用 SQL 一样方便地查询大数据,我们需要一个工具来简化这个过程。它就是 Hive。你可以将它理解为 sql 和 mapreduce 的一个中间层。
它可以将用户输入的类似 SQL 的查询语言解析转换成一个个复杂的 mapreduce 任务,运行并最终输出计算结果。

Spark:高效的“批量流水线”

核心比喻:一辆拥有超大货柜的“高速货运列车”

工作方式:这辆列车不会为每一个包裹(数据)单独出发。它会先花点时间把一分钟内到达的所有包裹都装上车(这是一个微批处理的过程),然后关上门,风驰电掣般地开往目的地。在车上,工人们(CPU核心)可以同时、高效地对这一整批包裹进行分拣、贴标等复杂操作。

优势:吞吐量巨大。对于一大批固定的包裹(历史数据、海量日志分析),它能以极高的效率一次性处理完,非常强大和稳定。

短板:有轻微的延迟。即使最快的列车,也要等装完货才能出发。所以它无法实现“一个包裹刚到,下一秒就处理完”的极致实时。

一句话总结Spark:它是为处理海量批量数据而生的“高速货运列车”,追求极高的吞吐量,适合做离线数据分析、机器学习等任务。

Flink:敏捷的“实时流水线”
核心比喻:一条永不停歇的“包裹处理传送带”

工作方式:传送带上的每个包裹(数据)都是独立的。包裹一放上传输带,它就立刻开始移动,经过每一个处理节点(如扫码、称重、分拣)时都立刻被处理,真正做到“来一个,处理一个”(这就是真正的流处理)。

优势:延迟极低,达到毫秒级。对于需要即时反应的应用(如欺诈交易检测、实时监控告警),它能做到事件一发生,结果立刻就出来。

短板:在吞吐量达到极限时,要维持这种“一件一件”处理的极低延迟,对系统资源的协调能力要求更高。

一句话总结Flink:它是为处理无界实时数据流而生的“高速传送带”,追求极致的低延迟,适合做实时风控、实时推荐、实时监控等任务。

Hbase是什么
虽然现在大数据存算问题及处理问题都解决了。但用hive从海量数据里读写一两条数据,依然是接近分钟级别的操作, flink虽然实时性高,但一般面向数据处理,而不是在线读写场景。有办法像mysql那样,在毫秒级别完成实时在线读写吗?基于这个痛点,大佬们又设计了分布式数据库Hbase,用于在海量数据中高并发读写数据的场景。

流程
1、写数据
在大数据场景下,我们将数据写入到 hdfs 中的多个 datanode 中。

image

2、读数据
image
在数据分析场景,用户将写好的 sql,输入到 hive 中,hive 会将 sql 解析为多个 mapreduce 计算任务,配合 yarn的资源调度,mapreduce这类计算框架,将这些计算任务分发到多个服务器上,再将计算好的结果汇总后,得到最终结果,最后返回给用户。完成读数据。

image

当然如果追求性能,也可以将 hive 换成 spark sql,将 mapreduce 换成 spark,通过内存加速整个读数据的过程。对于实时性要求高的场景,可以使用flink。
image

对于在线实时查询场景,可以通过hbase,实现海量数据的毫秒级查询。

image

参考

组件介绍1

组件介绍2

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

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

相关文章

Lazarus在linux下独立守护进程(无外部依赖,自动脱离终端)

Lazarus在linux下独立守护进程(无外部依赖,自动脱离终端)一、以前用 pid := FpFork;if pid = 0 thenbegin // 主循环endelsebegin Halt; // 父进程退出end; 发现有的系统能运行。有的系统退出终端后运行一会就自动…

搜维尔科技:Xsens动作捕捉系统实时捕捉人体运动数据,为人形机器人提供拟人化动作训练和实时控制支持

在机器人技术飞速发展的当下,实现机器人精准模仿人类动作并实时响应操作指令,已成为推动产业升级的关键。Xsens动作捕捉系统凭借其高精度、实时性和环境适应性,成为训练与控制人形机器人的核心工具,重新定义了人机…

“模型法线到视图法线”的变换矩阵(normal matrix)的计算和作用

“模型法线到视图法线”的变换矩阵(normal matrix)的计算和作用“模型法线到视图法线”的变换矩阵(normal matrix)作用:用于在 光照计算(lighting) 中,将 模型空间中的法线方向 正确地转换到 视图空间(或摄像…

首批凭借!华为云CodeArts Snap智能开发助手通过可信AI智能编码设备评估,获当前最高等级

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

去年夏天

还有什么等待 还有什么悲哀 这故事中的人不太精彩 夏去了又回来 而人却已不在 它重复着我汹涌的忍耐 今年兰花又开 开了它也会败 我想要一个人活得精彩 有些人总会来 有些人在我心中在徘徊 我拿了总会还 你拿了就逃开 …

pythontip 字符串首位连接

字符串的连接‘+’ str1+str2 收到多个字符串使用input_str存储 调用时列表起始0 input()得到的字符串列表存储 input_str[0]+input_str[-1] def join_first_last(input_str): return input_str[0]+input_str[-1] 输入…

aspose-pdf 修改pdf文件备忘录

public class PatchedLicense {public static DateTime NewParseExact(string s, string format, IFormatProvider provider){return new DateTime(2099, 12, 30);}public static void Run(){MethodHookManager.Instan…

第28节:网络同步与多人在线3D场景 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

别再选错!5分钟掌握AI Agent框架选型的方法

本文介绍AI Agent框架选型指南,阐述了框架对AI应用开发的重要性,将主流框架分为入门友好型、多智能体协作、复杂流程建模、自主决策能力和企业级应用五大类9种框架,从技术复杂度、功能特性、行业适用性等维度进行对…

完整教程:【Qt MOC预处理器解读与使用指南】

完整教程:【Qt MOC预处理器解读与使用指南】pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", &qu…

Linux - 7 磁盘管理篇

1)tree 可视化目录 tree 是 Linux 中可视化目录结构的实用工具,能以树形图形式递归展示目录下的文件和子目录,清晰直观,常用于文档整理、项目结构查看、运维排查等场景。以下从「安装、基础用法、进阶参数、实用场…

java word转 pdf

<!-- https://mvnrepository.com/artifact/com.luhuiguo/aspose-words --><dependency><groupId>com.luhuiguo</groupId><artifactId>aspose-words</artifactId><version>2…

11-05 题

11-05 题P7468 [NOI Online 2021 提高组] 愤怒的小 N - 洛谷 CF1938M - 2024 ICPC Asia Pacific Championship CF1466H Finding satisfactory solutions - 洛谷 P8147 [JRKSJ R4] Salieri - 洛谷 CF1770F Koxia and Se…

Markdown之Typora语法

Markdown之Typora语法 标题 #+空格:一级标题 ##+空格:二级标题 ...... 最多支持六级标题 字体 *** +正文+ * :粗体(星星之间无空格) *** +正文+ :斜体* *** * * +正文+ * * :粗斜体* **~ +正文+ :画线**(正文…

运维审计/堡垒机选型 2025:从 SSH 直连|堡垒机绕行的可见性到“命令+返回文本”的内容级证据

运维审计/堡垒机选型 2025:从 SSH 直连|堡垒机绕行的可见性到“命令+返回文本”的内容级证据在 2025 年多云、外包协同成为常态的运维环境下,企业在选型运维堡垒机/运维审计系统时,已不再仅仅关注“谁登录、从哪台…

[题解]P12025 [USACO25OPEN] Sequence Construction S

P12025 [USACO25OPEN] Sequence Construction S Ref:P12025 [USACO25OPEN] Sequence Construction S 题解 - Little_x_starTYJ 我们的构造要满足三个条件:\(1\le N\le 100\) \(\sum_i^N A_i=M\) \(\bigoplus_i^N \te…

【日记】我居然解决了三家运营商都没解决的问题(539 字)

正文这则日记是在家里写的,难得的,我出差回家了。并且,还和兄长的假期凑巧到了一起。这次出差负责解决一个支行的问题。说实话,我心里没什么底,因为支行反馈上来的情况相当怪。总体而言,就是十分正常的操作,而且…

深入解析:Jackson 入门:为什么它是 Java JSON 处理的首选?

深入解析:Jackson 入门:为什么它是 Java JSON 处理的首选?pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Cons…

大模型在流行性乙型脑炎极重型预测及个体化诊疗专业的方案中的应用研究

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …