实例介绍
【实例截图】
Spark,中文文档, Spark 2.0.2<br />
ApacheAN- Apache Spark202中文文档-V0.1.0-加入我们
●故障排除
性能调优
缓存数据到内存
其它配置选项
分布式SQL引擎
运行 Thrift jdbc/ ODBC server
运行 Spark SQL CLI
迁移指南
从 Spark SQL1.6升级到20
从 Spark SQL1.5升级到1.6
从 Spark SQL14升级到1.5
从 Spark SQl1.3升级到14
从 Spark SQL1.0~1.2升级到13
兼容 Apache Hive
参考
数据类型
NaN语义
Structured Streaming
MLib(机器学习)
mib基础
ML Pipelines
Extracting, transforming and
selecting features
GraphX(图形处理)
Spark r
集群模式枧述
提交应用
Spark Standalone模式
Spark on Mesos
· Spark on yarn
Spark on YaRN上运行
准备
· Spark on YARN配置
调试应用
Spark属性
重要提示
在一个安全的集群中运行
用 Apache Oozie来运行应用程序
Kerberos故障排查
·更多
Spark配置
Spark监控
优化指南
作业调度
Spark安全
硬件配置
构建 Spark
Spark概述
下
原文链接http://spark.apache.org/docs/latest/ind
运行示例和 Shell
ext
在集群上运行
决运跳转
译文链接http://www.apache.wiki/pages/viewpag
e action? paged=2883720
贡献者:漫步,那伊抹微笑
Apache Spark是个快速的、多用途的集群计算系统。在Java, Scala, Python和R语言以及一个支持常见的图计算的经过优化
的引擎中提供了高级API。它还支持一组丰富的高级工具,包括用于SQL和结构化数据处理的 Spark SQL,用于机器学习的MLb,用于
图形处理的 GraphX、以及 Spark Streaming
下载
从该项目官网的下载页面获取Spak,该文档用于 Spark20.2版本。 Spark使用了用于HDFS和YRAN的 Hadoop client的库。为了适用
于主流的 Hadoop版本可以下载先前的 package。用户还可以下载" Hadoop free" binary并且可以通过增加 Spark的 classpath来与任
何的 Hadoop版本一起运行 Spark
ApacheAN- Apache Spark20.2中文文档-v0.1.0-加入我们
ApacheAN- Apache Spark202中文文档-V0.1.0-加入我们
如果您希望从源码中构建 Spark,请访问构建 Spark,
Spark既可以在 Windows上运行又可以在类似UNX的系统(例如, Linux, Mac os)上运行。它很容易在一台机器上本地运行
您只需要在您的系统PATH上安装Java,或者将 JAVA HOME环境变量扫向一个Java安装目录。
spak可运行在Java7 , Python26 /34和R3.1 的环境上。针对 Scala api, Spark20.1使用了Scaa211。
您将需要去使用一个可兼容的Sca|a版本(2.11X)。
运行示例和 Shell
Spark自带了几个示例程序。 Scala,Java, Python和R的示例在 examples/ src/main目录中。在最顶层的 Spark目录中使用bn/ run-exa
mple< class>[ params]该命令来运行Java或者 Scala中的某个示例程序。(在该例子的底层,调用了 spark-submit脚本以启动应用程序
)。例如
/bin/run-example SparkPi 10
您也可以通过一个改进版的 Scala she‖来运行交互式的 Spark。这是一个来学习该框架比较好的方式。
/bin/spark-shell --master local[2]
这个-- master选项可以指定为分布式集群中的 master URL,或者指定为loca以使用1个线程在本地运行,或者指定为loca|[N]以使用N
个线程在本地行。您应该指定为 local来启动以使测试。该选项的完整列表,请使用-help选项来运行 Spark shello
Spark同样支持 Python APlo在 Python interpreter(解释器)中运行交互式的 Spark,请使用bin/ pyspark
/bin/pyspark --master local[2]
Python中也提供了应用示例。例如
/bin/spark-submit examples/src/main/python/pi. py 10
======
从1.4开始(仅包含了 DataFrames api) Spark也提供了一个用于实验性的RAP。为了在 R interpreter(解释器)中运行交互式的 Spark
请执行bin/ spark
:./bin/sparkR--master local[2]
R中也提供了应用示例。例如,
/bin/spark-submit examples/src/main/r/dataframeR
在集群上运行
Spark集群模式概述说明了在集群上运行的主要的概念。 Spark既可以独立运行,也可以在几个已存在的 Cluster Manager(集群管理器)上
运行。它当前提供了几种用于部署的选项
Spark Standalone模式:在私有集群上部署 Spark最简单的方式
Spark on Mesos
Spark on YARN
快速跳转
编程指南
入细i单的介绍S水A它;里开始
spak编程指南:在所有Spak支持的语言( Scala,Java, Python,R)中的详细概述。
ApacheAN- Apache Spark20.2中文文档-v0.1.0-加入我们
ApacheAN- Apache Spark202中文文档-V0.1.0-加入我们
构建在 Spark之上的模块
Spark streaming:实时数据流处理
park SQL, Datasets,和 Data frames:支持结构化数据和关系查询。
MLib:内置的机器学习厍。
GraphX:新一代用于图形处理的 Spark API
AP文档
Spark Scala API(Scaladoc
Spark Java APi(Javadoc)
Spark Python API(Sphinx)
Spark R API(Roxygen2)
部署指南:
集群模式概述:在集群上运行时概念和组件的概述
提交应用程序:打包和部署应用
部署模式
Amazon ec2:花费大约5分钟的时间让您在EC2上启动一个集群的介绍
Spark Standalone模式:在不依赖第三方 Cluster Manager的情况下快速的启动一个独立的集群
Spark on mesos:使用 Apache Mesos来部署一个私有的集群
Spark on YaRn:在 Hadoop NextGen(YARN)上部署 Spark
其他文件
配置:通过它的配置系统定制 Spark
监控:监控应用程序的运行情况
优化指南:性能优化和内存调优的最佳实践
作业调度:资源调度和任务调度
安全性:Spak安全性支持
硬件配置:集群硬件挑选的建议
与其他存储系统的集成
Open Stack Swift
构建 Spark:使用 Maven来构建 Spark
Contributing to spark
Third Party Projects:其它第三方 Spark项目的支持
外部瓷资源
Spark主页
Spark Wiki
Spark社区资源,包括当地的聚会
StackOverflow tag apache-spark
邮件列表:在这里询问关于 Spark的问题
AMP营地在加州大学伯克利分校一系列的训练营特色和讨论练习对 Spark, Spark Steaming, Mesos以及更多。可以免费通过视频,
幻灯片和练习学习。
代码示例:更多 Spark的子文件夹中(Scaa,Java, Python,R)获得。
编程指南
快速入门
Spark编程指南
最近的更新
概述
Spark依赖
那伊抹微笑
Spark的初始化
Apache Spark2.0.0版本说明在9分钟以前更新·
She的使用
查看变动
●弹性分布式数据集(RDDS
并行集合
外部数据集
RDD操作
片烈
·RDD持久化
· Apache Spark2.0.0版本说明在2017-03-03更
共享变量
新·查看变动
Broadcast Variables(广播变量)
Accumulators(累加器)
部署应用到集群中
使用Java/ Scala运行 spark Jobs
guangchao
·单元测试
Spark缔程指南在2017-02-05更新·查看变动
Spark10版本前的应用程序迁移
下一步
Spark Streaming
Spark Streaming
概述
邦伊探微关
个简单的示例
基本概念
Spark on Mesos在2017-01-22更新·查看变动
ApacheAN- Apache Spark20.2中文文档-v0.1.0-加入我们
ApacheAN- Apache Spark202中文文档-V0.1.0-加入我们
Spark Streaming依赖
Apache Spark2.0.2翻译说明创建2017-01-17
初始化 Streaming Context
Discretized
Apache Spark20.2校验说明创建2017-01-17
Streams( STreams)(离散化流)
Input STreams Fn Receivers
计mDat3e和5L在201701
STreams上的 Transformations(转换
STreams上的输出操作
Data frame和SQL操作
直接在文件上运行SQL在2017017更新·查
MLib操作
缓存/持久化
Check Pointing
通用的 Load/ Save函数在201701-17更新·查
看变动
累加器和广播变量
应用程序部署
NaN语义在2017-01-17更新·查看变动
监控应用程序
性能优化
数据类型在2017017更新,音看变动
降低批处理的时间
设置合理的批处理间隔
参考在201701-17更新·查看变动
内存优化
兼容 Apache Hive在017017更新·查看变
容错语义
迁移損南(从0.91或者更低版本至1.x版本)
快速跳转
从 Spark SQL1.0~12升级到13在2017-01-17
Kafka集成指南
更新·查看变动
Spark SQL概述SQ
· DataFrames, Datasets和sQL
从 Spark SQL1.3升级到14在2017-01-17更新
SQL
查看变动
Datasets和 Data frames
Spark SQL入门指南
从 Spark SQL14升级到1.5在2017-01-17更新
起始点: SparkSession
查看变动
创建 Dataframe
●无类型 Dataset操作( aka data frame
从 Spark SQL15升级到1.6在2017-01-17更新
查看变动
操作
●以编程的方式运行SQL查询
从 Spark SQL16升级到20在2017-01-17更新
创建 Dataset
查看变动
·RDD的互操作性
数据源
迁移指南在201701-17更新·查看变动
通用的Load/Save函数
Parquet文件
运行 Spark SQL C在2017-01-17更新·查看变
JSON Datasets
动
Hive表
JDBC连接其它数据库
故障排除
性能调优
缓存数据到內存
其它配置诜项
分布式SQL引擎
运行 Thrift jDBC/ ODBC server
运行 Spark SQL CLI
·迁移指南
从 Spark sQl1.6升级到20
从 Spark SQL1.5升级到1.6
从 Spark sQ_14升级到1.5
从 Spark SQl1.3升级到14
从 Spark SQL1.0-1.2升级到1.3
兼容 Apache Hive
参考
数据类型
NaN语义
Structured Streaming
MLib(机器学习)
ib基础
Extracting, transforming and selecting
features
· GraphX(图形处理)
Spark R
快速入门
使用 Spark Shel进行交互式分析
基础
●更多RDD上的操作
ApacheAN- Apache Spark20.2中文文档-v0.1.0-加入我们
ApacheAN- Apache Spark202中文文档-V0.1.0-加入我们
原文链接:http://spark.apacheorg/docs/latest/qui
独立的应用
k-start html
·快读跳转
译文链接http://www.apache.wiki/pages/viewpag
e action? paged=2883730
贡献者:漫步,那伊抹微笑
本教程提供了如何使用Spak的简要介绍。首先通过运行 Spark交互式的she!在 Python或Saa中)来介绍API,然后展示如
何使用Java, Scala和 Python来编写应用程序。更多信息请参考Spak编程指南。
为了继续阅读本指南,首先从 Spark官网下载 Spark的发行包。因为我们将不使用HDFS,所以你可以下载一个任何 Hadoop版本的软件包
使用 Spark She进行交互式分析
基础
Spark shel!提供了一种来学习该API比较简单的方式,以及一个来分析数据交互的强大的工具。在 Scala(运行于Java虚拟机之上,并能很
好的调用已存在的Java类库)或者 Python中它是可用的。通过在 Spark目录中运行以下的命令来启动它
Scala
/bin/spark-shell
Spark的主要抽象是一个称为弹性分布式数据集(RDD)的分布式的item集合。RDD可以从 Hadoop的 Input。 formats(例如HDFS文件)
或者通过其它RDD的转换来创建。让我们从源目录中的 README文件中的文本创健一个新的RDD:
Scala
scala> val textFile= sc textFile("READMe. md")
textFile: org. apache. spark rdd RDD L String]= READMe.md
MapPartitionsRDD[1] at textFile at <console>: 25
RDD有可以返回值的 actions(动作),还有可以返回指定的新RDD的 transformations(转换)。让我们启动一个新的 actions(动作)
Scala
scala> textFile. count(// RDd items
r∈s0:Lcng=126
scala> textFile. first()// RDD item
resl: String = Apache Spark
现在让我们使用一个 transformation(转换)。我们将使用 filter transaction(转换)来返回一个新的RDD(文件中tem的一个子集)
Scala
scala> val lineswi thspark textFile filter(line
line contains( Spark")
lineswithSpark: org. apache. spark rdd RDD[String]= MapPartitionsRDD[2]
t filter at <console>: 27
ApacheAN- Apache Spark20.2中文文档-v0.1.0-加入我们
ApacheAN- Apache Spark202中文文档-V0.1.0-加入我们
我们可以链式操作 transformation(转换)和 action(动作
Scala
scala> textFile. filter(line = line contains("Spark")).count()//How
many lines contain "Spark"?
res3: Lcng =15
更多RDD上的操作
RDD actions(操作)和 transformations(转换)可以用于更复杂的计算。例如,统计出现次数最多的单词
Scala
scala> textFile. map(line = line split( ).size). reduce((a, b)=>if(
b)a else b)
res 4: Lcng =15
第一个map操作创建一个新的RDD,将一行数据map为一个整型值。 reduce rdd找到最大的行计数。参数map与 reduce是 Python
的匿名函数( lambda表达式),但我们也可以诵过我们想要的任何顶级的 Python功能。例如,我们将定义一个max函数来使代码更易于理
解
m
Scala
scala> import java. lang Math
import java. lang Math
scala> textFile. map(line => line split (").size).reduce((a, b)=>
Math. max(a b))
res5: Int =15
一种常见的数据流模式是被 Hadoop所推广的 MapReduce。 Spark可以很容易实现 MapReduce
Scala
scala> val wordCounts textFile flatMap (line = line split(
)).map(word = (word, 1)). reduceByKey((a, b)=> a b)
wordCounts: org. apache. spark rdd RDD[ (String, Int)]= ShuffledrDd[] at
reduceByKey at <console>: 28
在这里,我们结合了 flatMap,map和 reduce ByKey transformations(转换)来计算文件中每一个单词的数量作为一个( string,int)的
RDD pairs(对)。对每个单词计数。为了在我们的shel中统计单词出现的次数,我们可以使用co1 lect action动作)
Scala
>> wordcounts collect(
[(u'and, 9),(u'A, 1),(u'webpage, 1),(u'READMe,1),(u'Note, 1),
(unocal,1)(u'variable 1)
ApacheAN- Apache Spark20.2中文文档-v0.1.0-加入我们
ApacheAN- Apache Spark202中文文档-V0.1.0-加入我们
缓存
spak还支持 Pulling(拉取)数据集到一个群集范围的内存缓存中。例如当查询一个小的"hot"数据集或运行一个像 PageRANK这样的迭
代算法时,在数据被車复访问时是非常高效的。举一个简单的例子,1 inesWithSpark
Scala
scala> lineswithSpark cache(
res: linesWithSpark type MapPartitionsRDD[2] at filter at
<console>: 27
scala> lineswithspark count()
res: Lcng =19
scala> lineswithSpark count ()
res: Lcng =19
使用 Spark来探索和缓存一个100行的文本文件看起来比较愚蠢。有趣的是,即使在他们跨越几十或者几百个节点时,这些相同的函数也可以
用于非常大的数据集。您也可以像编程拦南中描述的-样通过连接bi/ spark-she到集群中,使用交互式的方式来做这件事情。
独立的应用
假设我们希望使用 Spark api来创建一个独立的应用程序。我们在 Scala(SBT),Java( Maven)和 Python中练习一个简单应用程序。
我们将在Scaa中创建一个非常简单的 Spark应用程序-很简单的,事实上,它名为 SimpleApp.sca1a
Scala
/ SimpleApp scala *
iimport cry. apache. spark. SparkContext
import crg. apache. spark. SparkContext
iimport crg. apache. spark. SparkConf
object SimmpleApp
def main(args: Array[string])(
val logFile ="YOUR SPARK HOME/README. md"//Should be some file on
your system
val conf new SparkConf(). setAppName("Sinple Application")
val sc= new SoarkContext(conf)
val logData =sC textFile(logfile, 2) cache
val numAs =logData filter(line = line contains(a)).count ()
val numBs logData filter(line =>line contains(b")).count()
printIn(Lines with a: %S, Lines with b: %s"format(numAs/ numBs))
注意这个应用程序我们应该定义一个main0方法而不是去扩展sa1aapp。使用 scala. App的子类可能不会正常运行
该程序仅仅统计了 Spark REAdme文件中每一行包含‘a′的数量和包含“b′的数量。注意,您需要将YOUR_ SPARK HOME替换为您S
park安装的位置。不像先前使用 spark shell操作的示例,它们初始化了它们自己的 SparkContext,我们初始化了一个 SparkContext作为
应用程序的一部分。
我们传递给了 Spark Context构造器一个包含我们应用程序信息的 SparkConf对象
我们的应用依赖了 Spark API,所以我们将包含一个名为 simplesbt的sbt配置文件,它说明了 Spark是一个依赖。
该文件也添加了一个Spak依赖的仓库
ApacheAN- Apache Spark20.2中文文档-v0.1.0-加入我们
ApacheAN- Apache Spark202中文文档-V0.1.0-加入我们
name :="Simple Project
verslo
scalaversion :=2.11.7
libraryDependencies = org. apache. sparkoospark-corea2.0. 2
为了让sbt正常的运行,我们需要根据经典的目录结构来布局simp1eApp, scala和simp1e.sbt文件。在成功后,我们可以创建一个包含
应用程序代码的JAR包,然后使用 spark- submit脚本来运行我们的程序。
Your directory layout shculd look like this
s find
/simple. sbt
/sr
/src/main
/src/main/scala
/src/main/sca⊥a/Simp⊥eApp.sca⊥a
Package a jar containing your application
s sbt package
[info] Packaging (.)/f.)/target/scala-2 11/simple-project 211-1.0.jar
t Use spark-submit to run your application
S YOUR SPARK HOME/oin/spark-submit
class SimpleAop"\
- master⊥oca⊥[4」
target/scala-2. 11/simple-project 211-1.0.jar
Lines with a: 46, Lines with b: 23
快读跳转
恭喜您成功的运行了您的第一个Spak应用程序
更多A門I的深入概述,从spak编程指南开始,或查阅“编程指南”菜单下的其它组件
为了在集群上运行应用程序,前往集群模式概述。
最后,在 examples目录( Scala,Java, Python,R)中 Spark包括了一些。您可以按照如下方式来运行它们:
Scala Java, run-example
/bin/run-example SparkPi
Python r spark-submit:
/bin/spark-submit examples/src/main/python/pi. py
R spark-submit:
/bin/spark-submit examples/src/main/r/cataframe R
ApacheAN- Apache Spark20.2中文文档-v0.1.0-加入我们
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论