Hadoop 学习笔记整理二

大纲:
一. 大数据启蒙认识
二. HDFS
三. Hadoop1.0的非HA模式(SecondaryNameNode)
四. Hadoop2.0或者3.0的HA模式

今天的笔记是关于第二点Hadoop1.0的非HA模式(SecondaryNameNode)

Hadoop中的HDFS模块(SecondaryNameNode)

首先必须要了解的HDFS(文件系统)理论知识点如下:

  • 存储模型
  • 架构设计
  • 角色功能
  • 元数据持久化
  • 安全模式
  • 副本放置策略
  • 读写流程
  • 安全策略

存储模型的特点

  • 文件线性按字节切割成块(block),具有offset,id
  • 文件与文件的block大小可以不一样
  • 一个文件除最后一个block,其他block大小一致
  • block的大小依据硬件的I/O特性调整
  • block被分散存放在集群的节点中,具有location
  • Block具有副本(replication),没有主从概念,副本不能出现在同一个节点
  • 副本是满足可靠性和性能的关键
  • 文件上传可以指定block大小和副本数,上传后只能修改副本数
  • 一次写入多次读取,不支持修改
  • 支持追加数据

问题一:Hadoop 为什么要设置HDFS文件系统?

为了实现Hadoop的功能,必须要一个具有以下特点的文件系统:

  1. 超大文件的分布式存储
  2. 文件的高并发访问
  3. 高可扩展性
  4. 高可靠性
  5. 高容错
  6. 高安全性
  7. 高获得性

也正是基于这些特点,所以建立了HDFS文件系统,这也是为什么我们需要它。

问题二:为什么HDFS的block相较于传统文件系统来说大很多?

因为HDFS的的一个设计目标就是能够快速读取。而对于磁盘来说,读取一个数据块涉及到三种时间开销,寻道时间、旋转时间和传输时间。传输时间是磁盘本身的特性,不可能通过人工手段来改变,但是对于寻道时间和旋转时间,则可以通过增大一次读取的数据量来减少寻道和旋转的次数。这样的话,就可以将读取数据的速率设计为接近真实的磁盘传输速率。

举个例子,假设某磁盘的寻道时间和旋转时间之和为10ms,传输速率为100MB/s。那么,如果想设计一种读取方式让寻道时间与旋转时间总和 不高于总读取时间的1%的话,则需要将block的大小设置为100MB。

当然,这个观点不可能长期成立。在MapReduce中,一个Map任务一般一次只处理一个block。那么,当Map任务的数量少于集群中节点的个数时,完成此job所需时间就会慢于其他情况。

问题三: 为什么HDFS中块(block)不能设置太大,也不能设置太小?

  1. size设置过大:
    如果设置的过大,将会导致数据传输时间明显大于寻址时间,导致程序处理这块的时间,变得很慢。
  2. size设置过小:
    • size过小势必导致block的数量变多,当数量多到一定程度的时候,会让namenode的开销变大
    • 寻址时间也会变多

问题四:应该怎么设置block的size?

总的来说磁盘传输速率决定了block size的设置。

  1. HDFS中平均寻址时间大约10ms
  2. 经过实测,寻址时间为了磁盘传输时间的1%,为最佳状态。因此得到如下公式:
最佳传输时间:10ms / 0.01 = 1s
  1. 目前磁盘传输速率普遍为100M/S
    block size=100M/S * 最佳传输时间 = 100M

注意 实际生产过程中,磁盘传输速率为200MB/s时,一般设定block大小为256MB,以此类推。

问题五:完整的文件被切分成分片之后,出现丢失的时候,该怎么办?

HDFS的解决方案是: 分片冗余,本地校验,需要数据块存储模式


image.png
image.png

数据冗余式存储,直接将多份的分片文件交给分片后的存储服务器去校验。
冗余后的分片文件还有个额外功能,只要冗余的分片文件中有一份是完整的,经过多次协同调整后,其他分片文件也将完整。
经过协调校验,无论是传输错误,I/O错误,还是个别服务器宕机,整个系统里的文件是完整的。

参考:
https://www.jianshu.com/p/49eee8e5309a?utm_campaign
https://blog.csdn.net/s5660gt/article/details/83655584
https://blog.csdn.net/wx1528159409/article/details/84260023
https://www.cnblogs.com/sddai/p/8647795.html
https://www.cnblogs.com/guarderming/p/11088518.html

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

推荐阅读更多精彩内容

  • Hadoop 核心-HDFS 1. HDFS概述 1.1 介绍 在现代的企业环境中,单机容量往往无法存储大量数据,...
    打开世界的源代码阅读 450评论 0 0
  • 一.简述如何安装配置apache 的一个开源的hadoop 1.使用root账户登陆 2.修改ip 3.修改hos...
    栀子花_ef39阅读 4,943评论 0 52
  • 目录一 HDFS概念1.概念2.组成3 HDFS 文件块大小二.HDFS命令行操作1.基本语法2.参数大全3.常用...
    Movle阅读 1,627评论 0 5
  • 题记:正值学校运动会假期,想吸收点新鲜的血液。心血来潮搭了个hadoop的伪分布式,了解了下HDFS。 HDFS简...
    朱晓飞阅读 780评论 0 0
  • Hadoop部署方式 本地模式 伪分布模式(在一台机器中模拟,让所有进程在一台机器上运行) 集群模式 服务器只是一...
    陈半仙儿阅读 1,609评论 0 9