Pyspark学习笔记1——配置环境并计算pi测试

本文详细介绍了在CentOS 7.3中配置Pyspark环境,包括JDK、Python3的安装,以及HDFS和Hadoop的配置。接着通过计算Pi展示了Pyspark的使用,分别运用莱布尼兹公式和概率计算法,并解释了MapReduce的运行过程。
摘要由CSDN通过智能技术生成

Pyspark学习笔记(一)

环境搭建

在linux的CentOS 7.3中,首先要配置好JDK和python。

1.JDK和Python3配置

Jdk的下载地址,注意需要先点击同意条款的按钮。http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

$ wget https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jdk-8u191-linux-x64.tar.gz #下载jdk包
$ tar -zxvf jdk-8u191-linux-x64.tar.gz #解压
$ mv jdk-8u191-linux-x64 /usr #将解压好的文件移动到usr文件夹里面
$ mv jdk-8u191-linux-x64 jdk  #名字太长,改个名字为jdk
$ sudo vi /etc/profile #配置环境变量。sudo是管理员命令,如果上面的步骤进行不下去,也在前面加上sudo

输入 i 进行编辑,看到最下面变为edit。在最后写入以下内容:

#Java Env
export JAVAHOME=/usr/jdk
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

esc退出编辑模式,再输入":wq"保存并退出编辑器

$ source /etc/profile #使环境变量生效
$ java -version  #查看是否安装成功

参考文章:
(jdk安装过程)https://www.cnblogs.com/liugh/p/6623530.html
(jdk安装包报错)https://blog.csdn.net/jdjdndhj/article/details/73649419

之后安装python3

#安装依赖环境
$ yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
#下载Python3
$ wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
#解压并移动至新的文件夹
$ tar -zxvf Python-3.6.1.tgz 
$ mv Python-3.6.1 /usr
#进入文件夹,编译安装
$ cd /usr/Python-3.6.1
$ mkdir -p /usr/local/python3
$ ./configure --prefix=/usr/local/python3
$ make
$ make install
#设置软链
$ ln -s /usr/local/python3/bin/python3 /usr/bin/python3
#配置环境变量
$ vim etc/.bash_profile

同样输入i打开编辑模式,加入以下内容:

# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
     . ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin:/usr/local/python3/bin
export PATH

ESC,输入":wq"保存并退出。

$ source ~/.bash_profile
#查看是否安装成功python3和pip
$ python3 -version
  >>exit()
$ pip3 install numpy

如果产生报错,很有可能是依赖没有安装好,重新回上面yum安装。当报错error while loading shared libraries时,可参考下面第二篇文章。
参考文章:
https://www.cnblogs.com/kimyeee/p/7250560.html
https://blog.csdn.net/learner198461/article/details/54598895

2. 安装Pyspark

$ wget https://www-eu.apache.org/dist/spark/spark-2.4.0/spark-2.4.0-bin-hadoop2.7.tgz
$ tar -xzf spark-2.4.0-bin-hadoop2.7.tgz
$ mv spark-2.4.0-bin-hadoop2.7 /usr
$ cd /usr
$ mv spark-2.4.0-bin-hadoop2.7 spark2.4.0
$ vi /etc/profile
#添加内容
export SPARK_HOME=/usr/spark #设置SPARK_HOME环境变量
export PATH=$SPARK_HOME/bin:$PATH # 将Spark添加到PATH中
export PYTHONPATH=$SPARK_HOME/python/:$PYTHONPATH #添加到Python路径

esc +:wq保存退出

$ source /etc/profile
$ pip install py4j
#测试是否安装完成
$ pyspark
##测试
>>
from pyspark import  SparkContext
sc = SparkContext( 'local', 'pyspark')
def isprime(n):
    """
    check if integer n is a prime
    """
    # make sure n is a positive integer
    n = abs(int(n))
    # 0 and 1 are not primes
    if n < 2:
        return False
    # 2 is the only even prime number
    if n == 2:
        return True
    # all other even numbers are not primes
    if not n & 1:
        return False
    # range starts with 3 and only needs to go up the square root of n
    # for all odd numbers
    for x in range(3, int(n**0.5)+1, 2):
        if n % x == 0:
            return False
    return True

# Create an RDD of numbers from 0 to 1,000,000
nums = sc.parallelize(xrange(1000000))

# Compute the number of primes in the RDD
print nums.filter(isprime).count()

参考原文:
https://blog.csdn.net/github_33934628/article/details/70189141
https://blog.csdn.net/weixin_39599711/article/details/79003192

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值