01-Hadoop 核心三剑客通俗指南:从“单机搬砖”到“包工队”

01-Hadoop 核心三剑客通俗指南:从"单机搬砖"到"包工队"

在普通电脑上,我们处理数据就像是一个人在单干。比如你要统计一本 1000 页书里有多少个"爱"字,你可以自己一页页翻。

但如果是 100 亿页 的书呢?一个人干到死也干不完。这时不仅需要把书撕开存放在不同的房间里,还需要雇很多人同时去数。

Hadoop 就是这套分布式 存储和计算系统的"包工头"。它主要由三个核心组件组成,我们可以把它们看作一个超大型的数据处理工厂


1. HDFS (分布式文件系统) - "巨大的物流仓库"

  • 痛点:硬盘再大也有上限,而且硬盘坏了数据就丢了。
  • HDFS 方案
    • 切块 (Block):把那个 100T 的大文件,切成无数个 128MB 的小块。
    • 分散存储 :把这些小块随机扔到成千上万台普通的服务器(DataNode)里。
    • 冗余备份 (Replication) :为了防丢,默认每个小块存 3 份。坏了一台机器?没事,其他机器上还有备份。
    • NameNode (仓库管理员):有一台特殊的机器负责记账:"文件 A 的第 1 块在机器 X 上,第 2 块在机器 Y 上"。你找数据得先问它。

一句话总结HDFS 让一堆廉价的普通硬盘组合成了一个超级巨大、永不丢失的硬盘。


2. MapReduce (分布式计算模型) - "流水线工人"

  • 痛点:数据分散在 1000 台机器上,怎么统计总共有多少个"爱"字?把数据全拉到一台超级电脑上算?网线会爆的。
  • MapReduce 方案移动计算,而不是移动数据
    • Map (分发任务) :把"数数"的程序发给那 1000 台机器。每台机器只数自己硬盘里那部分数据。
      • 机器 A:我这块有 5 个。
      • 机器 B:我这块有 3 个。
    • Reduce (汇总结果) :把所有机器数出来的结果汇总起来。
      • 总和 = 5 + 3 + ... = 100 亿。

一句话总结既然数据搬不动,就把计算程序派过去算好再回来。


3. YARN (资源调度器) - "工厂 HR / 调度中心"

  • 痛点:这个工厂里既有 MapReduce 在干活,后来又来了 Spark、Flink 等其他工种。大家都抢 CPU 和内存,乱套了。
  • YARN 方案 :它不管具体怎么算,只管分资源
    • MapReduce 任务来了,找 YARN 申请:"我要 100 个 CPU 核,500G 内存"。
    • YARN 看了看工厂现状:"行,批准,你去 1-10 号机器上跑吧"。
    • Spark 任务来了,YARN 说:"现在没空位了,你排队"。

一句话总结YARN 是大管家,统一分配每台机器的算力资源,防止工种打架。


总结

Hadoop 的核心思想就是:分而治之

  • HDFS 解决了不下、容易丢的问题。
  • MapReduce 解决了不完、网络堵的问题。
  • YARN 解决了资源、不好管的问题。
相关推荐
aLTttY1 天前
【Redis实战】分布式锁的N种实现方案对比与避坑指南
数据库·redis·分布式
橘颂TA1 天前
【Linux】读写锁
大数据·linux·开发语言·c++·读写锁
SelectDB1 天前
Apache Doris 4.1:面向 AI & Search 的统一数据存储与检索底座
大数据·数据库·数据分析
陈天伟教授1 天前
GPT Image 2-勾股定理
大数据·数据库·人工智能·gpt
Elastic 中国社区官方博客1 天前
在 Discover 中探索来自新的时间序列数据流的指标
大数据·数据库·目标检测·elasticsearch·搜索引擎·数据分析·全文检索
2601_956139421 天前
快消品品牌全案公司哪家强
大数据·人工智能·python
源码之家1 天前
Python股票数据分析与预测系统 大数据项目
大数据·python·机器学习·数据挖掘·数据分析·股票·可视化
小江的记录本1 天前
【微服务与云原生架构】DevOps、CI/CD流水线、GitOps 系统性知识体系
分布式·后端·ci/cd·微服务·云原生·架构·devops
精益数智工坊1 天前
红牌作战是什么?红牌作战的实施步骤与核心要点
大数据·运维·前端·人工智能·精益工程
数据法师1 天前
大数据的“存储”:你的数据,到底住在哪儿?
大数据