HDFS常用命令及Python连接HDFS操作

news2024/9/22 5:26:26

目录

一、HDFS常用命令

二、Python连接HDFS操作


一、HDFS常用命令

HDFS(Hadoop Distributed File System,Hadoop分布式文件系统)是Hadoop集群中的一部分,用于存储大量数据,并运行在商用硬件集群上。以下是HDFS中常用的文件和文件夹操作命令:

1、查看HDFS文件系统:

hdfs dfs -ls <path>

2、上传文件到HDFS:

hdfs dfs -put <local_path>  <hdfs_path>

3、从HDFS下载文件:

hdfs dfs -get <hdfs_path>  <local_path>

4、在HDFS内复制文件:

hdfs dfs -cp <source> <destination>

5、在HDFS内移动文件:

hdfs dfs -mv <source> <destination>

6、删除HDFS中的文件:

hdfs dfs -rm <path>

7、递归删除HDFS中的目录和文件:

hdfs dfs -rm -r <path>

8、创建HDFS目录:

hdfs dfs -mkdir <path>

9、递归创建HDFS目录:

hdfs dfs -mkdir -p <path>

10、查看HDFS中的文件内容:

hdfs dfs -cat <path>

11、查看HDFS中的文件末尾内容:

hdfs dfs -tail <path>

12、更改HDFS中文件的所有者:

hdfs dfs -chown <user>:<group> <path>

13、更改HDFS中文件的权限:

hdfs dfs -chmod <mode> <path>

14、更改HDFS中文件的副本数:

hdfs dfs -setrep -w <replication_factor> <path>

15、文本文件内容追加到HDFS文件:

hdfs dfs -appendToFile <local_file> <hdfs_file>

16、在HDFS中统计文件夹/文件大小:

hdfs dfs -du -s -h <path>

17、在HDFS中统计文件夹/文件大小:

hdfs dfs -du -h <path>

18、检查HDFS文件系统的磁盘空间使用情况:

hdfs dfs -df -h

19、列出HDFS中正在执行的操作:

hdfs dfsadmin -report

二、Python连接HDFS操作

本文使用hdfs库进行操作,其他的库如PyDoop、HdfsCLI也都可以连接HDFS。

1、安装第三方库

pip install hdfs

2、连接HDFS

初始化客户端时,使用的端口号是NameNode节点所使用的端口号,具体信息可以在hdfs-site.xml文件中查看。

from hdfs import InsecureClient

# 初始化客户端,HDFS的地址和端口
client = InsecureClient('http://localhost:50070', user='root')

# 列出HDFS上的文件
client.list('/')

3、文件操作

# 文件和目录的路径
hdfs_dir_path = '/user/hdfs/my_directory'
hdfs_file_path = '/user/hdfs/my_directory/my_file.txt'

# 列出HDFS根目录的内容
print("List HDFS root directory:")
print(client.list('/'))

# 创建目录
print("\nCreating directory:")
client.makedirs(hdfs_dir_path)

# 上传文件到HDFS
print("\nUploading file to HDFS:")
with client.write(hdfs_file_path, overwrite=True) as writer:
    writer.write('Hello, HDFS!')

# 列出目录内容
print("\nList directory contents:")
print(client.list(hdfs_dir_path))

# 读取文件内容
print("\nReading file content:")
with client.read(hdfs_file_path) as reader:
    content = reader.read()
    print(content)

# 追加内容到文件
print("\nAppending to file:")
with client.write(hdfs_file_path, append=True) as writer:
    writer.write('\nAppend this line.')

# 检查文件状态
print("\nChecking file status:")
status = client.status(hdfs_file_path)
print(status)

# 复制文件
print("\nCopying file:")
client.copy(hdfs_file_path, '/user/hdfs/my_directory/copy_of_my_file.txt')

# 移动文件
print("\nMoving file:")
client.move(hdfs_file_path, '/user/hdfs/my_directory/moved_file.txt')

# 删除文件
print("\nDeleting file:")
client.delete('/user/hdfs/my_directory/moved_file.txt')

# 删除目录(递归删除)
print("\nDeleting directory recursively:")
client.delete(hdfs_dir_path, recursive=True)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2117720.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

6款好用到离谱的宝藏软件,每一款都超出你的认知

