博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【大数据】Hadoop
阅读量:2825 次
发布时间:2019-05-14

本文共 780 字,大约阅读时间需要 2 分钟。

Hadoop学习

HDFS概念

数据块

数据块是抽象块而非整个文件作为存储单元

默认大小为64MB,一般设置为128M,备份X3
Hadoop数据块

NameNode

管理文件系统的命名空间,存放文件元数据

维护着文件系统的所有文件和目录,文件与数据块的映射
记录每个文件中各个块所在数据节点的信息

DataNode

存储并检索数据块

想NameNode更新所存储的列表

HDFS优点

适合大文件存储,支持TB、PB级的数据存储,并有副本策略

可以构建在廉价的机器上,并有一定的容错和恢复机制
支持流式数据访问,一次写入,多次读取最高效

HDFS缺点

不适合大量小文件存储

不适合并发写入,不支持文件随机修改
不支持随机读等低延时的访问方式

HDFS写流程

客户端想NameNode发起写数据请求

分块写入DataNode节点,DataNode自动完成副本备份
DataNode想NameNode汇报存储完成,NameNode通知客户端

HDFS读流程

客户端想NameNode发起读数据请求

NameNode找出距离最近的DataNode节点信息
客户端从DataNode分块下载文件

YARN概念

ResourceManager

分配和调度资源

启动并监控ApplicationMaster
监控NodeManager

ApplicationMaster

为MR类型的程序申请资源并分配给内部任务

负责数据的切分
监控任务的执行及容错

NodeManager

管理单个节点的资源

处理来自ResourceManager的命令
处理来自ApplicationMaster的命令

MapReduce编程模型

输入一个大文件,通过Split之后,将其分为多个分片

每个文件分片由单独的机器去处理,这就是Map方法
将各个机器计算的结果进行汇总并得到最终的结果,这就是Reduce方法

转载地址:http://gnehd.baihongyu.com/

你可能感兴趣的文章
Address already in use: JVM_Bind
查看>>
Spring MVC获取不到post提交的multipart/form-data格式的数据
查看>>
Java线程中处理运行时异常(UncaughtExceptionHandler)
查看>>
Spring MVC之LocaleResolver
查看>>
JVM可以创建多少线程?
查看>>
Redis基本操作
查看>>
keycloak的安装和启动
查看>>
keycloak控制台设置简体中文
查看>>
ThreadPoolTaskExecutor遇到的坑
查看>>
linuxdeployqt ldd ERROR: ldd outputLine: .../libQt5Core.so.5: version `Qt_5' not found (required by
查看>>
linux环境下编译pjsip库
查看>>
【整理】PJSIP开源库详解
查看>>
do{...}while(0)的巧妙用处
查看>>
Freeswitch 音视频编码支持
查看>>
FreeSwitch 编码协商
查看>>
SIP DTMF telephone-event
查看>>
双向链表的算法设计和实现(数据结构)
查看>>
Chapter3 HTTP报文
查看>>
Chapter2 NIO入门
查看>>
NIO 入门(1)(from Jakob Jenkov)
查看>>