0、安装python,我用的是python2.7.13

1、安装jdk

一定要安装1.7以上的版本,安装低版本会报下面的错误

java.lang.NoclassDefFoundError

安装后不用手动设置环境变量,安装完成之后用“java -version”测试是否安装成功

安装成功之后要添加一个“JAVA_HOME”的环境变量,因为在hadoop的\libexec\hadoop-config.sh中定义了一个JAVA_HOME的环境变量,如果找不到该变量,后面运行“sc = SparkContext(appName="PythonPi")”时就会出现虚拟机初始化错误,不能分配内存

2、下载并安装spark

下载地址:http://spark.apache.org/downloads.html

注意spark与hadoop的版本是严格对应的,文件名中也有体现,如果要安装hadoop,一定要安装对应的版本

spark-1.6.3-bin-hadoop2.6.tgz就要安装2.6版本的hadoop。

下载之后,将其解压到某文件夹,例解压到“C:\spark\spark-1.6.3-bin-hadoop2.6”

添加环境变量

  1、将“C:\spark\spark-1.6.3-bin-hadoop2.6\bin”添加到系统变量Path中,这里面都是一些cmd文件

  2、新建一个系统变量SPARK_HOME,然后将路径C:\spark\spark-1.6.3-bin-hadoop2.6添加进去

  3、运行pyspark检查是否安装成功,虽有有错误,但可以把环境打开,安装下面的东西才能解决这些错误

3、下载并安装hadoop

下载地址:https://archive.apache.org/dist/hadoop/common/

根据上面这里要安装2.6版本的hadoop,然后将压缩包解压到指定文件夹,例如“C:\spark\hadoop-2.6.5”

添加环境变量

  1、将“C:\spark\hadoop-2.6.5\bin”添加到系统变量Path中,这里面都是一些cmd文件

  2、新建一个系统变量HADOOP_HOME,然后将路径C:\spark\hadoop-2.6.5添加进去

  3、运行pyspark检查看错误是否消息

4、上面安装完成之后还是会有一个错误

主要是因为Hadoop的bin目录下没有winutils.exe文件的原因造成的。这里的解决办法是:
  
- 去 https://github.com/steveloughran/winutils 选择你安装的Hadoop版本号,然后进入到bin目录下,找到winutils.exe文件,下载方法是点击winutils.exe文件,进入之后在页面的右上方部分有一个Download按钮,点击下载即可。
- 下载好winutils.exe后,将这个文件放入到Hadoop的bin目录下

5、输入pyspark,运行正常

Spark开始启动,并且输出了一些日志信息,大多数都可以忽略,需要注意的是两句话:

Spark context available as sc.
SQL context available as sqlContext 只有看到这两个语句了,才说明Spark真正的成功启动了。 6、在编译环境使用时,还要把C:\spark\spark-1.6.3-bin-hadoop2.6\python中的pyspark文件夹拷贝到对应的\Lib\site-packages中 7、运行pip install py4j安装包 8、运行一个例子检测是否成功,这个例子在运行这个文件时,需要输入命令行参数
import sys
from random import random
from operator import add from pyspark import SparkContext if __name__ == "__main__":
"""
Usage: pi [partitions]
"""
sc = SparkContext(appName="PythonPi")
partitions = int(sys.argv[1]) if len(sys.argv) > 1 else 2
print("partitions is %f" % partitions)
n = 100000 * partitions def f(_):
x = random() * 2 - 1
y = random() * 2 - 1
return 1 if x ** 2 + y ** 2 < 1 else 0 count = sc.parallelize(range(1, n + 1), partitions).map(f).reduce(add)
print("Pi is roughly %f" % (4.0 * count / n)) sc.stop()
  • 1
  • 2Spark contextSQL context分别是什么,后续再讲,现在只需要记住,只有看到这两个语句了,才说明Spark真正的成功