你的电脑里有没有那种&#xff0c;无论重装多少次系统&#xff0c;都要第一时间安装的软件&#xff1f; 请把它的名字打在评论区&#xff01;本期分享6款&#xff0c;免费也能吊打付费的Windows电脑必装软件。 最大程度的增强Windows系统的功能&#xff0c;良心分享&#xff…

一文讲解多种GIS分析功能

GIS行业有很多分析功能&#xff0c;对于刚入行的新手有着足够的吸引力&#xff0c;其实有许多分析功能实现原理大差不差&#xff0c;比如模型压平&#xff0c;基于模型的淹没分析以及模型裁切。本文将以模型裁切为切入口进行介绍其中原理。 首先 &#xff08;立方体剖切示意图…

只需一个类文件,Erupt 可以能完成整个后台管理?这个低代码值得一试

只需一个类文件&#xff0c;Erupt 竟然能搞定整个后台管理&#xff1f;这个低代码值得一试 在纷繁复杂的后端开发世界里&#xff0c;Erupt 就像是一剂强心针&#xff0c;用一个 .class 文件就能实现后台管理功能&#xff0c;简直让人感叹“开发也可以这么简单&#xff01;”本文…

linux进程的概念和pid

进程的概念 进程是参与分配资源&#xff08;cpu&#xff0c;内存&#xff09;得实体&#xff0c;比如打开qq&#xff0c;浏览器就是打开了进程。 进程这么多&#xff0c;如何管理进程呢&#xff1f; 在linux下进程通过PCB&#xff08;task_struct&#xff09;来管理进程 ta…

足浴行业在线预约小程序源码系统+支持拼团功能 带完整的安装代码包以及搭建部署教程

系统概述 在快节奏的现代生活中&#xff0c;人们对健康养生的需求日益增长&#xff0c;足浴行业作为传统养生方式之一&#xff0c;其市场需求也随之不断扩大。为了满足消费者日益增长的便捷性需求&#xff0c;一款集在线预约、拼团优惠于一体的足浴行业小程序源码系统应运而生…

Vue/cli不同环境下打包后js文件没有添加hash值-会导致缓存问题-解决

环境变量 包文件判断是根据NODE_ENV=production,这时会对应打包加上hash值,所以在配置不同环境对应命令的时候,把NODE_ENV=production加上 全局的环境变量需要以VUE_APP_ 开头 process.env.VUE_APP_ENV 会读取不到值 .env 文件配置 NODE_ENV=production 才会按照hash模式去…

利用数据分析提升SEO排名的7种方法

我们都听过“大数据分析”这个词。科技让我们能够清晰地了解我们的活动和内容的表现——向我们提供了关于受众的宝贵信息&#xff0c;甚至可以精确到他们在Google和其他搜索引擎上使用的具体搜索词。 你已经在你的业务中使用数据分析了吗&#xff1f;如果是&#xff0c;你有利…

漏水监测报警摄像机

漏水监测报警摄像机 是一种智能设备&#xff0c;专门用于监测管道或设备的漏水情况&#xff0c;并能在检测到漏水时发出警报&#xff0c;帮助用户及时发现并处理水患。这种摄像机通常配备高清摄像头和敏感的水滴传感器&#xff0c;能够全天候地监测管道周围的情况。 当漏水摄像…

【ARM compiler】生成ELF文件中包含了那些内容

【更多软件使用问题请点击亿道电子官方网站】 文档目标&#xff1a;用于了解ARM compiler生成的ELF文件中存储的内容进行了解 问题场景&#xff1a;ELF文件主要用于通过调试软件对于代码的运行顺序和数据链接等内容进行分析。了解一下ARM compiler生成ELF文件包含那些内容。 软…

蓝牙--关于bta_av_main.cc文件的讲解

简单概要下: BTIF:提供bluedroid对外的接口 BTA:提供各种profile的实现 stack:协议实现与连接管理 上层在建立A2dp connect连接的时候,先调用到btif层的btif_av.cc中函数src_connect_sink,接着调用bta层bta_av_api.cc中函数BTA_AvOpen,经过内部state machine处理,最…

ROPS 自动化快速构造缓冲区溢出ROP链工具

