Spark+Python+Pycharm在Windows下的配置
来源:互联网 发布:知圆链条索具 编辑:程序博客网 时间:2024/06/06 20:22
初次学习在大数据平台下做数据分析和数据挖掘,之前主要是在MATLAB上在一些数据分析,虽然很熟悉了,然而受速度和方便程度的影响,毕竟还是不太方便做实时的、集群的、超大数据量的分析,因此决定放下用了6年的MATLAB,转战python+spark。为何选择python+spark?选择spark是毋庸置疑的,目前最先进的大数据平台,可是为什么选择python而不选择spark同样支持的scala、Java和R呢?这个纯粹是个人爱好,目前还没有找到具体的理由,也可能是最近看了几个java开发的应用程序,觉得java的程序量非常大,对这一点没有多少好感吧,而对Scala不熟悉,python和R的风格感觉跟MATLAB还是比较像的,个人觉得,python的适用范围可能比R更加广泛一些吧,因此就选择了python+spark。本系列的博客我想写一些我个人学习使用spark的一些亲历过程,可能有些是原创的,有些会是转载修改的,如果有问题,欢迎大家给我邮件(xlydq1206@sina.com),批评指正,以期能帮助更多的想学但现在正陷入困境的同行们!好啦,啰嗦了半天,现在开始进入正题了,第一节比较简单,旨在讲述本人安装spark的一些问题和解决方法。刚开始的时候我是按照网上的教程一步步做,可是出了不少错,因为我不知道到底要干嘛,只是跟着一步步做,现在学会了,我总结后就是几个问题:
- 选择系统平台
- python安装
- pycharm安装
- Hadoop和spark的安装
现在来逐一分析,把这几个问题分析和调试做好了,环境也就搭建好了。
第一,在系统的选择上我尝试了三种:Linux系统、VM虚拟机+Ubuntu和Windows7。很不幸,前两种我都没能在我的PC上搭建成功,第一种可能是我的电脑硬件不支持双系统吧,安装Linux的时候总是在关键的时候直接自动关机了;第二种下现在在Windows的安装经验下,是可以装成功的,之前要装什么都不熟悉,而且对Linux的一些操作方式还不是很熟悉,折腾了很久也没能成功,但留下了一些宝贵的经验,仅供参考,可能有些我没注意的地方会有问题,接受大家的指正——
1) sudo wget http://... 从网上获取资源,即下载2) sudo tar zxvf *.tar.gz 解压缩文件3) sudo mv a/ b/ 将文件夹a重命名为b4) vi ~/ .bashrc 编辑环境变量(Vi的使用每次都出问题,感觉很不方便编辑,有好的方法希望大家推荐一下!)5) 设置java的环境变量 sudo gedit /etc/profile 在文件末尾加上 /home/ydq/spark/software/jdk1.7/jre export JAVA_HOME=~/spark/software/jdk1.7/ export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH source /etc/profile 立即执行 java -version 测试安装成功没6) sudo apt-get install tree 直接安装的方法,不需要给网址
相信对于刚入门的人来说,还是只对Windows熟悉的居多,因此建议在这个阶段还是先在Windows下搭建,反正spark和python都是跨平台的,转过去也容易,这么做不影响后面核心的算法实现,想通了这一点我毫不犹豫的选择了Windows7
第二,python在Windows下的安装非常简单,可以参照http://jingyan.baidu.com/article/8cdccae97f7d26315413cd88.html,后面需要学会用pip来安装库文件,没有强大的库文件,python可就不那么好用了哟!比如安装matplotlib
pip search matplotlib
pip install matplotlib
这个可以参照的网址为:http://blog.csdn.net/wishchin/article/details/45021103
第三,在此也不赘述Pycharm的安装了,都可以在官网上找到.exe或者.msi文件,下载下来双击安装即可,在Pycharm中选好解释器为Python即可
第四步,Hadoop和spark的安装。其实也是最重要的一步和最困惑我的一步,现在做好了其实这一步也是很简单的。首先在官网上去下载这两个压缩包,解压后都是免安装的
之后就是环境变量的配置了,
HADOOP_HOME:G:\Windows_Spark\hadoop2.6_Win_x64-master
SPARK_HOME:G:\Windows_Spark\spark-1.6.2-bin-hadoop2.6
path:%HADOOP_HOME%\bin;G:\Windows_Spark\spark-1.6.2-bin-hadoop2.6\bin;
具体的HADOOP_HOME和SPARK_HOME是依赖于每个人在自己pc上解压的位置而定的,不过千万要注意
HOME目录后面是没有分号的,path目录后面是有分号的!
HOME目录后面是没有分号的,path目录后面是有分号的!
HOME目录后面是没有分号的,path目录后面是有分号的!
重要的事情说三遍,我在这里就出错了,后面查错用了两天都没有找到问题所在,还是走在路上的时候突然想到了这个小细节才改过来的,否则后面运行pyspark测试的时候是会报错的哦。
做好了这一切就可以测试一下是否安装成功了,在控制台(windows+R,cmd)上输入pyspark,如果出现了如下情况则表示spark环境搭建成功了。
之后可以用pip install py4j命令在cmd控制台下安装相关插件,然后就可以编程了。
顺便说一下,如果习惯于java的话,也是可以配置eclipse,和maven,以及JDK。
接下来就是我在网上下载的一份简单的spark代码,共勉学习!
from pyspark import SparkContextsc = SparkContext('local')doc = sc.parallelize([['a','b','c'],['b','d','d']])words = doc.flatMap(lambda d:d).distinct().collect()word_dict = {w:i for w,i in zip(words,range(len(words)))}word_dict_b = sc.broadcast(word_dict)def wordCountPerDoc(d): dict={} wd = word_dict_b.value for w in d: if dict.has_key(wd[w]): dict[wd[w]] +=1 else: dict[wd[w]] = 1 return dictprint doc.map(wordCountPerDoc).collect()print "successful!"
运行结果如下图所示:
在此,就不一一分析本程序的代码了,后面我会写一系列博文,来分析spark的代码。
- Spark+Python+Pycharm在Windows下的配置
- 在windows上pycharm配置spark环境
- windows下搭建Spark,Pycharm配置Spark测试
- windows下使用pycharm配置python的virtualenv环境
- Windows 下 Python & PyCharm & Scrapy的安装和配置
- windows下python+django+pycharm环境配置
- Windows+Pycharm+Spark环境配置
- windows下 pycharm开发spark
- 【Python开发】Pycharm下的Anaconda配置
- 使用PyCharm配置Spark的Python开发环境(基础)
- Windows环境下配置python spark(windows7+python+spark)
- 在windows下配置eclipse的spark调试环境
- python 在windows下的配置
- Python 在windows下的配置
- spark在pycharm的搭建
- libsvm学习-1 libsvm-3.21在Python-3.4.4, Pycharm, windows环境下的安装过程
- Python IDE for Windows pycharm的安装与配置
- win10 64位系统下,搭建spark环境,并配置python+pycharm开发环境
- RecyclerView.Adapter notifyItemRemoved postion错位的问题
- UVA-10340 All in All
- UVA 455 Periodic String
- Java解析xml文档之SAX解析
- iOS中的图片轮播器
- Spark+Python+Pycharm在Windows下的配置
- [LeetCode] 10. Regular Expression Matching
- 最短路径Dijkstra算法的C语言实现
- 【数据结构与算法分析】线性表
- Java解析xml文档之STAX解析
- 条件变量实例:生产者-消费者模式的后进先出型(std::stack)缓冲区
- NEFU OJ 2 K-Matrix 二维树状数组+打表
- express
- hihoCoder太阁最新面经算法竞赛8 A Game(区间DP)