HDFS笔记

Hadoop Distributed File System (HDFS)


提纲

1.什么是HDFS & 为什么要使用HDFS?
2.HDFS的基本命令
3.HDFS结构的简介
4.HDFS系统设计

什么是HDFS?

1.Hadoop 分布式 文件系统。特点:性能高、效率高、速度快
2.可以在廉价的机器上运行的可容错文件系统。
当集群中有机器挂掉时,HDFS会自动将挂掉的机器上的任务分配给正常的机器,使任务继续保持正常工作。

为什么要使用 HDFS?

1.HDFS处理速度更快。
读取1TB数据

2.HDFS处理更加容易。当对一个大型文件进行写操作时,如果将该文件整个写入一个节点,那么该节点的负载便会急剧增加,这样就丧失了分布式文件系统的意义。所以,应该利用HDFS将文件拆分成不同的块,然后将不同的块分配到不同的节点上去,此时,DFS就需要管理者确定文件如何进行拆分,以及每一个块应该分配到哪一个节点。对文件进行操作时,在单机情况下,首先需要知道文件被拆分成多少块,每一个块被放在了哪一个节点上,以及块之间的顺序(文件的粘连)。而HDFS的出现,使得分布式文件集群不再需要人进行管理,利用HDFS读取文件时,我们不需要关心文件如何拆分,分配,粘连。只用告诉HDFS文件的路径即可。


HDFS的基本命令

HDFS的指令类似于linux下的指令。
查看文件:hdfs dfs -ls /查询的文件目录
删除文件:hdfs dfs -rm r /删除的文件
创建文件夹:hdfs dfs -mkdir /文件夹名称
上传文件至HDFS:hdfs dfs -put 需要上传的文件 /上传的文件路径

HDFS结构的简介

为什么需要学习HDFS结构?
1.面试中,能够运用于所有分布式文件系统设计。
既然分布式系统下是多节点运行,那么节点之间是否通信?slave节点只接受来自master节点的命令,向master节点发送心跳指令,slave节点之间不会主动通信。
a.Master slaver 模式:
1.High consistency:一致性。当文件中的一个数据块写入slave节点时,当且仅当数据块被成功写入到所有备份的slave节点,slave节点向client反馈写入操作成功,否则,重传写入;
2.Simple design:易设计:不需要考虑子节点如何通信。只需要考虑主节点的工作;
3.单master节点不具有鲁棒性。
b.Peer peer 模式:
1.所有的读写操作均匀分布在每一个节点上,每一个节点的负载不会很高;
2.任意一个节点挂掉不会影响其他节点;
3.低一致性。没有数据的复制步骤。
2.更好的理解hadoop生态系统



a.master节点会传输数据吗?
不会,master节点只接收client的请求,决定哪一个slave节点进行读写操作,然后,client直接与slave节点进行通信。如果数据从master节点传输,那么master节点就会成为影响数据传输的瓶颈。
b.slave节点如何存储数据?
整个大文件?小的文件块?。HDFS借鉴GFS的设计理念,以block为传输单位,将大文件拆分成一个一个小文件,而一个小文件就是block。block的大小可以由Configuration定义,默认大小是128M。
c.谁来决定将文件拆分成块?
master?slave?。两者都不是,由HDFS client决定将大文件拆分成block(块)。HDFS的目的是将所有的节点包装起来,可以理解成将所有的节点放在一个黑箱里,我们不需要知道黑箱里到底发生了什么,只需要告诉黑箱需要做什么工作,这里的HDFS client相当于HDFS与user通信的中间媒介。HDFS client相当于一个软件包(api),可以存放在master或者slave或者额外的一个新节点上。



d.master节点上存储了什么?
元数据:master需要知道去哪一个slave进行读写操作,以及slave的健康状况,资源使用率。

e.如果其中的一个slave挂掉,数据会丢失吗?
不会,HDFS在数据写入时会进行数据复制操作,一般会复制3份,可以其中2份数据放在比较近的位置,另一份放在远一点的位置,当然也可以在xml中自定义。

f.如果master节点挂掉,元数据会丢失吗?
不会,HDFS有一个checkpoint节点(备胎),它会每隔一个小时复制master上的所有数据,HDFS不会叫备胎节点启动取代当前挂掉的master,HDFS会重启master,从备胎上复制数据。这里不直接将master上的数据写入disk原因,是因为开销会非常大,既消耗时间,也消耗资源。
g.如何进行写操作?client应该将block写到哪里?slave节点
h.如果我们需要将block写入3个slave节点,client是直接写入3个slave中吗?
不是,这样会产生传输瓶颈。client只会将block写入其中一个slave,并发出指令,让该slave节点将block写入剩余2个slave节点,实现block复制。client顺序(非并行)接收请求,即同一时间,一个client只会接收一个user的请求,而master同一时间会接收到成千上万个user请求,因此,client不会成为传输的瓶颈。


写入in memory失败(ACK出现问题)时,master会重新选择3个新的slave节点。



写入disk失败(Block A received出现问题)时,master会选择slave节点替换挂掉的slave节点
i.如何进行读操作?读相同block时,就近选择slave读操作
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,254评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,875评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,682评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,896评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,015评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,152评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,208评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,962评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,388评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,700评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,867评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,551评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,186评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,901评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,142评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,689评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,757评论 2 351

推荐阅读更多精彩内容