我在HDFS中大约有1500个XML文件,每个文件大约2-3Gb。我需要编写一个python脚本来解析XML文件以执行MapReduce。但是,我在使用python访问HDFS中的文件时遇到了问题。
我尝试了以下脚本,并收到错误消息。
from snakebite.client import Client
def connection():
hadoop_client = Client('HDFS_hostname', 'HDFS_port', use_trash=False)
for x in hadoop_client.ls(['/']):
print(x)
以下是错误:
Traceback (most recent call last):
File "/home/ubuntu/PycharmProjects/textmining/read_data_from_HDFS.py", line 5, in <module>
from snakebite.client import Client
File "/usr/local/lib/python3.6/dist-packages/snakebite/client.py", line 1473
baseTime = min(time * (1L << retries), cap);
^
SyntaxError: invalid syntax
使用python从HDFS访问文件的最佳推荐方法是什么?
答案 0 :(得分:1)
pip install snakebite-py3
这将帮助您解决该问题...
答案 1 :(得分:-1)
我来了acroos,遇到了同样的问题。 snakebite与python 3.x不兼容,您可以在python 2中使用它。