本帖最后由 hanyunsong 于 2020-7-16 17:21 编辑
Apache Spark是用于大规模数据处理的统一分析引擎. 它提供Java,Scala,Python和R中的高级API,以及支持常规执行图的优化引擎. 它还支持一组丰富的更高级别的工具,包括 星火SQL用于SQL和结构化数据的处理, MLlib机器学习, GraphX用于图形处理,以及 结构化流的增量计算和流处理.
Security
默认情况下,Spark中的安全性处于关闭状态. 这可能意味着您默认情况下容易受到攻击. 下载并运行Spark之前,请参阅 Spark Security .
Downloading
从项目网站的 下载页面获取Spark. 本文档适用于Spark版本3.0.0. Spark将Hadoop的客户端库用于HDFS和YARN. 下载是为少数流行的Hadoop版本预先打包的. 用户还可以下载"免费的Hadoop"二进制文件,并 通过扩展Spark的classpath在任何Hadoop版本上运行Spark. Scala和Java用户可以使用其Maven坐标将Spark包含在他们的项目中,而Python用户可以从PyPI安装Spark.
Spark可在Windows和类似UNIX的系统(例如Linux,Mac OS)上运行,并且应在运行受支持的Java版本的任何平台上运行. 这应该包括x86_64和ARM64上的JVM. 在一台机器上本地运行很容易-您所需要做的就是在系统PATH上安装java或指向Java安装的JAVA_HOME环境变量.
Spark可在Java 8/11,Scala 2.12,Python 2.7 + / 3.4 +和R 3.1+上运行. 从Spark 3.0.0开始不推荐使用Java 8之前的版本8u92. 从Spark 3.0.0开始不推荐使用3.6版之前的Python 2和Python 3. 从Spark 3.0.0开始不推荐使用3.4版之前的R. 对于Scala API,Spark 3.0.0使用Scala 2.12. 您将需要使用兼容的Scala版本(2.12.x).
对于Java 11,Apache Arrow库还需要-Dio.netty.tryReflectionSetAccessible=true . 这样可以防止java.lang.UnsupportedOperationException: sun.misc.Unsafe or java.nio.DirectByteBuffer.(long, int) not available当Apache Arrow内部使用Netty时java.lang.UnsupportedOperationException: sun.misc.Unsafe or java.nio.DirectByteBuffer.(long, int) not available .
Running the Examples and Shell
Spark附带了几个示例程序. Scala,Java,Python和R的示例位于examples/src/main目录中. 要运行Java或Scala示例程序之一,请使用顶级Spark目录中的bin/run-example <class> [params] . (在后台,这将调用更通用的 spark-submit脚本来启动应用程序). 例如, [mw_shl_code=bash,true]./bin/run-example SparkPi 10[/mw_shl_code] 您还可以通过修改后的Scala shell版本以交互方式运行Spark. 这是学习框架的好方法. [mw_shl_code=bash,true]./bin/spark-shell --master local[2][/mw_shl_code] --master选项指定 分布式集群的 主URL ,或者local可以通过一个线程在local运行,或者local[N]可以通过N个线程在本地运行. 您应该首先使用local进行测试. 有关选项的完整列表,请使用--help选项运行Spark shell.
Spark还提供了Python API. 要在Python解释器中交互式运行Spark,请使用bin/pyspark : [mw_shl_code=bash,true]./bin/pyspark --master local[2][/mw_shl_code] Python还提供了示例应用程序. 例如, [mw_shl_code=bash,true]./bin/spark-submit examples/src/main/python/pi.py 10[/mw_shl_code] 从1.4开始,Spark还提供了 R API (仅包含DataFrames API). 要在R解释器中交互式运行Spark,请使用bin/sparkR : [mw_shl_code=bash,true]./bin/sparkR --master local[2][/mw_shl_code] R中还提供了示例应用程序.例如, [mw_shl_code=bash,true]./bin/spark-submit examples/src/main/r/dataframe.R[/mw_shl_code]
Launching on a Cluster
Spark 集群模式概述介绍了在集群上运行的关键概念. Spark既可以单独运行,也可以在多个现有集群管理器上运行. 当前,它提供了几种部署选项:
Where to Go from Here
编程指南:
API文件:
部署指南:
其他文件:
外部资源:
原文链接
http://spark0apache0org.icopy.site/docs/latest/
|