分布式文件系统HDFS

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 应用场景 当数据量达到PB,ZB级别,或者传统关系型数据库遇到难题的时候,那么采用HDFS来替代是最好不过的工具了。操作步骤1. 架构图 Hadoop是由Apache基金会所开发的分布式系统基础架构,组织架构如下图所示: 正如上图所示:Hadoop包含很多优秀的子项目,例如HDFS,Mapreduce,Hbase,Hive,Zookeeper等,其中最重要的,也是Hadoop当时风靡一时的原因是HDFS(分布式文件系统)和Mapreduce(分布式计算框架)。

应用场景

当数据量达到PB,ZB级别,或者传统关系型数据库遇到难题的时候,那么采用HDFS来替代是最好不过的工具了。

操作步骤

1. 架构图

Hadoop是由Apache基金会所开发的分布式系统基础架构,组织架构如下图所示:

这里写图片描述

正如上图所示:Hadoop包含很多优秀的子项目,例如HDFS,Mapreduce,Hbase,Hive,Zookeeper等,其中最重要的,也是Hadoop当时风靡一时的原因是HDFS(分布式文件系统)和Mapreduce(分布式计算框架)。HDFS解释了,hadoop如何解决大数据的存储问题,而Mapreduce解释了,hadoop如何对大数据的计算问题。

2. HDFS

到底,Hadoop的HDFS是如何进行大数据存储的,下面一一道来。
首先,需要我们搭建Hadoop集群,hadoop集群简单来说就是把很多廉价的机器,通过hadoop组合起来,组成一个庞大的数据中心,全国著名的数据中心包括:谷歌,Facebook,微软等,平均一个数据中心大约几千万台机器,中国的北京,武汉,成都,上海,南京等城市,也有数据中心,这些数据中心为大数据提供了可靠的解决方案。
在hadoop集群中,负责大数据存储的当然就是HDFS,它主要由以下部分组成:
1个namenode:负责管理文件目录、文件和block的对应关系以及block和datanode的对应关系;
1个secondary namenode:负责实现HDFS的高可用,当namenode宕机后,自动切换,取代namenode,保证数据的安全性;
无数个datanode:负责大量数据的存储,当然大部分容错机制都是在datanode上实现的。
Hadoop集群架构如下图所示:

这里写图片描述

下面用简单的例子说明HDFS的存储操作:

这里写图片描述

例如,现在有一个文件FileA,100M大小。Client将FileA写入到HDFS上。
HDFS按默认配置,HDFS分布在三个机架上Rack1,Rack2,Rack3,具体步骤如下:
a. Client将FileA按64M分块。分成两块,block1和Block2;
b. Client向nameNode发送写数据请求,如图蓝色虚线①——>。
c. NameNode节点,记录block信息。并返回可用的DataNode,如粉色虚线②———>。
Block1: host2,host1,host3
Block2: host7,host8,host4
原理:
NameNode具有RackAware机架感知功能,这个可以配置。
若client为DataNode节点,那存储block时,规则为:副本1,同client的节点上;副本2,不同机架节点上;副本3,同第二个副本机架的另一个节点上;其他副本随机挑选。
若client不为DataNode节点,那存储block时,规则为:副本1,随机选择一个节点上;副本2,不同副本1,机架上;副本3,同副本2相同的另一个节点上;其他副本随机挑选。
d. client向DataNode发送block1;发送过程是以流式写入。
在HDFS中,数据块的大小默认为64M,并且每一块数据保存3份,所以不用担心数据的丢失问题,这样机架的个数,机器的个数可以无限扩展,就可以存放无限大的数据。

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
目录
相关文章
|
11月前
|
分布式计算 Hadoop 网络安全
Hadoop-08-HDFS集群 基础知识 命令行上机实操 hadoop fs 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
Hadoop-08-HDFS集群 基础知识 命令行上机实操 hadoop fs 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
144 1
|
11月前
|
存储 机器学习/深度学习 缓存
Hadoop-07-HDFS集群 基础知识 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
Hadoop-07-HDFS集群 基础知识 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
216 1
|
11月前
|
分布式计算 资源调度 Hadoop
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
185 1
|
存储 分布式计算 Hadoop
【揭秘Hadoop背后的秘密!】HDFS读写流程大曝光:从理论到实践,带你深入了解Hadoop分布式文件系统!
【8月更文挑战第24天】Hadoop分布式文件系统(HDFS)是Hadoop生态系统的关键组件,专为大规模数据集提供高效率存储及访问。本文深入解析HDFS数据读写流程并附带示例代码。HDFS采用NameNode和DataNode架构,前者负责元数据管理,后者承担数据块存储任务。文章通过Java示例演示了如何利用Hadoop API实现数据的写入与读取,有助于理解HDFS的工作原理及其在大数据处理中的应用价值。
292 1
|
存储 缓存 分布式计算
|
存储 分布式计算 安全
|
存储 分布式计算 大数据
【大数据】分布式文件系统HDFS
【大数据】分布式文件系统HDFS
335 0
【大数据】分布式文件系统HDFS
|
存储 分布式计算 监控
分布式系统详解--框架(Hadoop-HDFS的HA搭建及测试)
分布式系统详解--框架(Hadoop-HDFS的HA搭建及测试)
191 0
|
分布式计算 Hadoop Java
分布式系统详解--框架(Hadoop--JAVA操作HDFS文件)
分布式系统详解--框架(Hadoop--JAVA操作HDFS文件)
122 0
|
6月前
|
XML 存储 分布式计算
【赵渝强老师】史上最详细:Hadoop HDFS的体系架构
HDFS(Hadoop分布式文件系统)由三个核心组件构成:NameNode、DataNode和SecondaryNameNode。NameNode负责管理文件系统的命名空间和客户端请求,维护元数据文件fsimage和edits;DataNode存储实际的数据块,默认大小为128MB;SecondaryNameNode定期合并edits日志到fsimage中,但不作为NameNode的热备份。通过这些组件的协同工作,HDFS实现了高效、可靠的大规模数据存储与管理。
584 70