1. Spark Overview(spark概述)

Apache spark是一个快速和通用的集群计算系统。它提供了Java,Scala,Python和R的高级APIs,以及支持通用执行图的优化引擎。它也支持一系列高级工具,包括用于SQL的Spark SQL、结构化数据处理、用于机器学习的MLlib,用于图形处理的GraphX以及Spark Streaming。

2. Downloading(下载)

从项目网址的下载页面下载Spark。这个文档是Spark 2.2.1版本的。Spark使用HDFS和YARN的Hadoop的客户端库。下载那些少数流行的Hadoop版本预先打包的。用户也可以下载“Hadoop free”二进制文件,并通过增加Spark类路径来运行带有任何Hadoop版本的Spark。Scala和Java用户可以使用Maven配合将Spark包含在他们项目中,将来Python用户也可以从PyPI安装Spark。

如果你喜欢通过源代码编译Spark,可以查看Building Spark

Spark可以在Windows和类UNIX系统(如Linux,Mac OS)上运行。在一台机器上本地运行是很容易——你需要做的是在你系统Path上安装Java,或者通过JAVA_HOME环境变量指向Java安装目录。

Spark运行在Java8+,Python 2.7+/3.4+和R3.1+。对于Scala API,Spark2.2.1使用Scala2.11。你需要使用兼容性的Scala版本2.11.x。

注意,从Spark2.2.0开始,对2.6.5之前版本的Java7,Python2.6和旧Hadoop版本的支持已被删除。

注意,从Spark2.1.0开始,不支持Scala2.10,可能会在Spark2.3.0中删除。

3. Running the Examples and Shell(运行例子和shell)

Spark带有几个示例程序。Scala,Java,Python和R示例在example/src/main目录。在Spark根目录使用bin/run-example <class> [params]去运行Java或者Scala示例程序。(在幕后,调用spark-submit脚本来启动应用程序)例如:

./bin/run-example SparkPi 10

你也可以通过Scala shell的修改版本交互地运行Spark。这是学习框架的最好方式。

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

--master选项指向一个分布式集群的master URL,local 指使用一个线程本地运行,local[N] 指使用N个线程本地运行。你应该使用local进行测试。有关完整的选项列表,使用--help选项运行Spark Shell查看。

Spark也提供Python API。使用bin/pyspark在Python解释器中以交互方式运行Spark:

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

示例应用程序也在Python中提供,如:

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

自从1.4开始,Spark还提供了一个实验性的R API(仅包括DataFrame APIs)。使用bin/sparkR在R解释器中以交互方式运行Spark:

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

示例应用程序也在R中提供,如:

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

4. Launchiing on a Cluster(在集群中启动)

Spark集群模式概述解释了在集群上运行的相关概念。Spark可以单独运行,也可以运行在几个现有的集群管理器上。它目前提供了几个部署选择:

5. 接下来方向

项目目录:

API Docs:

部署目录:

  • Cluster Overview(集群概述):当在一个集群上运行时一些概念和组件的概述
  • Submitting Applications:打包和部署应用
  • Deployment modes(部署模式):
  1. Amazon EC2:在EC2上大概5分钟内启动一个集群的脚本
  2. Standalone Deploy Mode:不通过第三方集群管理器快速启动一个独立集群
  3. Mesos:使用Apache Mesos部署一个私有集群
  4. YARN:在Hadoop NextGen(YARN)上部署Spark(目前我在使用的模式)
  5. Kubernetes(试验性):在Kubernetes上部署Spark

参考资料:

http://spark.apache.org/docs/latest/

最新文章

  1. web 安全杂谈
  2. SQLServer 事务隔离级别与锁的申请和释放
  3. SRS(simple-rtmp-server)
  4. 一步一步学习SignalR进行实时通信_1_简单介绍
  5. Helpers\Data
  6. Headless MSBuild Support for SSDT (*.sqlproj) Projects [利用msbuild自动化部署 .sqlproj]- 摘自网络
  7. 暑假集训(1)第三弹 -----Dungeon Master(Poj2251)
  8. 提交App Store注意事项1
  9. java解析JSON (使用net.sf.json)
  10. php面向对象1
  11. appium框架之bootstrap
  12. mybatis源码笔记
  13. mactype配置
  14. php5.5+apache2.4+mysql5.7在windows下的配置
  15. [leetcode]16. 3Sum Closest最接近的三数之和
  16. python3 下列表与字典转换
  17. 【转】XP_cmdshell存储过程
  18. linux传输文件命令: rz 和 sz
  19. 数值积分:基于牛顿-柯茨公式的定步长和自适应积分方法 [MATLAB]
  20. Orchard运用 - 理解App_Data目录结构

热门文章

  1. bzoj 4013: [HNOI2015]实验比较
  2. bzoj 3626: [LNOI2014]LCA
  3. php-redis 操作类 封装
  4. 《重新定义公司 - Google 是如何运营的》重点摘录
  5. java RTTI笔记 之Class学习笔记(摘自java编程思想)
  6. .Net 如何模拟会话级别的信号量,对http接口调用频率进行限制(有demo)
  7. Android Ptrace Inject
  8. 简易 bokeh 图像散景效果算法实现
  9. H5数飞机
  10. centOS7-配置网络地址