win10 python+spark环境搭建

编程入门 行业动态 更新时间:2024-10-28 20:30:01

记录一下此次python+spark开发环境的搭建

jdk用的环境中已有的

python用的最新的稳定版

 

安装spark

 选择要下载的spark版本,官网会提醒需要的hadoop版本

这里选择的3.0版本

下载完解压即可,注意解压路径不要有空格

把spark配置到环境变量中

 

安装hadoop

参考:Windows上安装运行Hadoop - pcwen.top - 博客园

下载地址:Index of /dist/hadoop/common

根据参考博客给的github地址

https://github/steveloughran/winutils

这里选择的是git项目中有的,并且符合spark版本的2.8.3版本的hadoop

在路径hadoop-2.8.3\etc\hadoop下修改文件

①core-site.xml(配置默认hdfs的访问端口)

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>    
</configuration>

②hdfs-site.xml(设置复制数为1,即不进行复制。namenode文件路径以及datanode数据路径。)

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>    
        <name>dfs.namenode.name.dir</name>    
        <value>file:/hadoop/data/dfs/namenode</value>    
    </property>    
    <property>    
        <name>dfs.datanode.data.dir</name>    
        <value>file:/hadoop/data/dfs/datanode</value>  
    </property>
</configuration>

③将mapred-site.xml.template 名称修改为 mapred-site.xml 后再修改内容(设置mr使用的框架,这里使用yarn)

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

④yarn-site.xml(这里yarn设置使用了mr混洗)

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
        <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
</configuration>

⑤hadoop-env.cmd

设置JAVA_HOME的值(如果这里使用了带空格的路径将会报错!)

set JAVA_HOME=C:\Java\jdk1.8.0_73

进入hadoop-2.8.3\bin目录,格式化hdfs

在cmd中运行命令 hdfs namenode -format

进入hadoop-2.8.3\sbin目录

在cmd中运行命令start-all.cmd

出现找不到hadoop文件的错误时,可以在start-all.cmd文件上方加入hadoop文件所在位置目录

cd D:\hadoop\hadoop-2.8.3

7.在浏览器地址栏中输入:http://localhost:8088查看集群状态。

8.在浏览器地址栏中输入:http://localhost:50070查看Hadoop状态。

执行stop-all.cmd关闭Hadoop。 

把hadoop加到环境变量

 

写个demo试试

#加这两行是因为运行报错 “py4j.protocol.Py4JError: org.apache.spark.api.python.PythonUtils.getEncryptionEnabled”
import findspark
findspark.init()
###
from pyspark import SparkConf, SparkContext

if __name__ == '__main__':
    conf = SparkConf().setAppName("aaa").setMaster("local")
    sc = SparkContext(conf=conf)
    # 访问本地文件
    inputFile = "file:///D:/TestFile/test.txt"
    #文件内容
    #first line
    #second line
    #third line
    #
    textFile = sc.textFile(inputFile)
    wordCount = textFile.flatMap(lambda line: line.split(" ")).map(lambda word: (word, 1)).reduceByKey(
        lambda a, b: a + b)
    wordCount.foreach(print)

执行结果

 

以上是参考网上的一些博客完成的操作,还有不少不明白的地方需要研究,不过demo跑起来就算成功。

更多推荐

win10 python+spark环境搭建

本文发布于:2023-06-10 23:09:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1351471.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:环境   python   spark

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!