上次介绍了HDFS的简单操作,今天进入HDFS中的Java和Python的API操作,后面可能介绍Scala的相关的。
在讲Java API之前介绍一下使用的IDE—IntelliJ IDEA ,我本人使用的是2020.3 x64的社区版本。
Java API
创建Maven工程,关于Maven的配置,在IDEA中,Maven下载源必须配置成阿里云。
在对应的D:Apache-Maven-3.8.1-BInApache-Maven-3.8.1confsettings.xMl需要设置阿里云的下载源。
下面创建Maven工程,添加常见的依赖
添加hadoop-client依赖,版本最好和hadoop指定的一致,并添加junIT单元测试依赖。
HDFS文件上传
在这里编写测试类即可,新建一个java文件:MAIn.java
这里的filesYste一开始是本地的文件系统,需要初始化为HDFS的文件系统
在对应的HDFS中,就会看见我刚刚上传的机器学习相关的停用词。
HDFS文件下载
由于每次都需要初始化filesystem,比较懒的我直接使用@BefoRe每次加载。
HDFS文件下载的API接口是copyToLocalfile,具体代码如下。
Python API
下面主要介绍hdfs,参考:https://hdfscli.Readthedocs.io/
我们通过命令pIP install hdfs安装hdfs库,在使用hdfs前,使用命令hadoop fs -cHMod -R 777 / 对当前目录及目录下所有的文件赋予可读可写可执行权限。
相对于Java API,Python API连接实在简单。