首先来看看Hadoop 是什么?

  • Hadoop 是一个开源的大数据框架
  • Hadoop是一个分布式计算的解决方案
  • Hadoop = HDFS(分布式文件系统)+ MapReduce(分布式计算)

Hadoop 的两个核心:

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

先来介绍第一个核心 —— HDFS,它有三个特点:

  • 普通的成百上千的机器构成
  • 按TB甚至PB为单位的大量的数据
  • 简单便捷的文件获取

HDFS 的基本概念:

数据块-数据块是抽象块而非整个文件作为存储单元,在 Hadoop1.x 中默认大小是64M,Hadoop2.x 中默认大小是128M,默认每个块备份3份。

由于HDFS是分布式的,也就是主从模式,NameNode 就是主,DataNode 就是从。所以 HDFS 是由一个 NameNode 和多个 DataNode 组成的。

NameNode:

  • 管理文件系统的命名空间,存放文件元数据
  • 维护着文件系统的所有文件和目录,文件与数据块的映射
  • 记录每个文件中各个块所在数据节点的信息(这些信息在 DataNode 启动时会发送给 NameNode)

P.S. 如果 NameNode挂掉了怎么办?(分布式系统存在的问题,后面会讨论这个问题)

DataNode(文件系统的工作节点):

  • 存储并检索数据块;
  • 向 NameNode 更新所存储块的列表

HDFS 结构图

HDFS 优点:

  • 适合大文件存储,支持 TB、PB 级的数据存储,并有副本策略
  • 可以构建在廉价的机器上,并有一定的容错和恢复机制
  • 支持流式数据访问,一次写入,多次读取,高效

HDFS 缺点:

  • 不适合大量小文件存储
  • 不适合并发写入,不支持文件随即修改
  • 不支持随机读等低延时的访问方式

P.S. Hadoop 本来也不是为这些场景设计的,所以到底用不用 Hadoop 要基于具体的业务场景来考虑。

NameNode 挂掉了怎么办?如何解决单点故障问题?

这是一个很严重的问题,因为我们很难把这些位于不同 DataNode 的数据块重建成文件。Hadoop2 给出了HDFS的高可用 HA 方案:HDFS通常由两个NameNode组成,一个处于 active 状态(主节点),另一个处于 standby 状态(备用节点),两者的数据是时刻保持一致的。当主节点出现问题,备用节点会自动切换,用户不会受到影响,这样就避免了 NameNode 的单点故障问题。当主节点对外提供服务,比如处理来自客户端的 RPC 请求,而备用节点则不对外提供服务,仅同步主节点的状态,以便能够在它失败时快速进行切换。

欢迎关注我的知乎专栏【数据池塘】,专注于分享机器学习、数据挖掘干货:https://zhuanlan.zhihu.com/datapool

⬇️ 扫描下方二维码关注公众号【数据池塘】 ⬇️

回复【算法】,获取最全面的机器学习算法网络图:

