Python 操作大数据使用 Hadoop

参考:https://blog.csdn.net/wuShiJingZuo/article/details/135620018

python 复制代码
from hdfs import InsecureClient
hdfs_client = InsecureClient("http://localhost:9000", user="xiaokkk")
# 测试连接
print(hdfs_client.status("/"))
复制代码
{'accessTime': 0, 'blockSize': 0, 'childrenNum': 9, 'fileId': 16385, 'group': 'supergroup', 'length': 0, 'modificationTime': 1725326811876, 'owner': 'xiaokkk', 'pathSuffix': '', 'permission': '755', 'replication': 0, 'snapshotEnabled': True, 'storagePolicy': 0, 'type': 'DIRECTORY'}
python 复制代码
# 查看目录
files_and_dirs = hdfs_client.list("/")
print(files_and_dirs)
复制代码
['apps', 'backup', 'data', 'ks', 'logs', 'tmp', 'user']
python 复制代码
# 上传本地文件到HDFS
local_file_path = "/Users/xiaokkk/Desktop/local_projects/hadoop/input.txt"
hdfs_file_path = "/data/input.txt"

hdfs_client.upload(hdfs_file_path, local_file_path)
print(f"File {local_file_path} uploaded to {hdfs_file_path}")
复制代码
File /Users/xiaokkk/Desktop/local_projects/hadoop/input.txt uploaded to /data/input.txt
python 复制代码
# 下载HDFS文件到本地
hdfs_client.download(hdfs_file_path, "/Users/xiaokkk/Desktop/local_projects/hadoop/test_download.txt")
python 复制代码
# 删除HDFS文件
client.delete('/path/to/your/file', recursive=False)  # 如果文件是一个目录并且包含文件,则需要设置
python 复制代码
# 连接到HDFS
from hdfs import InsecureClient
client = InsecureClient("http://localhost:9000", user="xiaokkk")
# 指定HDFS上的文件路径
hdfs_path = '/data/input.txt'
# 打开HDFS上的文件
with client.read(hdfs_path, encoding='utf-8') as reader:
    # 读取文件内容
    content = reader.read()
    print(content)

# # 对文件内容进行处理,例如统计行数
# line_count = content.count('\n')
# print(f"文件 {hdfs_path} 包含 {line_count + 1} 行")
# 
# # 如果你想处理每一行,可以这样做
# for line in content.splitlines():
#     # 处理每一行
#     print(line)
复制代码
Hello world, this is a simple example of a text file.
This file will be used to demonstrate how the word count works.
Every word will be counted, and thpython word_count.py input.txt another_input.txt > output.txte results will show the frequency of each word.
相关推荐
IvanCodes8 小时前
七、Sqoop Job:简化与自动化数据迁移任务及免密执行
大数据·数据库·hadoop·sqoop
冬至喵喵10 小时前
【hive】函数集锦:窗口函数、列转行、日期函数
大数据·数据仓库·hive·hadoop
Theodore_10221 天前
大数据(2) 大数据处理架构Hadoop
大数据·服务器·hadoop·分布式·ubuntu·架构
簌簌曌1 天前
CentOS7 + JDK8 虚拟机安装与 Hadoop + Spark 集群搭建实践
大数据·hadoop·spark
Theodore_10221 天前
大数据(1) 大数据概述
大数据·hadoop·数据分析·spark·hbase
IvanCodes1 天前
六、Sqoop 导出
大数据·hadoop·sqoop
weixin_472339461 天前
Doris查询Hive数据:实现高效跨数据源分析的实践指南
数据仓库·hive·hadoop
火龙谷1 天前
【hadoop】相关集群开启命令
大数据·hadoop·分布式
神奇侠20242 天前
Hive SQL常见操作
hive·hadoop·sql
TDengine (老段)2 天前
TDengine 替换 Hadoop,彻底解决数据丢失问题 !
大数据·数据库·hadoop·物联网·时序数据库·tdengine·涛思数据