一、概述
1.1 spark概述
Apache Spark是一个流行的实时处理框架,它可以通过内存计算的方式来实时的进行数据分析。它起源于Apache Hadoop MapReduce,然而Apache Hadoop MapReduce只能进行批处理,但是无法实现实时计算;为了弥补这一缺陷,Apache Spark对其进行了扩展,除了批处理外,同时支持了数据的实时计算。除了批处理和实时计算外,Apache Spark还支持了交互式查询与迭代式算法等特性。此外,Apache Spark有自己的集群管理方式来支持其应用。它利用了Apache Hadoop的存储和计算能力,同时,它也使用了HDFS来存储并且可以通过YARN来运行Spark应用。
1.2 PySpark概述
Apache Spark是Scala语言实现的一个计算框架。为了支持Python语言使用Spark,Apache Spark社区开发了一个工具PySpark。利用PySpark中的Py4j库,我们可以通过Python语言操作RDDs。
PySpark提供了PySpark Shell,它是一个结合了Python API和spark core的工具,同时能够初始化Spark环境。
二、环境搭建
Step1:安装Java和Scale。
Step2:在Apache Spark官网中下载Apache Spark。本文中以spark-2.1.0-bin-hadoop2.7为例。
Step3:解压压缩包并设置环境变量:
tar -xvf Downloads/spark-2.1.0-bin-hadoop2.7.tgz
export SPARK_HOME = /home/hadoop/spark-2.1.0-bin-hadoop2.7
export PATH = $PATH:/home/hadoop/spark-2.1.0-bin-hadoop2.7/bin
export PYTHONPATH = $SPARK_HOME/python:$SPARK_HOME/python/lib/py4j-0.10.4-src.zip:$PYTHONPATH
export PATH = $SPARK_HOME/python:$PATH
Step4:进入Spark目录并进入PySpark shell:
./bin/pyspark