Spark Overview

下面的内容直接翻译自http://spark.apache.org/docs/latest/index.html
会有少量自己的扩展补充,当然理解或翻译上的问题,有错请指正,下面正式开始。

Spark Overview


Apache Spark是一个快速通用的集群计算系统。它提供了对Java、Scala、Python、R的高级API支持,一个支持一般执行图的优化引擎。同时它还支持许多高级工具,包括Spark SQL(sql&结构化数据处理), MLlib(机械学习),GraphX(图运算)和spark streaming


下载及安装

我们可以从Spark项目网站的下载页面( http://spark.apache.org/downloads.html)得到spark。本系列文档中的内容都是基于Spark 1.5.2。Spark 使用了Hadoop client库来支持HDFS和YARN。在下载包中,预置了一些常用版本的Hadoop。我们也可以先下载任意版本的hadoop,然后通过配置Spark ClassPath http://spark.apache.org/docs/latest/hadoop-provided.html 让Spark运行在任意版本的Hadoop上。
当然如果你喜欢自己通过源码自己build Spark,请参考 http://spark.apache.org/docs/latest/building-spark.html
Spark 能够运行在Windows和Unix(linux,Mac os 都行)环境下。在一台机器上本地运行也非常简单,只要安装了JAVA,并且正确设置了PATH和JAVA_PATH。
Spark需要运行在Java 7+,Python 2.6+,R3.1+。因为Spark 1.5.2 用了Scala 2.10 API,我们需要用2.10.x的Scala。

Examples
Spark 在examples/src/main目录下提供了Scala,Java,Python 和R的一些例子。
要运行 java或Scala 程序,可以在Spark 目录下执行 bin/run-example <class> [params]。(然后,它调用了更通用的 spark-submit 来启动应用)
例如
./bin/run-example SparkPi 10

我们也可以通过Scala Shell 来运行Spark。
./bin/spark-shell --master local[2]

--master 选项指定了分布式集群的master URL, 或者 local 表示本地单线程运行, local[N]代表本地运行使用N个线程。在本地测试我们只能使用local。通过运行 Spark shell的 --help选项,能够得到所有的选项列表。

Spark也提供了Python API。可以通过 bin/pyspark来运行支持Python的Spark 交互程序。
./bin/pyspark --master local[2]
。同样Spark也提供了基于Python的例子。
./bin/spark-submit examples/src/main/python/pi.py 10

当然还有R
./bin/sparkR --master local[2]

./bin/spark-submit examples/src/main/r/dataframe.R

猜你喜欢

转载自farness.iteye.com/blog/2261238