- 内容提要
- 序
- 前言
- 第一部分 背景知识
- 第 1 章 Spring Data 项目
- 第 2 章 Repository:便利的数据访问层
- 第 3 章 使用 Querydsl 实现类型安全的查询
- 第二部分 关系型数据库
- 第 4 章 JPA Repository
- 第 5 章 借助 Querydsl SQL 实现类型安全的 JDBC 编程
- 第三部分 NoSQL
- 第 6 章 MongoDB: 文档存储
- 第 7 章 Neo4j:图数据库
- 第 8 章 Redis:键/值存储
- 第四部分 快速应用开发
- 第 9 章 使用 Spring Roo 实现持久层
- 第 10 章 REST Repository 导出器
- 第五部分 大数据
- 第 11 章 Spring for Apache Hadoop
- 第 12 章 使用 Hadoop 分析数据
- 第 13 章 使用 Spring Batch 和 Spring Integration 创建大数据管道
- 第六部分 数据网格
- 第 14 章 分布式数据网格:GemFire
- 关于封面
第 11 章 Spring for Apache Hadoop
Apache Hadoop( http://hadoop.apache.org/ )是一个开源项目,该项目起源于雅虎研发的一个新型网络搜索引擎的核心组件。Hadoop 的架构是在谷歌开发的闭源网络搜索引擎架构基础上构建的,可以在 http://research.google.com/archive/gfs.html 以及 http://research.google.com/archive/mapreduce.html 这两个研究刊物链接中找到相关描述。Hadoop 架构由两个主要的部分组成:一个分布式文件系统以及一个在大型的商业服务器集群上运行的分布式数据处理引擎。Hadoop 分布式文件系统(Hadoop Distributed File System,HDFS)负责存储和复制数据,以维持跨集群的数据访问的可靠性。Hadoop MapReduce 负责提供编程模型,并且在数据存储位置附近执行计算使得运行时间得到优化。代码和数据托管在同一个物理节点是最大限度缩短处理大(高达 PB 级)数据所需时间的核心技术之一。
虽然 Apache Hadoop 原本的目的是实现网页搜索引擎,但它却是一个通用的平台,可以用于针对海量数据的各种处理任务。由于它结合了开源软件、廉价的商业服务器,以及对大量新的非结构化数据来源(例如,推特、日志文件、遥测)进行分析所带来的切实利益,这三者结合,促使 Hadoop 成为企业寻求实现大数据解决方案的事实标准。
本章从介绍 Hadoop 的“Hello world”应用程序 wordcount 开始。wordcount 应用程序使用 Hadoop MapReduce API 编写。它会读取文本文件作为输入并创建一个输出文件记录所读取的每一个单词出现的次数。首先介绍 Hadoop 应用程序的传统开发方式并使用命令行工具来执行,接着说明如何将这个应用程序开发为标准的 Java 应用程序并使用依赖注入来进行配置。我们使用 Spring for Apache Hadoop 的 HDFS 提供的脚本功能,将输入的文件复制到 HDFS 之中并从 HDFS 中输出结果文件。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论