Hadoop 的核心(1)—— HDFS相关推荐

  1. Hadoop第五天--HDFS详解

    文章部分选自:https://blog.csdn.net/gwd1154978352/article/details/81095592 自己的话:层楼终究误少年,自由早晚乱余生 眼泪你别问,joker ...

  2. Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解

    编者按:HDFS和MapReduce是Hadoop的两大核心,除此之外Hbase.Hive这两个核心工具也随着Hadoop发展变得越来越重要.本文作者张震的博文<Thinking in BigD ...

  3. 初识Hadoop两大核心:HDFS和MapReduce

    一.Hadoop是什么? Hadoop是一个能够对大量数据进行分布式处理的软件框架,实现了Google的MapReduce编程模型和框架,能够把应用程序分割成许多的小的工作单元,并把这些单元放到任何集 ...

  4. BigData之Hadoop:Hadoop框架(分布式系统基础架构)的简介(两大核心【HDFS存储和MapReduce计算】)、深入理解、下载、案例应用之详细攻略

    BigData之Hadoop:Hadoop框架(分布式系统基础架构)的简介(两大核心[HDFS存储和MapReduce计算]).深入理解.下载.案例应用之详细攻略 目录 Hadoop的简介(分布式系统 ...

  5. 详解Hadoop核心架构HDFS+MapReduce+Hbase+Hive

    通过对Hadoop分布式计算平台最核心的分布式文件系统HDFS.MapReduce处理过程,以及数据仓库工具Hive和分布式数据库Hbase的介绍,基本涵盖了Hadoop分布式平台的所有技术核心. 通 ...

  6. Thinking in BigData(八)大数据Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解

          纯干货:Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解. 通过这一阶段的调研总结,从内部机理的角度详细分析,HDFS.MapReduce.Hbase.H ...

  7. Hadoop的伪分布安装 hadoop的核心思想

    Hadoop的伪分布安装 hadoop的安装分为本地模式.伪分布模式.集群模式.本地模式是运行在本地,只负责存储,没有计算功能,本书不讲述.伪分布模式是在一台机器上模拟分布式部署,方便学习和调试.集群 ...

  8. 【快速入门大数据】hadoop和它的hdfs、yarn、mapreduce

    文章目录 导学 大数据概述 初识Hadoop 概述 核心组件 HDFS分布式文件系统 资源调度系统YARN MapReduce 优势 发展史 生态系统 发行版本选择 企业应用案例 第3章 分布式文件系 ...

  9. Hadoop、分布式文件系统HDFS、YARN、MAPREDUCE

    日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) 1.1 什么是Hadoop Hadoop名字的由来 作者:Do ...

最新文章

  1. css伪类元素及选择器
  2. 编译预处理 -- 带参数的宏定义--【原创】
  3. jvm性能调优实战 - 44Metaspace区域是如何因为类太多而发生内存溢出OOM
  4. linux 文本编辑命令grep sed awk
  5. mysql 数据库操作类_【数据库操作类】10个php操作数据库类下载
  6. 我把SpringBoot的banner换成了美女,老板说工作不饱和,建议安排加班...
  7. 关于微信投票微信投票神器及微信刷票软件免费版如何操作微信投票怎么免费刷票
  8. linux 安装fortran lapack 库
  9. 前端实现调取摄像头实现人脸识别
  10. 电商运营是什么意思,主要做什么?
  11. vs2017更新出错:The entire Box execution exiting with result code: 0x0
  12. CNCC技术论坛|分布式数据库HTAP的探索与实践
  13. 三分钟了解如何准备简历面试
  14. 用Java实现简易计算器
  15. 懂得安慰自己,过洒脱的人生
  16. 安卓手机变Win10桌面APP
  17. java常见编程练习hw一(入门、简单题型)
  18. 【手把手教你】用Python量化海龟交易法则
  19. 如何细分暴利关键词实现月入10万+
  20. 爆款办公神器,你知道吗

热门文章

  1. 大二物竞金牌转北大计算机,物理竞赛保送去北大还是清华?
  2. python综合实验报告_Python程序设计实验报告五:综合运用三种基本结构进行程序设计(综合性实验)...
  3. python新手如何找工作最有效_Python好学吗?要学多久?
  4. c++ python混合编程 restful_How to use Python to build a RESTful Web Service
  5. 江苏计算机等级考试试卷,江苏省计算机等级考试程序设计 试卷.docx
  6. 动态图相册 android,‎动态图相册 in de App Store
  7. vscode设置python多进程调试_python之vscode配置开发调试环境
  8. cmd炫酷代码_基本操作!在VS 代码中如何使用Jupyter Notebook
  9. python解释器把python代码一次性翻译成目标代码_Python语言程序设计----【第1周 Python基本语法元素】之1.1 程序设计基本方法...
  10. js 获取元素文本_可能是最全的“文本溢出截断省略”方案合集