本人是一个最近正在研究链路预测的小白,读论文的时候有幸从导师那里获得了论文相关的算法代码,可是论文里面涉及到了spark和Hadoop,需要搭建环境,于是这只无脑的小白成功踏入了搭建Hadoop+spark环境的坑,可谓一如此坑深思海,从此快乐是路人。
最开始了解到用Linux系统更方便,于是用VM+Ubuntu在Windows上运行Linux,这次踏上了以条VM安装Ubuntu的岔路,终于能用Linux了,结果电脑配置不行,太卡了。后来了解到Deepin系统和Ubuntu很像,而且最关键的是界面是中文的呀,安装了一下双系统。初次界面真是太友好了,anconda网站的下载界面是中文的,虽然翻译有点瑕疵,但是不妨碍理解,而且打开Spyder,界面都是中文的,真是太棒了,其他的都是英文的(小白的英文不太好,一般都是用汉化版的软件),然后悲剧的事情还在后面,Linux系统我不会玩呀,玩了三天重装了两次,这个过程出现了太多的问题,一把辛酸泪,此处省略一万字。
唉,兜兜转转一圈,又回到了原点,还是用Windows搭建环境吧,再次百度搭建环境的方法、教程,搭建两天之后,踩过了很多的坑终于跳出了这个坑,太不容易了。
总结一下踩过的坑:
1、spark有两种版本,有两种类型,安装的时候要选预编译过的,不要选源代码,如果是大神,想自己编译的话当我没说好了。还有要不要选择预览版,至于为什么,我也不知道。
2、Hadoop是有要求的,不同版本的Hadoop对Java的要求不一样。
小白之前学过Java,虽然Hello world都不会写了,但是java8的安装包我还留着呢,于是直接安装搭建环境了,学习的时候才过那么多次搭建环境的坑,搭建环境我还是知道的。然而版本不匹配,白忙活了。
Hadoop对Java的具体版本要求
3、spark对scala的版本要求也是不一样的,
这个在spark的下载页面可以看到,但是自有点小,而且没有高亮,被小白直接忽略掉了。
4、通过python利用spark时,也要注意版本问题,小白在搭建环境的时候,觉得从spark安装路径复制朋友spark太麻烦了,于是在cmd使用pip3 install pyspark直接安装的,然而问题又出现了,目前使用命令行下载安装的pyspark是spark2.4.5版本的,以后当然会变了
如果之前安装的不是spark2.4.5版本的话,那就会有问题了。
熬过了这么多的坑,小白终于在Windows成功搭建了Hadoop+spark环境了。当然小白的成功需要感谢大神@法号阿兴的spark学习笔记,过程非常详细,非常适合我这样的小白学习。
最后推荐厦门大学数据库实验室给对大数据感兴趣的小猿们学习,再推荐厦门大学林子雨教授的Spark的安装和编程实践和Hadopp的安装这两篇在Linux(Ubuntu)系统中搭建环境的博客给大家学习。