Spark 概述

Posted lijianming180

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark 概述相关的知识,希望对你有一定的参考价值。

Apache Spark 是一个快速的、多用途的集群计算系统。在 Java,Scala,Python 和 R 语言以及一个支持常见的图计算的经过优化的引擎中提供了高级 API。它还支持一组丰富的高级工具,包括用于 SQL 和结构化数据处理的 Spark SQL,用于机器学习的 MLlib,用于图形处理的 GraphX 以及 Spark Streaming


下载

从该项目官网的 下载页面 获取 Spark,该文档用于 Spark 2.0.2 版本。Spark 使用了用于 HDFS 和 YRAN 的 Hadoop client 的库。为了适用于主流的 Hadoop 版本可以下载先前的 package。用户还可以下载 “Hadoop free” binary 并且可以 通过增加 Spark 的 classpath 来与任何的 Hadoop 版本一起运行 Spark。

如果您希望从源码中构建 Spark,请访问 构建 Spark

Spark 既可以在 Windows 上运行又可以在类似 UNIX 的系统(例如,Linux,Mac OS)上运行。它很容易在一台机器上本地运行 - 您只需要在您的系统 PATH 上安装 Java,或者将 JAVA_HOME 环境变量指向一个 Java 安装目录。

Spark 可运行在 Java 7+,Python 2.6+/3.4 和 R 3.1+ 的环境上。 针对 Scala API,Spark 2.0.1 使用了 Scala 2.11。 您将需要去使用一个可兼容的 Scala 版本(2.11.x)。


运行示例和 Shell

Spark 自带了几个示例程序。 Scala,Java,Python 和 R 的示例在 examples/src/main 目录中。在最顶层的 Spark 目录中使用 bin/run-example [params] 该命令来运行 Java 或者 Scala 中的某个示例程序。(在该例子的底层,调用了 spark-submit 脚本以启动应用程序 )。 例如,

1
./bin/run-example SparkPi 10

您也可以通过一个改进版的 Scala shell 来运行交互式的 Spark。这是一个来学习该框架比较好的方式。

1
./bin/spark-shell --master local[2]

这个 –master 选项可以指定为 分布式集群中的 master URL,或者指定为 local 以使用 1 个线程在本地运行,或者指定为 local[N] 以使用 N 个线程在本地运行 。您应该指定为 local 来启动以便测试。该选项的完整列表,请使用 –help 选项来运行 Spark shell。

Spark 同样支持 Python API。在 Python interpreter(解释器)中运行交互式的 Spark,请使用 bin/pyspark :

1
./bin/pyspark --master local[2]

Python 中也提供了应用示例。例如,

1
./bin/spark-submit examples/src/main/python/pi.py 10

从 1.4 开始(仅包含了 DataFrames API)Spark 也提供了一个用于实验性的 R API。为了在 R interpreter(解释器)中运行交互式的 Spark,请执行 bin/sparkR :

1
./bin/sparkR --master local[2]

R 中也提供了应用示例。例如,

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

在集群上运行

Spark 集群模式概述 说明了在集群上运行的主要的概念。Spark 既可以独立运行,也可以在几个已存在的 Cluster Manager(集群管理器)上运行。它当前提供了几种用于部署的选项 :


快速跳转

编程指南 :

API 文档:

部署指南:

其他文件:

外部资源:

以上是关于Spark 概述的主要内容,如果未能解决你的问题,请参考以下文章

spark关于join后有重复列的问题(org.apache.spark.sql.AnalysisException: Reference '*' is ambiguous)(代码片段

Spark闭包与序列化

Spark内核概述

大数据技术之_19_Spark学习_05_Spark GraphX 应用解析 + Spark GraphX 概述解析 + 计算模式 + Pregel API + 图算法参考代码 + PageRank(

Spark SQL概述

Reactreact概述组件事件