简介

Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。
Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。
Spark 是在 Scala 语言中实现的,它将 Scala 用作其应用程序框架。与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。
尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 Hadoop 文件系统中并行运行。通过名为 Mesos 的第三方集群框架可以支持此行为。Spark 由加州大学伯克利分校 AMP 实验室 (Algorithms, Machines, and People Lab) 开发,可用来构建大型的、低延迟的数据分析应用程序。
来源:百度百科

Hadoop 和 Spark 的异同

https://www.oschina.net/news/73939/hadoop-spark-%20difference

Hadoop安装

http://blog.csdn.net/fenglailea/article/details/53318459

系统环境

Centos 7 服务器
当前用户 hadoop

Scala下载安装和配置

http://www.scala-lang.org/download/

wget http://downloads.lightbend.com/scala/2.12.0/scala-2.12.0.tgz
tar zxvf scala-2.12.0.tgz
mv scala-2.12.0 ~/scala

Scala环境变量设置

vim ~/.bashrc

增加

export SCALA_HOME=/home/hadoop/scala/bin
export PATH=$PATH:$SCALA_HOME

Spark下载

http://spark.apache.org/downloads.html
http://archive.apache.org/dist/spark/

wget http://archive.apache.org/dist/spark/spark-2.0.2/spark-2.0.2-bin-without-hadoop.tgz
tar zxvf spark-2.0.2-bin-without-hadoop.tgz

Spark安装

mv spark-2.0.2-bin-without-hadoop ~/spark

Spark配置环境变量

vim ~/.bashrc

加入

export SPARK_HOME=/home/hadoop/spark/bin
export PATH=$PATH:$SPARK_HOME

应用环境变量

. ~/.bashrc

配置

cp -rf /home/hadoop/spark/conf/log4j.properties.template /home/hadoop/spark/conf/log4j.properties
cp -rf /home/hadoop/spark/conf/spark-env.sh.template /home/hadoop/spark/conf/spark-env.sh

修改日志级别

vim /home/hadoop/spark/conf/log4j.properties

修改为

log4j.rootCategory=WARN, console

编辑 spark-env.sh文件

vim /home/hadoop/spark/conf/spark-env.sh

最后一行加入:

export SPARK_DIST_CLASSPATH=$(/home/hadoop/hadoop/bin/hadoop classpath)

说明:hadoop 的执行文件

测试

即计算 π 的近似值

/home/hadoop/spark/bin/run-example SparkPi 2>&1 | grep "Pi is roughly"

更多设置请看

http://blog.csdn.net/ouyangyanlan/article/details/52355350
http://dblab.xmu.edu.cn/blog/spark-quick-start-guide/
来源
http://blog.csdn.net/hangzhi22/article/details/52564148
http://blog.csdn.net/ouyangyanlan/article/details/52355350

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