首页 > 其他分享 >HDFS基础学习

HDFS基础学习

时间:2022-10-27 10:11:22浏览次数:97  
标签:HDFS 10 drwxr 基础 学习 node1 file xr root

HDFS简介

HDFS即Hadoop Distributed File System,是一个分布式文件系统,用于存储海量数据。一个HDFS集群由一个NameNode和多个DataNode组成。

HDFS特性

  1. 主从架构
  2. 分块存储
  3. 副本机制
  4. 元数据记录
  5. 抽象目录树

HDFS shell命令行

  1. Hadoop内置提供了shell命令行,格式为hadoop fs 参数。前面hadoop fs为固定搭配,表示操作的是文件系统,具体操作的文件系统则看参数中文件路径url的前缀协议。
    示例如下:
[root@node1 ~]# hadoop fs -ls file:///
Found 21 items
-rw-r--r--   1 root root          0 2021-10-26 14:27 file:///.autorelabel
dr-xr-xr-x   - root root      28672 2021-10-26 15:12 file:///bin
dr-xr-xr-x   - root root       4096 2020-09-11 14:44 file:///boot
drwxr-xr-x   - root root       3260 2022-10-25 19:23 file:///dev
drwxr-xr-x   - root root       8192 2022-10-25 19:23 file:///etc
drwxr-xr-x   - root root         48 2021-10-26 15:15 file:///export
drwxr-xr-x   - root root          6 2018-04-11 12:59 file:///home
dr-xr-xr-x   - root root       4096 2020-09-11 14:40 file:///lib
dr-xr-xr-x   - root root      24576 2020-09-11 14:40 file:///lib64
drwxr-xr-x   - root root          6 2018-04-11 12:59 file:///media
drwxr-xr-x   - root root          6 2018-04-11 12:59 file:///mnt
drwxr-xr-x   - root root         16 2020-09-11 14:40 file:///opt
dr-xr-xr-x   - root root          0 2022-10-25 19:23 file:///proc
dr-xr-x---   - root root       4096 2022-10-24 21:15 file:///root
drwxr-xr-x   - root root        840 2022-10-25 19:23 file:///run
dr-xr-xr-x   - root root      16384 2021-10-26 15:13 file:///sbin
drwxr-xr-x   - root root          6 2018-04-11 12:59 file:///srv
dr-xr-xr-x   - root root          0 2022-10-25 19:23 file:///sys
drwxrwxrwt   - root root       4096 2022-10-25 19:34 file:///tmp
drwxr-xr-x   - root root        155 2020-09-11 14:39 file:///usr
drwxr-xr-x   - root root       4096 2020-09-11 14:46 file:///var
[root@node1 ~]# hadoop fs -ls hdfs://node1:8020/
Found 3 items
drwxr-xr-x   - root supergroup          0 2022-10-24 21:14 hdfs://node1:8020/itcast
drwx------   - root supergroup          0 2021-10-26 15:20 hdfs://node1:8020/tmp
drwxr-xr-x   - root supergroup          0 2021-10-26 15:23 hdfs://node1:8020/user
[root@node1 ~]# hadoop fs -ls /
Found 3 items
drwxr-xr-x   - root supergroup          0 2022-10-24 21:14 /itcast
drwx------   - root supergroup          0 2021-10-26 15:20 /tmp
drwxr-xr-x   - root supergroup          0 2021-10-26 15:23 /user
[root@node1 ~]# hdfs dfs -ls /
Found 3 items
drwxr-xr-x   - root supergroup          0 2022-10-24 21:14 /itcast
drwx------   - root supergroup          0 2021-10-26 15:20 /tmp
drwxr-xr-x   - root supergroup          0 2021-10-26 15:23 /user
  1. shell命令行常用操作
    HDFS shell命令行的常用操作基本与Linux相同。具体如下:

  2. 创建文件夹:hadoop fs -mkdir -p

[root@node1 ~]# hadoop fs -mkdir -p /study/hdfs
[root@node1 ~]# hdfs dfs -ls /
Found 4 items
drwxr-xr-x   - root supergroup          0 2022-10-24 21:14 /itcast
drwxr-xr-x   - root supergroup          0 2022-10-25 20:11 /study
drwx------   - root supergroup          0 2021-10-26 15:20 /tmp
drwxr-xr-x   - root supergroup          0 2021-10-26 15:23 /user
  1. 显示文件:hadoop fs -ls -h
[root@node1 ~]# hadoop fs -mkdir -p /study/hdfs
[root@node1 ~]# hdfs dfs -ls /
Found 4 items
drwxr-xr-x   - root supergroup          0 2022-10-24 21:14 /itcast
drwxr-xr-x   - root supergroup          0 2022-10-25 20:11 /study
drwx------   - root supergroup          0 2021-10-26 15:20 /tmp
drwxr-xr-x   - root supergroup          0 2021-10-26 15:23 /user
[root@node1 ~]# hadoop fs -put anaconda-ks.cfg /study/hdfs
[root@node1 ~]# hadoop fs -ls /study/hdfs
Found 1 items
-rw-r--r--   3 root supergroup       1340 2022-10-25 20:14 /study/hdfs/anaconda-ks.cfg
[root@node1 ~]# hadoop fs -ls -h /study/hdfs
Found 1 items
-rw-r--r--   3 root supergroup      1.3 K 2022-10-25 20:14 /study/hdfs/anaconda-ks.cfg
  1. 上传文件:hadoop fs -put
