环境
环境使用:hadoop3.1,Python3.6,ubuntu18.04
Hadoop是使用Java开发的,推荐使用Java操作HDFS。
有时候也需要我们使用Python操作HDFS。
本次我们来讨论如何使用Python操作HDFS,进行文件上传,下载,查看文件夹,以及如何使用Python进行MapReduce编程。
使用Python操作HDFS
首先需要安装和导入hdfs库,使用pip install hdfs。
1. 连接并查看指定路径下的数据
from hdfs import * client = Client('http://ip:port') #2.X版本port 使用50070 3.x版本port 使用9870client.list('/') #查看hdfs /下的目录
2. 创建目录
client.makedirs('/test')client.makedirs('/test',permision = 777 ) # permision可以设置参数
3. 中命名、删除
client.rename('/test','123') #将/test 目录改名为123client.delete('/test',True) #第二个参数表示递归删除
4.下载
将/test/log.txt 文件下载至/home目录下。
client.download('/test/log.txt','/home')
5. 读取
with client.read("/test/[PPT]Google Protocol