spark介绍

    spark是一个快速通用集群计算系统。它提供了python,java,scala的api,使得编写并行作业更容易,同时提供了优化引擎来支持通用计算 图表。它还支持一组丰富的更高级别的工具:shark(hive on spark), MLlib(机器学习),GrapX( 图表处理),spark streaming; #graph可以理解为报表吗?

下载:

spark可以运行在unix和win上面,需要安装jdk, 同时配置PATH,JAVA_HOME

编译

spark使用sbt进行编译,在spark顶级目录中运行  sbt/sbt  assembly命令。
apark 0.9.1依赖scala 2.10,如果使用scala来写程序,需要使用2.10.X来兼容。

运行例子

spark自带了一些例子,scala和java的例子在example目录中,python的例子在python/example中,运行java和scala例子使用命令:
./bin/run_example <class> <param> , 例如: ./bin/run-example org.apache.spark.examples.SparkPi local
python的例子在python/example中,使用./bin/pyspark  <example-program> <param>  例如:
./bin/pyspark  ./python/example/pi.py   local

如果后面不加参数,会有相关的使用提示
所有的例子都可是使用<master>参数来指定一个集群的URL来连接,或者是用local使用单线程运行在本地,或者local[n]使用多线程运行在本地  


运行在集群上面:

spark可以独自运行,也可以运行在已有集群上:
  • Amazon EC2: our EC2 scripts let you launch a cluster in about 5 minutes
  • Standalone Deploy Mode: simplest way to deploy Spark on a private cluster
  • Apache Mesos
  • Hadoop YARN

haoop版本问题

spark使用hadoop-client库去和hdfs和hadoop支持的存储系统进行交互。由于不通hadoop版本的hdfs协议有变化,所以在编译spark的时候需要指定spark的版本。
SPARK_HADOOP_VERSION=2.2.0 sbt/sbt assembly
如果系统spark运行在yarn上面那么使用如下命令
SPARK_HADOOP_VERSION=2.0.5-alpha SPARK_YARN=true sbt/sbt assembly




来自为知笔记(Wiz)


你可能感兴趣的:(spark介绍)