python对Hadoop的hdfs的操作——-pyhdfs或python调用shell文件
本人在写基因组里的序列比对算法时,需要用Hadoop加快运算的速度,在java中可以直接调用Hadoop里面API提供的方法对hdfs操作,然而由于本人是用python写的算法,需要借助pyhdfs或python调用shell文件来对hdfs来进行操作。
一、pyhdfs操作hdfs
下面本人都详细介绍pyhdfs的安装过程及所需要的安装包见百度网盘:
链接:http://pan.baidu.com/s/1eRSc2aQ 密码:yeov
其中安装的过程直接照着步骤一步步来就可以了,本人Hadoop是Hadoop-2.5.2。
利用pyhdfs打开hdfs文件的实例:
import pyhdfs
#你的Hadoop的master的IP地址
fs=pyhdfs.HdfsClient(hosts="192.168.79.130")
#打开hdfs中目录的文件,f相当于python打开文件的指针
f=fs.open("/hadoop/Test1/input/result.txt")
#输出该文件的第一行
print f.readline()
#关闭 f
f.close()
运行结果如下:
[aa@master BWA]$ python hdfsPythonTest.py
AGCTTTTCATTCTGACTGCAACGG