博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用python操作hdfs
阅读量:3710 次
发布时间:2019-05-21

本文共 1129 字,大约阅读时间需要 3 分钟。

文章目录

简介

使用python对hdfs进行操作. 这里选择使用hdfs库。

相关链接

安装

pip install hdfs

介绍常用使用

创建一个hdfs client

txz-data0:50070是hdfs namenode的ip地址. 使用hadoop用户去操作

client = InsecureClient("http://txz-data0:50070", user="hadoop")

删除文件

client.delete("/tmp/test.txt")

从hdfs中下载文件到本地

client.download("hdfs路径", "本地路径")

查看目录

client.list("/tmp")

文件或文件夹的状态

client.status("/tmp")

文件的上传

client.upload("hdfs路径", "本地路径")

文件的读操作

with client.read('/tmp/test.txt') as reader:  content = reader.read()

文件的写操作

注意: 写多条数据时,不会自动换行,需要自己添加\n换行

两种形式的写入

from json import dump, dumpsclient.write('/tmp/test.txt', encoding='utf-8') as writer:  writer.write("hello")client.write('/tmp/test.tx', data="world", encoding='utf-8')

配置文件

每次操作hdfs都需要在代码中输入hdfs地址及user用户。可以写入到配置文件~/.hdfscli.cfg中,然后从代码中读取配置获取client,这样方便许多.

配置文件

[global]default.alias = dev[dev.alias]url = http://txz-data0:50070user = hadoop

使用配置文件获取client

client = Config().get_client('dev')

应用

追加写入数据到hdfs中

client.wirte这个接口有个append参数,但是如果文件不存在,则会报错,所以需要先创建一个空的文件,然后再在程序后面不断的append到文件中.

# 创建文件. 如果没有输入data为空字符串,则不会创建文件client.write("/tmp/test.txt", data="").....# 不断的追加client.write("/tmp/test.txt", data="hello", append=True)

转载地址:http://fakjn.baihongyu.com/

你可能感兴趣的文章
使用pandas读取数据并统计论文数据(2)2021-01-17
查看>>
论文作者统计(pandas字符串操作)
查看>>
datawhale异常检测——线性方法探究
查看>>
数据分析任务3:论文代码统计
查看>>
tensoflow入门实操计算机视觉介绍
查看>>
论文分析Task4——论文种类分类(待补充)
查看>>
异常检测Task05:高维异常
查看>>
数据分析任务五——作者信息关联
查看>>
DataWhale集成学习Task2--掌握基本的回归模型
查看>>
Datawhale task3 优化基础模型“方差与偏差部分”
查看>>
Datawhale集成Task5——掌握基本的回归模型
查看>>
评估模型的性能并调参
查看>>
集成学习上——统计学习建模流程
查看>>
集成学习之投票法
查看>>
集成学习之前向分步算法与梯度提升决策树GBDT
查看>>
集成学习之XGBoost
查看>>
集成学习之blending
查看>>
Stacking集成学习
查看>>
集成学习-案例分析(幸福感预测)(待完成)
查看>>
6.8,问卷数据指标计算(编码记忆点)
查看>>