美文网首页大数据
Hadoop学习中有遇到的错误

Hadoop学习中有遇到的错误

作者: Airprince | 来源:发表于2018-10-04 17:14 被阅读3次

    问题1

          由于多次format namenode节点导致  namdenode 的 namespaceID 与  datanode的namespaceID 不一致,从而导致namenode和 datanode的断连。

    解决:

            1、先将Hadoop所有服务停止,stop-all.sh

            2、在自己设置的临时文件夹(tmp/dfs/)中将data文件夹删除

            3、重新启动Hadoop服务就可以了,start-dfs.sh,用jps查看。

    问题2

          window下的eclipse,远程连接虚拟机上的ubantu上的Hadoop伪分布式,遇到的问题如下截图:

    解决:

            1、没有理解好伪分布式与完全分布式

            2、自己配置的只是一个用于本地测试的伪分布式环境。

    问题3

    解决:

          在相应的路径下增添winutils.exe,即可。

    问题4

    -Dmaven.multiModuleProjectDirectory system property is not set.

    解决:

    添加M2_HOME的环境变量。在myEclipse中,Preference->Java->Installed JREs->Edit 选择一个jdk,添加这句话 ”-Dmaven.multiModuleProjectDirectory=$M2_HOME“  如图:

    问题5

    从windows本地使用Hadoop上传或删除文件失败,出现如下问题:

    解决方法:

    为了安全,HDFS的权限检测机制默认是打开的,关闭之后,才能使用Eclipse插件上传文件到HDFS或者从HDFS中删除文件。为了能在Windows上直接操作Hadoop集群中的HDFS,需要做一些配置,有两种可行方法:

          1、如果只在测试环境下,直接把Hadoop集群中的HDFS的权限检测关闭,可在hdfs-site.xml中添加如下变量,重启Hadoop集群即可。

    <property>    <name>dfs.permissions</name>    <value>false</value></property>

    2、修改Windows本地主机名。首先,“右击”桌面上图标“我的电脑”,选择“管理”,接着选择“本地用户和组”,展开“用户”,找到当前系统用户,修改其为“hadoop”。最后,把电脑进行“注销”或者“重启电脑”,这样修改的用户名才有效。

    (一般学习用,第一种方法就好了。)

    问题6

            window下eclipse运行Map/Reduce 项目,出现的错误,截图如下:

    原因:当前用的Hadoop版本与hadoop.dll文件的版本不匹配。我用的是Hadoop2.9.0,而hadoop.dll不是这个版本。

    解决方法:

    1、上网下载2.9.0的hadoop.dll文件放到C:\Windows\System32下;

          2、还有记得更改本地hadoop\bin下的hadoop.dll。

    问题7

              hadoop连接mysql并将数据存储到hdfs中。

    解决方法:

    1、把jar包传到集群上,命令如下

                hadoop fs -put mysql-connector-java-5.1.31.jar /hdfspath

    2、在mr程序提交job前,添加一下语句:

    job.addArchiveToClassPath(new Path("hdfs://IP:9000/hadfpath/mysql-connector-java-5.1.31.jar"));

    问题8

              跑同样的算法,只不过数据源变大了,就出现这个报错:

    原因:

            虚拟机ubuntu磁盘空间满了,系统为了安全自动进入安全状态,从而任何修改操作将不能操作。

    解决:

          1. 给虚拟机扩容

          2. 删除没用的缓存或数据

    问题10

              eclipse连接虚拟机搭建的局域网Hadoop集群,出现如下报错;

              org.apache.hadoop.fs.FileSystem: Provider org.apache.hadoop.hdfs.DistributedFileSystem could not be instantiated

    还没有解决,怀疑是Hadoop版本与hadoop-eclipse-plugin-2.7.3.jar版本不一致,试过了还是同样的错误。

    资源来自网络

    相关文章

      网友评论

        本文标题:Hadoop学习中有遇到的错误

        本文链接:https://www.haomeiwen.com/subject/yxwxaftx.html