一、准备工作
1.环境配置
virtualbox虚拟机,linux的ubuntu硬盘,制作安装u盘,进行双系统安装,然后安装hadoop,再单机配置安装或者伪分布式安装配置。太痛苦了好在环境配好了就不仔细说了,步骤放着,以后如果出意外了再说。
2.一点理论知识:
2.1 Hadoop包括三种安装模式:
- 单机模式:只在一台机器上运行,存储是采用本地文件系统,没有采用分布式文件系统HDFS;
- 伪分布式模式:存储采用分布式文件系统HDFS,但是,HDFS的名称节点和数据节点都在同一台机器上;
- 分布式模式:存储采用分布式文件系统HDFS,而且,HDFS的名称节点和数据节点位于不同机器上。
2.2 Hadoop中有三种Shell命令方式:
- hadoop fs适用于任何不同的文件系统,比如本地文件系统和HDFS文件系统(常用)
- hadoop dfs只能适用于HDFS文件系统
- hdfs dfs跟hadoop dfs的命令作用一样,也只能适用于HDFS文件系统
二、编程实践
1.步骤代码汇总
1.1 启动hadoop:
$ cd /usr/local/hadoop
$ ./bin/hdfs namenode -format #格式化Hadoop的hdfs文件系统
$ ./sbin/start-dfs.sh #启动hadoop
$ sbin/stop-dfs.sh #关闭hadoop
1.2 配置hadoop集群:
Hadoop集群安装和搭建(全面超详细的过程)_小汤tythadoop-CSDN博客
(初学者强烈推荐)Ubuntu 配置hadoop 超详细教程(全过程)_ubuntu安装hadoop_头发好多的博客-CSDN博客
1.3 上传到hdfs
如何上传数据到集群的HDFS上_如何将文件上传到集群-CSDN博客
ps:后面唯一卡住的就是hadoop/etc/hadoop/要走两层才能找到配置yarn的文件,其他都可以按照这个博主的路线!感谢!另外9870不行的可以试试50070。下面这个似乎更方便更明晰,注意hdfs命令在有的电脑上需要写"./bin/hdfs",否则找不到命令。
Linux上传本地文件到Hadoop的HDFS文件系统_hdfs上传文件-CSDN博客
2.报错修改
2.1 yum下载和更新都会遇到报错
apt-get update出现无法连接上 archive.ubuntukylin.com:10006-CSDN博客
2.2 无法连接到9870端口
hadoop的9870端口不能访问WEB界面的解决办法汇总-CSDN博客
2.3 无法定位软件包
解决 apt-get remove和dpkg删除出现 E: 无法定位软件包 XXXX_卸载 无法定位软件包-CSDN博客https://blog.csdn.net/younger_to_older/article/details/1090538212.4 无法解析或打开软件包
ubuntu下搭建hadoop平台,执行到复制公钥到datanode那一步总提示连接超时,是怎么回事啊,谢谢_百度知道 (baidu.com)
2.6 进程不对
启动hadoop之后输入命令jps应该会有这几个进程:
16119 DataNode
16810 NodeManager
16298 SecondaryNameNode
15979 NameNode
16942 Jps
16510 ResourceManager
如果缺失了就得去找原因,我记得我第一次的时候缺失的很离谱,翻天覆地的找,后来每次都会缺这个datanode,放个链接:
hadoop—jps执行后缺少DataNode的解决办法_jps少了datanode-CSDN博客
好乱,总结一下就是执行这个删除命令然后重新format那个namenode再进入hadoop。
cd /usr/local/hadoop/tmp/dfs
rm -r *
3.数据预处理
附一些数据预处理的相关资料:
Python中对CSV数据预处理_雨后的小木屋的博客-CSDN博客
Python对CSV文件的一些处理方法(读取数据与数据预处理)_python读取csv文件并处理数据-CSDN博客
我是因为大作业所以走了这一趟,将一路上遇到的问题整理了一下(虽然还是很乱),方便自己以后重新做这件事或者复盘,非常感谢链接出处的作者,如有侵权会删掉。