- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
目 录
第 1 部分
第 2 部分
第 3 部分
本文档使用 看云 构建 - 2 -
第 1 部分
第 1 部分
原文出处 :https///developerworks/cn/opensource/os-cn-spark-
practice1/
作者 :王 龙, 软件开发工程师, IBM
使用 Scala 语言开发 Spark 应用程序
本文旨在通过具有实际意义的案例向读者介绍如何使用 Scala 语言开发 Spark 应用程序并在
Spark 集群上运行。本文涉及的所有源数据都将从 HDFS (Hadoop Distributed File
System )读取 ,部分案例的输出结果也会写入到 HDFS, 所以通过阅读本文 ,读者也会学习
到 Spark 和 HDFS 交互的一些知识。
引言
关于 Spark
关于 Scala
搭建开发环境
运行环境介绍
案例分析与编程实现
案例一
案例二
案例三
案例四
Spark job 的执行流程简介
结束语
参考资料
引言
在当前这个信息时代里 ,大数据所蕴含的价值已经被绝大多数的企业所认知。在 IT 的世界
里 ,往往都是需求驱动技术的发展和革新。Hadoop 在这个大背景下应运而生 ,它给我们提
供了一个存储和处理大数据的良好的解决方案 ,短短的几年时间里 ,它已无处不在 ,事实上
它已经成了大数据技术的代名词。然而在人们越来越多的使用 Hadoop 提供的 MapReduce
框架处理大数据的时候 ,却发现它存在许多天生的缺陷, 如效率低 ,编程模型不够灵活 ,只适
合做离线计算等。Spark 的出现无疑让诸多大数据计算的从业者和爱好者眼前一亮 ,它基于
本文档使用 看云 构建 - 3 -
第 1 部分
内存 ,并且提供了更加丰富的算子使得我们可以更高效和灵活的处理大数据。本文将从实例
出发 ,向读者介绍如何使用 Scala 语言 (Spark 框架的开发语言) 开发 Spark 应用程序并且将
其运行在 Spark 集群环境里。本文假设读者已经对 Spark 基本原理和编程模型有了基本的了
解 ,并且已经掌握了 Scala 语言开发的基础知识 ,那么通过阅读本文 ,相信您一定会对
Spark 应用程序的开发有更深入的认识。接下来 ,就让我们开始 Spark 应用程序的开发之旅
吧。
关于 Spark
Spark 由加州大学伯克利分校 AMP 实验室 (Algorithms, Machines, and People Lab) 开
发 ,可用来构建大型的、低延迟的大数据处理的应用程序。并且提供了用于机器学习
(MLlib), 流计算 (Streaming ), 图计算 (GraphX) 等子模块 ,最新的 1.4.0 版本更是提供了
与 R 语言的集成 ,这使得 Spark 几乎成为了多领域通吃的全能技术。Spark 对数据的存储 ,
转换 ,以及计算都是基于一个叫 RDD(Resilient Distributed Dataset) 分布式内存的抽象 ,
应用程序对需要计算的数据的操作都是通过对 RDD 的一系列转化 (Transformation) 和动作
(Action) 算子完成的 ,其中转化算子可以把一个 RDD 转成另一个 RDD ,如 filter 算子可以
通过添加过滤条件生成一个只包含符合条件的数据的新的 RDD。动作算子负责完成最终的计
算 ,如 count 算子可以计算出整个 RDD 表示的数据集中元素的个数。关于 Spark 所支持的
算子 以及使用方法请参考 Spark 官方网站。本文所使用的 Spark 的发行版是 1.3.1 ,读者可
根据需要下载相应的版本。
关于 Scala
Scala 语言是一门类 Java 的多范式语言 ,其设计初衷就是为了继承函数式编程的面向对象编
程的各种特性 ,正如 Scala 语言官网 描述的那样 Object-Oriented Meets Functional, 就是
给出了一个关于 Scala 语言特性的最简单明了的概括。
Spar
文档评论(0)