项目地址:https://github.com/MartinxMax/ROPS ROPS 快速自动化构造ROP&#xff08;Return-Oriented Programming&#xff09;链的脚本&#xff0c;用于生成ROP攻击的有效载荷。 Usage $ ./rops.sh $ ./rops.sh /home/ayush/.binary/rop 该脚本将根据提供的二进制文件自动生…

【C语言数据结构】

一. 线性表 通俗的讲&#xff0c;线性表是具有相同特性的数据结构的集合 逻辑结构&#xff08;人为想象出来的数据的组织形式&#xff09;&#xff1a;都是线性的 物理结构&#xff08;数据在内存中的存储形式&#xff09;&#xff1a;不一定是线性的 二. 顺序表 顺序表是…

构建高效AI中台:解析人工智能中台架构的五大核心层

在人工智能技术蓬勃发展的今天&#xff0c;企业迫切需要一种高效、灵活的方式来整合、管理和应用AI技术。人工智能中台&#xff08;AI Middle Platform&#xff09;应运而生&#xff0c;它为企业提供了一个统一的技术平台&#xff0c;能够有效支撑多样化的业务需求&#xff0c;…

音视频入门基础:WAV专题(10)——FFmpeg源码中计算WAV音频文件每个packet的pts、dts的实现

一、引言 从文章《音视频入门基础&#xff1a;WAV专题&#xff08;6&#xff09;——通过FFprobe显示WAV音频文件每个数据包的信息》中我们可以知道&#xff0c;通过FFprobe命令可以打印WAV音频文件每个packet&#xff08;也称为数据包或多媒体包&#xff09;的信息&#xff0…

无人机动力系统设计之桨叶推力计算

无人机动力系统设计之桨叶推力计算 1. 源由2. 关键参数2.1 特性参数2.1.1 材质&#xff08;Material&#xff09;2.1.2 叶片数量&#xff08;Number of Blades&#xff09;2.1.3 重量&#xff08;Weight&#xff09; 2.1.4 噪音水平&#xff08;Noise Level&#xff09;2.2 安装…

开敞式屋脊通风天窗,“0”差评厂房通风换气设备!

开敞式屋脊通风天窗作为常见的通风设备&#xff0c;在现代建筑设计中尤其是在工业厂房中扮演着重要角色。 开敞式屋脊通风天窗是安装在建筑屋顶屋脊位置且处于常开状态&#xff0c;没有安装启闭阀板的通风天窗。这种设计允许空气自由流通&#xff0c;无需依赖机械动力&#xff…

乱弹篇(46)白露闲谈

昨&#xff08;7日&#xff09;天11时11分&#xff0c;已经进入2024年的白露节气&#xff0c;今天本“人民体验官”推广人民日报官方微博文化产品《诗句里的秋天》&#xff0c;旨在提醒亲友已是“秋风何冽冽&#xff0c;白露为朝霜”时令&#xff0c;天气开始转凉&#xff0c;早…

AI模型应根据应用场景选择全能型或者专精型

文章目录 一、前言二、选择全能型2.1 优势2.2 劣势 三、选择专精型3.1 优势3.2 劣势 四、权衡选择五、总结 一、前言 AI模型的发展方向&#xff0c;在追求全能与专精之间并非简单的二选一&#xff0c;都取决于其应用场景、设计目标以及技术可行性等多个因素。这两种策略各有优…

CodeFormer——卓越的AI照片修复工具,能够轻松消除图片以及视频中的马赛克,还原清晰画质。

CodeFormer是什么 CodeFormer是一款由南洋理工大学和商汤科技联合开发的AI照片和视频修复工具。融合了变分自动编码器&#xff08;VQGAN&#xff09;和Transformer技术&#xff0c;对模糊和马赛克的照片或视频进行高质量的修复。CodeFormer通过先进的算法优化图像细节&#xf…

【软考中级攻略站】-软件设计师(5)- 软件工程

软件生存周期 什么是软件生存周期&#xff1f; 软件生存周期指的是一个软件从开始构思到最终停止使用&#xff08;或被替换&#xff09;的整个过程。就像人的生命一样&#xff0c;软件也有一个从出生到死亡的过程。 软件生存周期的几个阶段 软件生存周期通常可以分为以下几…