Spark
Spark是面向大规模数据处理的统一分析引擎。它提供了Scala、Java、Python和R的高级API,以及支持通用计算图形进行数据分析的优化引擎。它还支持一组丰富的高级工具,包括用于SQL和DataFrame的Spark SQL、用于机器学习的MLlib、用于图形处理的GraphX以及用于流处理的结构化流
在线文档
您可以在上找到最新的Spark文档,包括编程指南project web page本自述文件仅包含基本设置说明
建设Spark
Spark是用Apache Maven要构建Spark及其示例程序,请运行:
./build/mvn -DskipTests clean package
(如果您下载了预构建包,则不需要执行此操作。)
更详细的文档可从项目网站获得,网址为“Building Spark”
有关常规开发提示,包括有关使用集成开发环境开发Spark的信息,请参见“Useful Developer Tools”
交互式Scala外壳
开始使用Spark的最简单方式是通过scala shell:
./bin/spark-shell
尝试执行以下命令,该命令应返回1,000,000,000:
scala> spark.range(1000 * 1000 * 1000).count()
交互式Python外壳
或者,如果您喜欢Python,也可以使用Python shell:
./bin/pyspark
并运行以下命令,该命令也应返回1,000,000,000:
>>> spark.range(1000 * 1000 * 1000).count()
示例程序
Spark还在examples
目录。要运行其中一个,请使用./bin/run-example <class> [params]
例如:
./bin/run-example SparkPi
将在本地运行PI示例
您可以在运行示例时设置MASTER环境变量,以将示例提交到集群。这可以是 mesos:// 或 Spark://url,“纱线”在纱线上运行,“local”在本地运行,只有一个线程,或者“local[N]”在本地运行,有N个线程。如果类位于examples
包裹。例如:
MASTER=spark://host:7077 ./bin/run-example SparkPi
如果没有给出参数,许多示例程序会打印用法帮助
运行测试
测试首先需要building Spark构建Spark后,可以使用以下工具运行测试:
./dev/run-tests
请参阅有关如何执行以下操作的指南run tests for a module, or individual tests
还有一个Kubernetes集成测试,参见resource-managers/kubernetes/integration-tests/README.md
关于Hadoop版本的说明
Spark使用hadoop核心库与hdfs和其他hadoop支持的存储系统对话。由于不同版本的HADOOP中的协议已更改,因此您必须根据群集运行的相同版本构建Spark
请参阅以下地址的构建文档:“Specifying the Hadoop Version and Enabling YARN”有关针对特定Hadoop发行版进行构建的详细指导,包括针对特定配置单元和配置单元节俭服务器发行版进行构建
配置
请参阅Configuration Guide有关如何配置Spark的概述,请参阅联机文档
贡献
请查看Contribution to Spark guide有关如何开始为项目做贡献的信息,请参阅