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(集群管理器)上运行。它当前提供了几种用于部署的选项 :

  • Spark Standalone 模式 : 在私有集群上部署 Spark 最简单的方式。
  • Spark on Mesos
  • Spark on YARN

快速跳转

编程指南 :

  • 快速入门 : 简单的介绍 Spark API,从这里开始!~
  • Spark 编程指南 : 在所有 Spark 支持的语言(Scala,Java,Pyth 大专栏  Spark 概述on,R)中的详细概述。
  • 构建在 Spark 之上的模块 :
    • Spark Streaming : 实时数据流处理。
    • Spark SQL,Datasets,和 DataFrames : 支持结构化数据和关系查询。
    • MLlib : 内置的机器学习库。
    • GraphX : 新一代用于图形处理的 Spark API。

API 文档:

部署指南:

  • 集群模式概述 : 在集群上运行时概念和组件的概述。
  • 提交应用程序 : 打包和部署应用。
  • 部署模式 :
    • Amazon EC2 : 花费大约 5 分钟的时间让您在 EC2 上启动一个集群的介绍
    • Spark Standalone 模式 : 在不依赖第三方 Cluster Manager 的情况下快速的启动一个独立的集群
      • 部署案例
    • Spark on Mesos : 使用 Apache Mesos 来部署一个私有的集群
    • Spark on YARN : 在 Hadoop NextGen(YARN)上部署 Spark
      • 部署案例

其他文件:

  • 配置: 通过它的配置系统定制 Spark
  • 监控 : 监控应用程序的运行情况
  • 优化指南 : 性能优化和内存调优的最佳实践
  • 作业调度 : 资源调度和任务调度
  • 安全性 : Spark 安全性支持
  • 硬件配置 : 集群硬件挑选的建议
  • 与其他存储系统的集成 :
  • 构建 Spark : 使用 Maven 来构建 Spark
  • Contributing to Spark
  • Third Party Projects : 其它第三方 Spark 项目的支持

外部资源:

原文地址:https://www.cnblogs.com/lijianming180/p/12268113.html

时间: 2024-12-27 19:38:03

Spark 概述的相关文章

spark概述和安装部署

1.spark概述 1.什么是spark 基于内存的计算引擎,它的计算速度非常快.但是spark仅仅只涉及到数据的计算,没有涉及到数据的存储. 2.为什么学习spark 比mapreduce计算速度快很多. 3.spark特点 1.速度快 比mapreduce在内存中快100x,在磁盘中快10x 1.由于mapreduce每次job的中间结果数据都会落地到磁盘中,而spark每次中间结果数据可以不落地(可以保存在内存中) 2.mapreduce任务对应都会产生一些map任务和reduce任务,这

Spark概述及集群部署

Spark概述 什么是Spark (官网:http://spark.apache.org) Spark是一种快速.通用.可扩展的大数据分析引擎,2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目.目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL.Spark Streaming.GraphX.MLlib等子项目,Spark是基于内存计算的大数据并行计算框架.Spark基

Spark教程(2)-Spark概述及相关组件

1.概述 Spark起源于加州大学伯克利分校RAD实验室,起初旨在解决MapReduce在迭代计算和交互计算中的效率低下问题.目前Spark已经发展成集离线计算,交互式计算,流计算,图计算,机器学习等模块于一体的通用大数据解决方案. 2.Spark组件 Spark Core Spark Core 实现了 Spark 的基本功能,包含任务调度.内存管理.错误恢复.与存储系统 交互等模块. Spark Core 中还包含了对弹性分布式数据集(resilient distributed dataset

Spark 概述及其高可用集群部署

Spark入门 一. 学习目标 目标1:熟悉Spark相关概念 目标2:搭建一个Spark集群 二. Spark概述 2.1什么是Spark(官网:http://spark.apache.org) Spark是一种快速.通用.可扩展的大数据分析引擎,2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目.目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL.Spark Str

第1节 Spark概述:1 - 4

Spark入门 一. 课程目标 目标1:熟悉Spark相关概念 目标2:搭建一个Spark集群 目标3:编写简单的Spark应用程序 二. Spark概述 2.1什么是Spark(官网:http://spark.apache.org) Spark是一种快速.通用.可扩展的大数据分析引擎,2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目.目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包

spark 概述与安装

概述 spark 是一个快速的通用集群计算系统.它提供了丰富的高水平的api供java,scala和python调用. 安装 到官网下载最新版本spark-1.3.1 http://spark.apache.org/downloads.html,这里以这个版本的安装为列,下载后解压,进入到软件根目录,它有两种安装方式,一种通过mvn,另一种通过sbt,两种区别不到,以mvn安装为列说明,执行下面命令 build/mvn -Pyarn -Phadoop-2.4 -Dhadoop.version=2

Spark概述

1. Spark定义 构建与计算集群之上支持大数据集的快速的通用的处理引擎a)快速: DAG.Memoryb)通用:集成Spark SQL.Streaming.Graphic.R.Batch Processc)运行方式:StandAloneYARNMesosAWSd)数据来源:Hdfs Hbase Tachyon Cassandra Hiveand Any Hadoop Data Source2.Spark协议栈2.1 Hadoop生态系统 2.2 Spark协议栈 2.3 Spark VS M

spark概述随笔 // todo

1.spark是一个apache开源项目 2.spark可以提升程序运行速度,spark在100TB数据比赛中战胜hadoop,并且只使用了十分之一的机器. 3.spark提供了java,scala和python语言api支持 4.spark可以与hadoop生态系统和数据源很好的集成. 5.spark可以运行在yarn和mesos管理的集群上. 6.spark核心由spark sql.spark streaming.mllib.graphX组成. 7.spark core是基本引擎,用于大规模

Spark全面精讲视频_Spark2.0视频

Spark全面精讲(基于Spark2版本+含Spark调优+超多案例) 课程观看地址:http://www.xuetuwuyou.com/course/149 课程出自学途无忧网:http://www.xuetuwuyou.com/ 课程分五个阶段,共115课时! 第一阶段 Spark内核深度剖析 第00节课-课程特色和学习方式 第一节课-Spark概述(四大特性) 第二节课-Spark入门 第三节课-什么是RDD? 第四节课-spark架构 第五节课-linux环境准备(虚拟机,linux)