pyspark在windows中的安装的更多相关文章

  1. Appium+Robotframework实现Android应用的自动化测试-1:Appium在Windows中的安装

    让我们开始在Windows中开始安装Appium吧,Appium在OS X中的具体安装后面的文章会介绍. 另外,官网上说先要装Node.js,还要装Apache Ant和Apache Maven,Gi ...

  2. redis 在 windows 中的安装

    redis 在 windows 中的安装 redis 官方并没有提供 redis 的 windows 版本.但是微软提供了 redis 的 windows 版本.有2.8和3.0版本.3.0版本支持集 ...

  3. windows中配置安装mysql数据库

    MySql 是一种免费的关系型数据库,相较于 MsSqlServer 和 Oracle 比较轻量化,安装也很简单,而且免费不需要的版权费用,个人认为一般的小项目采用还是比较合适的,当然也有部分数据量很 ...

  4. ElasticSearch之Windows中环境安装

    ElasticSearch 说明 本章,我们主要以在 Windows 中对ElasticSearch 安装进行介绍! 1. 下载 ElasticSearch 这里我们下载的版本为7.17.4为例进行介 ...

  5. Windows中 RabbitMQ安装与环境变量配置

    RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Public License开源协议.1:安装RabbitMQ需要先安装Erlang语言开发包.下载地址 ht ...

  6. redis在windows中的安装

    之前介绍过了redis的相关知识,以及在linux平台上安装redis,为了方便学习,这里记录一下redis在windows平台上的安装步骤 1.下载redis下载地址https://github.c ...

  7. Windows 中JDK安装配置教程

    1.准备工作 a.因为Java JDK区分32位和64位系统,所以在安装之前必须先要判断以下我们的系统为多少位系统.右键计算机-属性查看,我安装的是64位 b.下载JDK,地址:http://www. ...

  8. windows中mongoDB安装教程

    下载路径:http://downloads.mongodb.org/win32/mongodb-win32-i386-1.7.0.zip 将一个DB文件夹 我是放到D盘,路径:Ddb 解压mongod ...

  9. 在windows中python安装sit-packages路径位置 在Pycharm中导入opencv不能自动代码补全问题

    在Pycharm中导入opencv不能自动代码补全问题 近期学习到计算机视觉库的相关知识,经过几个小时的探讨,终于解决了opencv不能自动补全代码的困惑, 我们使用pycharm安装配置可能会添加多 ...

随机推荐

  1. My First

    刚入职不到2个月吧,还在实习,月底拿毕业证转正.工作期间遇到很多麻烦问题,有的解决了,有的解决不了,换了个方法实现,挺无奈的.弄个博客,记录下平常遇到的问题和解决方式,也省的每次拿个笔记下来了…… 公 ...

  2. 20155204第4次实验《Android程序设计》实验报告

    20155204第四次实验报告 一.实验内容及步骤 1.Android Stuidio的安装测试: 安装 Android Stuidio 完成Hello World, 要求修改res目录中的内容,He ...

  3. 20155232 《Java程序设计》实验三实验报告

    20155232 <Java程序设计>实验三实验报告 实验内容 Java敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 实验步骤 (一)敏捷开发与XP 敏捷开发(Agile ...

  4. 20155321 2016-2017-2《Java程序设计》课堂实践项目2

    20155321 2016-2017-2<Java程序设计>课堂实践项目2 实践内容 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: ...

  5. 20155336 2016-2017-2《Java程序设计》课程总结

    20155336虎光元<Java程序设计>课程总结 一.每周作业 第一周学习总结:http://www.cnblogs.com/hxl681207/p/6457919.html 第二周学习 ...

  6. 20145226夏艺华 网络对抗技术EXP8 WEB基础实践

    20145226夏艺华 网络对抗技术EXP8 WEB基础实践 实验问题回答 1.什么是表单? 表单在网页中主要负责数据采集功能.一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CG ...

  7. TMDXEVM6678L EVM开发板初使用(1)

    1. 板子上电风扇转个不停,震动很大. 2. 有点懵逼,第一步干啥,首先安装板子的软件开发包,资料下载地址http://www2.advantech.com/Support/TI-EVM/6678le ...

  8. 【python笔记】python中的list、tuple、set、dict用法简析

    list list是一种有序的集合(或称作列表),可以很方便地添加和删除其中的元素. >>> classmates = ['Michael', 'Bob', 'Tracy'] 可通过 ...

  9. Intellij IDEA 热部署插件Jrebel激活

    激活前请确保已经安装好了Jrebel插件,本文通过反向代理激活. 第一步:下载激活工具(即代理工具),下载地址:https://github.com/ilanyu/ReverseProxy/relea ...

  10. css布局笔记(一)

    布局方式 一列布局 通常固定宽高,用margin:0 auto:居中显示 两列布局 说起两列布局,最常见的就是使用float来实现.float浮动布局的缺点是浮动后会造成文本环绕等效果,以及需要及时清 ...