[root@node1 ~]# echo 2222 > 2.txt
[root@node1 ~]# hadoop fs -put file:///root/2.txt hdfs://node1:8020/study/hdfs

  1. 查看文件:hadoop fs -cat
# hadoop fs -cat /itcast/anaconda-ks.cfg
  1. 下载文件:hadoop fs -get
[root@node1 ~]# ll
总用量 32
-rw-r--r--  1 root root     2 10月 24 21:15 1.txt
-rw-------. 1 root root  1340 9月  11 2020 anaconda-ks.cfg
drwxr-xr-x  2 root root    55 10月  5 00:08 hivedata
-rw-------  1 root root 23341 10月  5 00:11 nohup.out
[root@node1 ~]# hadoop fs -get hdfs://node1:8020/itcast/2.txt file:///root/
[root@node1 ~]# ll
总用量 36
-rw-r--r--  1 root root     2 10月 24 21:15 1.txt
-rw-r--r--  1 root root     5 10月 25 21:08 2.txt
-rw-------. 1 root root  1340 9月  11 2020 anaconda-ks.cfg
drwxr-xr-x  2 root root    55 10月  5 00:08 hivedata
-rw-------  1 root root 23341 10月  5 00:11 nohup.out

[root@node1 ~]# hadoop fs -get /itcast/2.txt ./666.txt
  1. 拷贝文件:hadoop fs -cd

  2. 追加数据到HDFS文件中:hadoop fs -appendToFile 注意!这个命令需要把集群全部打开,因为它涉及到了datanode节点,具体想了解的话可以看我上一篇博客

[root@node1 ~]# hadoop fs -appendToFile 1.txt 3.txt /2.txt
[root@node1 ~]# hadoop fs -cat /2.txt
2222
1
3
  1. 数据移动(重命名):hadoop fs -mv

标签:HDFS,10,drwxr,基础,学习,node1,file,xr,root
From: https://www.cnblogs.com/he-cheng/p/16823133.html

相关文章

  • 小程序云开发学习
    最近在学习云开发,于是将之前的小程序(接口服务基于koa2)用云开发做了重构,学以致用哈哈。欢迎各位一起讨论,学习~部分功能截图:  功能介绍发现:banner(热点)+热门比赛......
  • 20201318李兴昕第六章学习笔记
    第五章:定时器及时钟服务知识点归纳总结:本章讲述了信号和信号处理;介绍了信号和中断的统一处理,有助于从正确的角度看待信号;将信号视为进程中断,将进程从正常执行转移到......
  • 1.1 基础标签
    1.1基础标签1.1.1注释注释<!--这里面是注释--><!--也可以分多行写注释-->分割线标签<hr/>1.1.2段落段落标签<p>这是一段文字</p>分行标签<br/>标......
  • 【THM】Nmap Basic Port Scans(nmap基础端口扫描)-学习
    本文相关的TryHackMe实验房间链接:https://tryhackme.com/room/nmap02介绍在之前的文章中,我们专注于使用Nmap发现在线主机,并且到目前为止,我们已经介绍了Nmap扫描的三个......
  • jdbc入门案例学习,java如何连接mysql,如何和mysql进行连接
    在学习了java基础和mysql以及SQL语法之后,那我们可以开始学习如何程序对数据库的数据进行操作,基本操作就是,查询,新增,更新,删除,四个基本操作,也是全部操作。这节我们将通过jdb......
  • 学习笔记——Vue
    2022-10-26Vue属性的基本操作一、绑定(1)单向绑定关键词:v-bind用法:v-bind:原属性名="数据模型的key值"例如:v-bind:href="username"(其中"username"中的说明放在“script......
  • HTML学习
           ......
  • Session的学习
    1:什么是Session?服务器会给每个用户创建一个session对象;session占一个游览器,只要游览器没有关闭,session就一直存在;2:Session和Cookie的区别?(1)Cookie是吧用户......
  • 嵌入式-C语言基础:指针数组(和数组指针区分开来)
    指针数组:一个数组,若其元素均为指针类型的数据,称为指针数组,指针数组存放的是指针类型的数据,也就是指针数组的每个元素都存放一个地址。下面定义一个指针数组:int*p[4];//[......
  • Java基础__学习笔记__线程
    =-=b又让我想起了以前操作系统的线程 --进程是执行中的一段程序,而一个进程中执行中的每个任务即为一个线程--一个线程只可以属于一个进程,但一个进程能包含多个线程-......