软件系统开发定制Windows下Pycharm的Spark、Hadoop、Scala安装及常见报错(graphframes避坑、jupyter的文件位置更换、conda环境建立)

目录


项目环境

jdk1.8.0_333

python3.7.13

scala2.11.8

hadoop2.7.1

spark2.4.3-bin-hadoop2.7

软件系统开发定制我参考过的博客  

  • windows下的spark软件系统开发定制总体安装流程
  •  

软件安装

1、jdk安装

安装jdk1.8.0_333

链接:https://pan.baidu.com/s/1apVg0mYzHXDwEZcQvC0EgA 
提取码:6666

软件系统开发定制新建环境变量JAVA_HOME

值为jdk安装目录D:\soft\jdk1.8_64

PATH中添加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 

2、Anaconda安装

安装步骤

链接:https://pan.baidu.com/s/1uBUecdMJH5UwQWH2gpjaAQ 
提取码:6666

选择给ALL User安装

 

 软件系统开发定制需要取消勾选以下两项

 软件系统开发定制环境变量配置

在PATH中添加

软件系统开发定制一定要注意这里,从Anaconda prompt打开 ,软件系统开发定制在开始那里会有的

 启动一下 notebook

 更换存储位置可参考

 安装成功截图

 

 创建虚拟环境

 查看当前存在的虚拟环境 info --envs

 此处建环境出现一个错

 原因是conda源加入了不知名的URL,现在不能使用了(或者废弃)

解决办法

我这里是C:\Users\32446\.condarc文件可以看到配置的url

channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  - defaults

命令运行成功截图

 图中显示的创建环境即将安装的位置是C:\Users\32446\.conda\envs\py37,后面讲如何更改环境安装位置

但是明明之前把Anaconda装在D盘,试了很多方法都不能改变位置,包括在文件中添加位置都无用。好像是conda本身决定了。输入conda info,查看相关信息

此处通过命令行直接将环境安装到指定的地方

conda create --prefix D:\soft\Anaconda3\envs\py37 python=3.7

 输入y开始下载

 竟然出错了

 那就以管理员身份运行命令行,最后成功安装

安装成功后,先输入activate,再输入conda activate py37,否则会报错

 

3、安装

链接:https://pan.baidu.com/s/1aFAqWSyQh4DHo4AUXjcmIQ 
提取码:6666

安装关键步骤

 由于scala会自动配置好环境变量,此处安装完成不再多讲

4、安装

链接:https://pan.baidu.com/s/133IlmoGS5B-U3pFH2Sz2mg 
提取码:6666

解压到指定目录

 环境变量配置

新建HADOOP_HOME

值为D:\soft\hadoop-2.7.1

 PATH中添加%HADOOP_HOME%\bin

运行scala

5、安装

链接:https://pan.baidu.com/s/12Eab3STZQ97CWkfi3tFScQ 
提取码:6666

解压到指定目录

配置系统环境变量 

新增SPARK_HOME,值为本地spark安装路径

新增PATH,为 %SPARK_HOME%\bin

 

 此时输入spark-shell会报错如下

原因是hadoop并未完整,还缺少主要的winutils.exe和hadoop.dll

链接:https://pan.baidu.com/s/1Ov6XqvUGzhg1Y2dW2hmQBg 
提取码:6666

将压缩包里的hadoop2.7.1的bin目录覆盖原来的目录

 

 spark-shell运行成功截图,此时hadoop和spark以经安装成功

6、安装sbt 

如果没有文件打包需求的可以不安装,本项目可以不用

链接:https://pan.baidu.com/s/1PscAMFhYGtE6pLpTPCiXfQ 
提取码:6666

----------------------------------------------------分割线-------------------------------------------------------------------

包安装

以下是在pycharm中使用pyspark以及graphframes

目前直接输入pyspark会报以下错误TypeError: 'bytes' object cannot be interpreted as an integer

1、安装py4j

首先以管理员运行命令行。在台式机windows上安装时并未使用管理员身份,但在我笔记本上安装时需要这样

 进入py37环境之后,再输入命令:pip install py4j

如果没有进环境就输入了包安装命令,则包安装在C盘 

2、安装pyspark

输入命令行 :pip install pyspark

 现在再输入pyspark,则无报错

 -------------------------------------------------------分割线----------------------------------------------------------------

接下来是新建python项目

1、项目配置

选择新建的py37环境

 进入项目之后,File->setting,查看py4j包和pyspark包是否存在

 进入项目结构,按以下步骤操作,为项目添加两个zip包

 点击确定,此时项目结构如图所示

 此时可以关闭项目,打开spark自带的python项目,位置如下

按照上述方法,添加python3.7解释器和两个zip包

在此位置添加新的配置,如下图所示

,运行pi.py文件 

运行成功

2、使用graphframes库

 如果使用本文的版本,那就选择0.6.0的graphframes

链接:https://pan.baidu.com/s/13PN75mYorH1jxfRG1evTMQ 
提取码:6666

管理员身份打开命令行,进入py37的环境,输入命令:

pyspark --packages graphframes:graphframes:0.6.0-spark2.3-s_2.11 --jars graphframes-0.6.0-spark2.3-s_2.11.jar

此时产生报错

 通过直接pip install graphframes

虽然有这个包,但是

 运行代码报错

对比台式和笔记本的C:\Users\32446\.ivy2目录下的jars,特地去台式上面把文件拷了过来,放到笔记本上

 此时需要核对几个地方

官网下载graphframes的jar包的下载地址:https://spark-packages.org/package/graphframes/graphframes,本文所使用的链接

链接:https://pan.baidu.com/s/13PN75mYorH1jxfRG1evTMQ 
提取码:6666

①jar包下载之后,需要放到D:\soft\Anaconda3\envs\py37\Lib\site-packages\pyspark\jars(也就是环境下面的pyspark下的jars文件夹下)

②pip show pyspark,查看是否为2.4.3版本,如果不是,pip uninstall pyspark,pip install pysparl==2.4.3

③C:\Users\32446\.ivy2\jars下的包需要全部复制粘贴到D:\soft\spark-2.4.3-bin-hadoop2.7\jars(也就是spark下的jars文件夹下)

核对完这三个地方,输入命令:pip uninstall graphframes==0.6

进入pyspark,输入以下代码

pycharm运行

运行成功

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发