前言
书本第六章的主要内容就是讲了HDFS的一些操作指令,还有非常简略的Java调用HDFS API代码的示例。虽然据说用Java的运行效率会高很多,可是我也没有系统地学过Java,而且看样子实际做起来比较繁琐,所以我还是选择了Python来实现HDFS API的调用。用Python特别好的地方就是后面的数据处理和可视化会方便很多,人生苦短,我用Python,哈哈哈哈哈哈哈哈。
其实用python2也可以,所以就可以省去安装python3的步骤了,不过好像要安装一下pip
HDFS API的使用(Python)
Python入门
Python其实入门还是很简单的,没有接触过的同学,可以去菜鸟教程上面快速入门,还有慕课上面嵩天老师的课也挺好。
本次所需工具
CentOS 7 安装Python 3.7
以下操作在Slave001上面执行,当然别的虚拟机应该也没问题
安装依赖
- CentOS 7 本身缺少了一部分Python运行所需要的软件或者运行库,在root用户下执行以下命令安装
yum install gcc openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel libffi-devel tk-devel wget curl-devel ibffi-devel
编译和安装Python
还是在root用户下执行这些操作
- 首先将下载好的Python安装包上传到Slave001
- 解压(注意路径)
tar -zxvf Python-3.7.0.tgz
- 进入解压后的文件夹
cd Python-3.7.0
, 编译./configure
- 最后安装
make && make install
,这一步要好久好久好久好久 - 为安装好的Python3和pip3创建软链接(可以理解为快捷方式)
ln -s /usr/local/bin/pip3 /usr/bin/pip3
ln -s /usr/local/bin/python3 /usr/bin/python3
- 检查是否安装成功
pip3 -V
python3
输出结果如图:
输入exit()
退出
修改pip源和安装库
切换回hadoop用户
pip是一个专门用来管理Python库的工具,可以安装删除库之类的。由于pip默认的源是国外的,下载库时的速度会很慢,所以我们把它修改为国内的源,这里我用的是阿里的源:
- 切换到
/home/hadoop
目录,创建.pip/
文件夹
cd ~/ && mkdir .pip
- 创建pip.conf文件
vi .pip/pip.conf
添加以下内容
[global]
timeout = 6000
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
truste