最近在做平台的分布式升级,需要频繁的访问hdfs上的数据,记录一下常用到的hdfs基本操作。
1. 什么是hdfs
hdfs 全称即 Hadoop Distributed File System。从名字可以看出它是基于Hadoop的分布式文件系统。
hadoop中有3个核心组件:
- 分布式文件系统 HDFS:实现将文件分布式存储在很多的服务器上
- 分布式运算编程框架 MAPREDUCE:实现在很多机器上分布式并行运算
- 分布式资源调度平台 YARN: 帮用户调度大量的mapreduce程序,并合理分配运算资源(美团•大众点评使用的资源管理集群即为YARN)。
这三大块构成了强大的 hadoop 分布式处理生态。
2. hdfs工作原理
hdfs作为分布式文件存储系统,是后续进行分布式处理的前提。hdfs的工作原理大致如下:
1、当一个文件存入hdfs时,hdfs会把这个文件切块,分散存储在 N 台linux机器系统中(负责存储文件块的角色:data node)。具体如何切块是由客户端决定的。
2、文件被切块存储后,hdfs就会启动相应的机制,来记录每一份文件块的信息,及每一块的具体存储机器(负责记录块信息的角色是:name node)<