Hadoop基础知识小结

本文介绍了Hadoop基础知识,包括其两大核心:HDFS分布式文件系统和MapReduce编程模型。详细阐述了HDFS的数据块、NameNode、DataNode、SecondaryNameNode的概念及作用,并解释了MapReduce的工作原理和执行流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Hadoop基础知识小结


从大三暑假开始接触了大数据的工具和框架,但是这些工具一直是使用得云里雾里,原因是不了解背后机制。
所以最近学了一波大数据的相关知识和流行框架Hadoop的工作原理。

慕课网入门课程推荐:

大数据定义:

是一门概念也是一门技术,以Hadoop为代表的各种数据分析技术。
包括实时数据处理、离线数据处理;数据分析、数据挖掘和用机器算法
进行预测分析等技术。

时下代表大数据框架:Hadoop、Spark

大数据应用场景:

  • 数据分析
  • 日志分析
  • 商业决策

Hadoop两大核心:

  • HDFS分布式文件系统(存储是大数据技术的基础)
  • MapReduce编程模型(分布式计算是大数据应用的解决方案)

HDFS概念:

  • 数据块:基本存储单元,文件处理的逻辑单元,默认64M,2.0以后为128M,备份×3
  • NameNode:管理节点,存放文件元数据;文件与数据块的映射表;数据块与数据节点(DataNode)的映射表。
  • DataNode:存储并且检索数据块,定期向NameNode发送心跳,更新metadata。
  • SecondaryNameNode:定期同步元数据映像文件和修改日志,NameNode发生故障时,备胎转正。

HDFS体系结构:

HDFS体系结构

HDFS读取文件流程:

HDFS读取文件流程

HDFS写入文件流程:

HDFS写入文件流程

MapReduce原理:

分而治之,一个大任务分成多个小的子任务(map),并行执行后,合并结果(reduce)。

MapReduce

MapReduce运行流程:

  • Job & Task
  • JobTracker
  • TaskTracker

一个Job被拆分为多个Task。
Job&Task

JobTracker角色:
  • 作业调度。
  • 分配任务、监控任务执行进度。
  • 监控TaskTracker状态。
TaskTracker角色
  • 执行任务。
  • 回报任务状态。
MapReduce执行过程:

MapReduce执行过程

Hadoop2.0以后,去除了JobTracker和TaskTracker,使用Yarn进行统一资源管理和分配,有关Yarn的知识,今后将进行继续学习和总结

MapReduce容错:
  • 重复执行(最多4次)
  • 推测执行

HDFS优点:

  • 适合大文件存储,TB、PB级别数据,副本策略。
  • 可以构建在廉价机器上,硬件冗余,容易扩展、容错、恢复机制。
  • 支持流式数据访问,一次写入,多次读取。
  • 适合数据批量读写,吞吐量高。

HDFS缺点:

  • 不适合大量小文件存储
  • 不适合并发写入,不支持文件随机修改
  • 不支持随机读等低延迟访问方式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值