Hadoop作为大数据主流的基础架构选择,至今仍然占据着重要的地位,而基于Hadoop的分布式文件系统HDFS,也在大数据存储环节发挥着重要的支撑作用。今天的大数据入门分享,我们就主要来讲讲HDFS分布式文件管理系统。

一、HDFS文件管理系统

根据物理存储形态,数据存储可分为集中式存储与分布式存储两种。集中式存储以传统存储阵列(传统存储)为主,分布式存储(云存储)以软件定义存储为主。

传统存储:一向以可靠性高、稳定性好,功能丰富而著称,但与此同时,传统存储也暴露出横向扩展性差、价格昂贵、数据连通困难等不足,容易形成数据孤岛,导致数据中心管理和维护成本居高不下。

分布式存储:将数据分散存储在网络上的多台独立设备上,一般采用标准x86服务器和网络互联,并在其上运行相关存储软件,系统对外作为一个整体提供存储服务。

数据量越来越多,在一个操作系统管辖的范围存不下了,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,因此需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统。

常见的分布式文件系统有GFS、HDFS、Lustre、Ceph、GridFS、mogileFS、TFS、FastDFS等,而HDFS作为Hadoop的核心组件之一,在市场主流的使用非常普遍。

二、HDFS文件系统的特点

优点:

(1)高容错性。数据自动保存多个副本。通过增加副本的形式,提高容错性,某一个副本丢失,可以自动恢复。

(2)适合大规模的数据、文件处理。

(3)采用流式的数据访问方式,一次存入多次读取,存入的数据只能追加,不能修改。

(4)可以部署在廉价的机器上。

缺点:

(1)不适合低延时的数据访问,对延时要求在毫秒级别的应用,不适合采用HDFS。HDFS是为高吞吐数据传输设计的,因此可能牺牲延时。HBase更适合低延时的数据访问。

(2)无法高效地对大量小文件进行存储。文件的元数据(如目录结构,文件block的节点列表,block-node mapping)保存在NameNode的内存中,整个文件系统的文件数量会受限于NameNode的内存大小。

(3)无法支持并发写入。一个文件只能有一个写,不允许多个线程同时写入。

(4)不支持文件随机修改,仅支持文件追加。

三、HDFS文件系统常用命令

命令行的交互主要通过hadoop fs来操作。

1、显示目录信息

#显示根目录下所有文件和目录

hadoop fs-ls/

#递归显示根目录下所有文件和目录

hadoop fs-ls-R/

2、将本地文件或目录上传到HDFS

#hdfs dfs-put<本地文件路径><HDFS路径>

hdfs dfs-put ceshi.txt/opt/data

copyFromLocal命令同样用于上传文件

hdfs dfs-copyFromLocal./ceshi.txt/opt/data

3、将文件或目录从HDFS中的路径拷贝到本地

hdfs dfs-get/opt/data/ceshi.txt/usr/local

copyToLocal命令同样可以实现从HDFS中的路径拷贝到本地

hdfs dfs-copyToLocal/opt/data/ceshi.txt/usr/local

4、将文件或目录从HDFS的源路径移动到目标路径

不允许跨文件系统移动文件。

hdfs dfs-mv/opt/data/ceshi.txt/opt/local

5、将文件或目录复制到目标路径下

hdfs dfs-cp[-f][-p|-p[topax]]URI[URI…]<dest>

选项:

-f选项覆盖已经存在的目标。

-p选项将保留文件属性[topx](时间戳,所有权,权限,ACL,XAttr)。

6、删除一个文件或目录

hdfs dfs-rm[-f][-r|-R][-skipTrash]URI[URI…]

选项:

如果文件不存在,-f选项将不显示诊断消息或修改退出状态以反映错误。

-R选项以递归方式删除目录及其下的任何内容。

-r选项等效于-R。

-skipTrash选项将绕过垃圾桶(如果已启用),并立即删除指定的文件。当需要从超配额目录中删除文件时,这非常有用。

7、追加一个文件到已存在的文件末尾

hadoop fs-appendToFile<localsrc>...<dst>

hadoop fs-appendToFile./ce.txt/opt/data/ceshi.txt

8、显示文件内容-cat

9、显示文件的末尾-tail

10、合并下载多个文件

#将HDFS的/opt/data目录下的文件合并为hb.txt文件并下载到本地

hadoop dfs-getmerge/opt/data/hb.txt

合并后的文件位于当前目录,不在hdfs中,是本地文件。

11、统计文件系统的可用空间信息-df

12、显示给定目录中包含的文件和目录的大小或文件的长度

hdfs dfs-du/opt/data/

HDFS作为Hadoop原生的核心组件之一,也是大数据学习当中的一块重点,分布式文件管理系统HDFS,需要深入去理解和掌握。

