Spark SQL上下文创建与测试环境搭建
版权声明:本文为博主原创文章,未经博主允许不得转载。
手动码字不易,请大家尊重劳动成果,谢谢
Spark SQL上下文创建
这篇文章主要介绍Spark SQL,因此默认各位已经有一个搭建好的Spark开发环境了。
需要先引入和spark版本一致的spark-sql包
如果我们要在代码中使用Spark SQL,首先我们要创建操作Spark SQL的上下文:
1、Spark 2.0之前使用Spark SQL需要创建SQLContext对象
val sc: SparkContext // An existing SparkContext.
val sqlContext = new org.apache.spark.sql.SQLContext(sc)
// this is used to implicitly convert an RDD to a DataFrame.
import sqlContext.implicits._
2、Spark 2.0之后则需要SparkSession对象。
import org.apache.spark.sql.SparkSession
val spark = SparkSession
.builder()
.appName("Spark SQL basic example")
.config("spark.some.config.option", "some-value")
.getOrCreate()
// For implicit conversions like converting RDDs to DataFrames
import spark.implicits._
之后我们就可以愉快地学习Spark SQL了。
Spark SQL测试环境搭建
Spark SQL上下文创建只是为了让我们能在代码中编写Spark SQL应用,但是毕竟代码运行起来是会有一些麻烦的,并且结果不那么直观。因此我们也要搭建一套可以运行spark-shell的环境,之后spark-shell将成为本教程的主要工具。
不管在windows还是linux上,操作步骤都是基本一致的:
注意:所有路径下尽量不要带空格,尤其是Spark包
1、安装JAVA
Windows:
下载JDK安装包并安装完毕
在环境变量里增加JAVA_HOME为JDK的根目录,如:C:\Program Files\Java\jre1.8.0_144
Linux:
下载JDK包解压在合适的路径下
增加环境变量配置到/root/.bashrc或者/etc/profile的最后面:
export JAVA_HOME=JDK根目录
export PATH=$PATH:$JAVA_HOME/bin
确保执行java -version
能打印Java版本
2、安装Scala
Windows:
下载Scala安装包并安装完毕
在环境变量里增加SCALA_HOME为Scala的根目录,如:C:\Program Files (x86)\scala
Linux:
下载Scala包解压在合适的路径下
增加环境变量配置到/root/.bashrc或者/etc/profile的最后面:
export SCALA_HOME=Scala根目录
export PATH=$PATH:$SCALA_HOME/bin
确保执行Scala
能打开Scala REPL并且可进行简单运算
3、安装Hadoop
Windows:
下载Hadoop二进制包,解压在合适的路径下
在环境变量里增加HADOOP_HOME为Hadoop的根目录
去 https://github.com/steveloughran/winutils 选择你安装的Hadoop版本号,然后进入到bin目录下,下载winutils.exe放在HADOOP_HOME/bin文件夹里。
新启动一个cmd执行:
winutils.exe chmod 777 /tmp/hive
Linux:
下载Hadoop二进制包,解压在合适的路径下
增加环境变量配置到/root/.bashrc或者/etc/profile的最后面:
export HADOOP_HOME=Hadoop根目录
export PATH=$PATH:$HADOOP_HOME/bin
4、安装Spark
Windows:
下载Spark安装包并安装完毕
在环境变量里增加SPARK_HOME为Spark的根目录
Linux:
下载Scala包解压在合适的路径下
增加环境变量配置到/root/.bashrc或者/etc/profile的最后面:
export SPARK_HOME=Spark根目录
export PATH=$PATH:$SPARK_HOME/bin
然后一切安装就结束了,启动一个新的cmd,执行spark-shell
即可进入spark-shell中。
其实所有步骤就是在下载包->解压到目录->设置环境变量,除了windows中的hadoop稍有不同
Windows环境上的配置可以参考: https://blog.youkuaiyun.com/u011513853/article/details/52865076 感觉讲的挺详细了
Linux上如果不明白,直接百度Spark环境搭建就行了,一搜一大把