Spark-环境搭建及示例

Spark是用于大数据处理的统一分析引擎,与Hadoop的数据计算框架不同,非基于Mapreduce的计算框架,而是运行在spark分布式运行环境集群上执行工作的,不过它可以在YARN上运行,并支持Hadoop的文件存储格式HDFS,基于分布式文件进行分布式计算。另外Spark可以运行在,Apache Mesos、Kubernetes,在独立集群或者云端,可以访问Hdfs、Apache Cassandra、Hbase、Hive和数百个数据源中的数据。Spark官网:http://spark.apache.org/


    开发Spark运算任务程序,可以使用Java、Scala、Python、R和SQL shell快速编写应用程序,对数据进行计算分析。另外,Spark库中提供SparkSQL、流计算、机器学习、图计算等功能。

image.png

    

    开发Spark任务之前,我们首先要搭建Spark的一套集群开发环境,用于提交运行Spark任务,搭建完成之后,我们会运行Spark已有的示例程序,测试集群的可用性,接下来我们就开始部署。


    首先,选择Hadoop版本和与之对应的Spark版本,下载安装文件,并上传解压。

    其次,用VMware,创建一个具有三个节点的集群,master、slave1、slave2,并配置基础的主机名称hostsname、hosts文件修改、网络、关闭防火墙、安装JDK、SSH免密登陆、等基础环境配置操作,最后验证,ping、ssh集群是否配置完成。提示:可以配置一个节点,共性的配置完成后,克隆出另外两个节点,并最终完成集群配置。

    接下来,配置hadoop,配置HADOOP_HOME环境变量,配置:

core-site.xml、hdfs-site.xml、yarn-site.xml、slaves文件配置节点、hadoop-env.sh配置,并创建文件目录name/data;完成后,格式化hadoop:hdfs namenode format,在sbin目录下,启动hdfs:sh ./start-dfs.sh,和sh ./start-yarn.sh。输入:http://spark-master:50070、http://master:8088/cluster。

image.png

    接下来,配置Spark,设置环境变量SPARK_HOME,配置slaves,spark-env.sh,启动spark,在sbin/start-all.sh启动spark,启动后,输入spark-shell进行验证集群可用性。访问web-UI:http://spark-master:8080/。

 

image.png

spark-shell:

image.png

运行官方提供的示例程序:  
    计算圆周率的示例,在bin目录下执行run-example JavaSparkPi 2,计算结果如下

image.png


可以在官方源码、网站上查看示例,http://spark.apache.org/examples.html,并根据示例编写任务(Java、Scala、Python、R等语言),提交spark执行。

Leave a Comment

电子邮件地址不会被公开。 必填项已用*标注