hdfs mv命令_大数据入门:HDFS文件管理系统简介相关推荐

  1. 华为云大数据存储的冗余方式是三副本_大数据入门:HDFS数据副本存放策略

    大数据处理当中,数据储存始终是一个重要的环节,从现阶段的市场现状来说,以Hadoop为首的大数据技术框架,仍然占据主流地位,而Hadoop的HDFS,在数据存储方面,仍然得到重用.今天的大数据入门分享 ...

  2. hdfs mv命令_如何HDFS mv命令工作

    當用戶調用hdfs dfs -mv時,HDFS保證重命名操作的原子性.當此命令運行時,客戶端對NameNode進行RPC調用.該RPC的NameNode實現在修改inode樹時保存鎖定,並且只有在重命 ...

  3. hive使用适用场景_大数据入门:Hive应用场景

    在大数据的发展当中,大数据技术生态的组件,也在不断地拓展开来,而其中的Hive组件,作为Hadoop的数据仓库工具,可以实现对Hadoop集群当中的大规模数据进行相应的数据处理.今天我们的大数据入门分 ...

  4. 大芒果gm命令_大数据是否已死?java从业者要不要转大数据?

    做了几年JAVA了,前端后端都做过些项目,最近公司准备上马一个大数据项目,让我来负责,一方面因为我对大数据正好有兴趣,一直找不到机会学习(没有动力啊~),这次机会算是撞上了. 但另一方面,其实我的大数 ...

  5. spark 简单实战_大数据入门与实战-Spark上手

    1 Spark简介 1.1 引言 行业正在广泛使用Hadoop来分析他们的数据集.原因是Hadoop框架基于简单的编程模型(MapReduce),它使计算解决方案具有可扩展性,灵活性,容错性和成本效益 ...

  6. python redis模块_大数据入门4 | Redis安装及python中的redis模块加载

    引:前面学习了中文分词.HMM.jieba...这些有很多内容需要总结,但是时间太紧,一下写不完.所以前面的就先放一边,届时复习时再写吧. 今天把刚学的遇到的问题总结一下. 实践部分遇到的问题: 1. ...

  7. 【大数据入门笔记系列】第三节 Hdfs读、写数据处理流程

    [大数据入门笔记系列]第三节 Hdfs读.写数据处理流程 Hdfs简介 写数据处理流程 读数据处理流程 后记 跳转 Hdfs简介 一般而言,Hdfs是由一个NameNode节点和若干个DataNode ...

  8. 大数据入门-五分钟读懂HDFS

    目录 大数据入门系列文章 一.概念 二.架构及组件概念 三.读写流程 四.大白话 五.其他 大数据入门系列文章 最近在收集整理大数据入门文章,各位盆友关注点赞不迷路,每天都要开心鸭! 大数据入门系列文 ...

  9. 网易大数据平台HDFS性能优化实践

    导读:本文的主题是网易大数据HDFS的优化和实践,下面会从三个方面来介绍网易在大数据存储相关的工作和努力. 网易大数据平台 HDFS在网易的实践及挑战 重点业务分享 01 网易大数据平台 网易引入Ha ...

最新文章

  1. L3-001 凑零钱(dfs+玄学剪枝=AC)
  2. pycharm调试远程服务器代码
  3. MATLAB对函数做评估
  4. python基础入门:while 循环
  5. 自定义的调试函数clr/c++
  6. HDU 1828 Picture 线段树 扫描线
  7. 【硬核干货】2500字全方面解读Python的格式化输出
  8. HDU - 3746 Cyclic Nacklace(KMP的next数组判循环节)
  9. mybatis plus 新增,修改
  10. JS高级学习笔记(6)- 事件循环
  11. 【专栏】国内外物联网平台初探(篇二:阿里云物联网套件)
  12. Nginx配置——禁止指定user_agent
  13. 日本JAFFE表情库
  14. 新浪微博开发平台接入流程(1)---注册应用
  15. python基础教程_python基础教程百度网盘
  16. 强化学习入门项目spinning up(1)安装
  17. alpine 组件安装
  18. 关于计算机的趣味小知识,10个非常有意思的趣味知识和科学事实
  19. * What went wrong:A problem occurred evaluating project ‘:app‘.> Failed to apply plugin ‘com.andro
  20. 机器学习应用实例|如何识别标题党?

热门文章

  1. SQL 语句中 left join 后用 on 还是 where,区别大了!
  2. MySQL面试三连杀:如何实现可重复读、又为什么会出现幻读、是否解决了幻读问题?...
  3. 想回家吗?先用腾讯刚上线的这个功能查一查!
  4. Java 项目权威排名:Spring生态抢镜,Gradle战胜Maven排第2,点击查看更多...
  5. Redis面试突击专用
  6. 每日一皮:举一反三,这么聪明的客户可不多见了...
  7. 关于赠书《VS Code》断货延迟的通知!
  8. 面试:字符串拼接,什么时候用StringBuilder?
  9. Redis+分布式+设计模式+Spring全家桶+Dubbo阿里P8技术精选文档
  10. HttpClient 连接池设置不当引发的一次雪崩