万本电子书0元读

万本电子书0元读

顶部广告

Hadoop应用架构电子书

售       价:¥

纸质售价:¥51.70购买纸书

121人正在读 | 2人评论 6.2

作       者:马克·格洛沃(MarkGrover)

出  版  社:人民邮电出版社

出版时间:2017-01-01

字       数:29.8万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(2条)
  • 读书简介
  • 目录
  • 累计评论(2条)
本书就使用Apache Hadoop端到端数据管理方案提供专业架构指导。其他书籍大多针对Hadoop生态系统中的软件,讲解较为单一的使用方法,而本书偏重实践,在架构的高度详细阐释诸多工具如何相互配合,搭建出磨之后的完整应用。书中提供了诸多案例,易于理解,配有详细的代码解析,知识一目了然。   为加强训练,本书后半部分提供了详细的案例,涵盖*为常见的Hadoop应用架构。无论是设计Hadoop应用,还是将Hadoop同现有数据基础架构集成,本书都可以提供详实的参考。<br/>【推荐语】<br/>使用Hadoop行数据存储和建模的着眼和思路 将数据输、输出系统的*方案 MapReduce、Spark和Hive等数据处理框架介绍 数据去重、窗口分析等常见Hadoop处理模式应用 在Hadoop上采用Giraph、GraphX等图形处理工具 综合使用工作流以及Apache Oozie等调度工具 以Apache Oozie、Apache Spark Streaming和Apache Flume行近实时流处理 流分析、欺诈检验和数据仓库的架构案例   Hadoop之父Doug Cutting作序推荐。 “对Hadoop有所了解”与“能够使用Hadoop形成实际解决方案”之间的一座桥梁!<br/>【作者】<br/>Mark Grover Apache Sentry项目管理委员会成员,《Hive编程指南》作者之一,曾参与Apache Hadoop、Apache Hive、Apache Sqoop以及Apache Flume等项目,并为Apache Bigtop项目和Apache Sentry(项目孵化中)项目贡献代码。   Ted Malaska Cloudera公司的资深解决方案架构师,致力于帮助客户更好地掌握Hadoop及其生态系统。曾任美国金融业监管局(FINRA,Financial Industry Regulatory Authority)首席架构师,指导建设了包括网络应用、服务型架构以及大数据应用在内的大量解决方案。曾为Apache Flume、Apache Avro、YARN以及Apache Pig等项目贡献代码。   Jonathan Seidman Cloudera公司的解决方案架构师,协助合作伙伴将的解决方案集成到Cloudera的软件栈中。芝加哥Hadoop用户组(Chicago Hadoop User Group)及芝加哥大数据(Chicago Big Data)的联合创始人、《Hadoop实战》技术编辑。曾任Orbiz Worldwide公司大数据团队技术主管,为为繁忙的站管理了承载海量数据的Hadoop集群。也曾多次在Hadoop及大数据专业会议上发言。   Gwen Shapira Cloudera公司的解决方案架构师,知名博主,拥有15年从业经验,协助客户设计高扩展性的数据架构。曾任Pythian高级顾问、Oracle ACE主管以及NoCOUG董事会成员,活跃于诸多业内会议。<br/>
目录展开

版权声明

O'Reilly Media, Inc. 介绍

业界评论

译者序

关于本书

致谢

前言

示例代码

目标读者

写作目的

本书结构

排版约定

使用代码示例

Safari® Books Online

联系我们

致谢

Mark Grover的致谢

Ted Malaska的致谢

Jonathan Seidman的致谢

Gwen Shapira的致谢

第一部分 考虑 Hadoop 应用的架构设计

第 1 章 Hadoop 数据建模

1.1 数据存储选型

1.1.1 标准文件格式

1.1.2 Hadoop文件类型

1.1.3 序列化存储格式

1.1.4 列式存储格式

1.1.5 压缩

1.2 HDFS模式设计

1.2.1 文件在HDFS中的位置

1.2.2 高级HDFS模式设计

1.2.3 HDFS模式设计总结

1.3 HBase模式设计

1.3.1 行键

1.3.2 时间戳

1.3.3 hop

1.3.4 表和Region

1.3.5 使用列

1.3.6 列簇

1.3.7 TTL

1.4 元数据管理

1.4.1 什么是元数据

1.4.2 为什么元数据至关重要

1.4.3 元数据的存储位置

1.4.4 元数据管理举例

1.4.5 Hive metastore与HCatalog的局限性

1.4.6 其他存储元数据的方式

1.5 结论

第 2 章 Hadoop 数据移动

2.1 数据采集考量

2.1.1 数据采集的时效性

2.1.2 增量更新

2.1.3 访问模式

2.1.4 数据源系统及数据结构

2.1.5 变换

2.1.6 网络瓶颈

2.1.7 网络安全性

2.1.8 被动推送与主动请求

2.1.9 错误处理

2.1.10 复杂度

2.2 数据采集选择

2.2.1 文件传输

2.2.2 文件传输与其他采集方法的考量

2.2.3 Sqoop:Hadoop与关系数据库的批量传输

2.2.4 Flume:基于事件的数据收集及处理

2.2.5 Kafka

2.3 数据导出

2.4 小结

第 3 章 Hadoop 数据处理

3.1 MapReduce

3.1.1 MapReduce概述

3.1.2 MapReduce示例

3.1.3 MapReduce使用场景

3.2 Spark

3.2.1 Spark概述

3.2.2 Spark组件概述

3.2.3 Spark基本概念

3.2.4 Spark的优点

3.2.5 Spark示例

3.2.6 Spark使用场景

3.3 抽象层

3.3.1 Pig

3.3.2 Pig示例

3.3.3 Pig使用场景

3.4 Crunch

3.4.1 Crunch示例

3.4.2 Crunch使用场景

3.5 Cascading

3.5.1 Cascading示例

3.5.2 Cascading使用场景

3.6 Hive

3.6.1 Hive概述

3.6.2 Hive示例

3.6.3 Hive使用场景

3.7 Impala

3.7.1 Impala概述

3.7.2 面向高速查询的设计

3.7.3 Impala示例

3.7.4 Impala使用场景

3.8 小结

第 4 章 Hadoop 数据处理通用范式

4.1 模式一:依主键移除重复记录

4.1.1 去重示例的测试数据生成

4.1.2 代码示例:使用Scala实现Spark去重

4.1.3 代码示例:使用SQL实现去重

4.2 模式二:数据开窗分析

4.2.1 生成开窗分析的示例数据

4.2.2 代码示例:使用Spark分析数据的高峰和低谷

4.2.3 代码示例:使用SQL分析数据的高峰和低谷

4.3 模式三:基于时间序列的更新

4.3.1 利用HBase的版本特性

4.3.2 以记录主键与开始时间作HBase的行键

4.3.3 重写HDFS数据更新整个表

4.3.4 利用HDFS上的分区存储当前记录和历史记录

4.3.5 生成时间序列的示例数据

4.3.6 代码示例:使用Spark更新时间序列数据

4.3.7 代码示例:使用SQL更新时间序列数据

4.4 小结

第 5 章 Hadoop 图处理

5.1 什么是图

5.2 什么是图处理

5.3 分布式系统中的图处理

5.3.1 块同步并行模型

5.3.2 BSP举例

5.4 Giraph

5.4.1 数据的输入和分片

5.4.2 使用BSP批处理图

5.4.3 将图回写磁盘

5.4.4 整体流程控制

5.4.5 何时选用Giraph

5.5 GraphX

5.5.1 另一种RDD

5.5.2 GraphX的Pregel接口

5.5.3 vprog()

5.5.4 sendMessage()

5.5.5 mergeMessage()

5.6 工具选择

5.7 小结

第 6 章 协调调度

6.1 工作流协调调度的必要性

6.2 脚本的局限性

6.3 企业级任务调度器及Hadoop

6.4 Hadoop生态系统中的工作流框架

6.5 Oozie术语

6.6 Oozie概述

6.7 Oozie工作流

6.8 工作流范式

6.8.1 点对点式工作流

6.8.2 扇出式工作流

6.8.3 分支决策式工作流

6.9 工作流参数化

6.10 Classpath定义

6.11 调度模式

6.11.1 依频次调度

6.11.2 时间或数据触发式

6.12 执行工作流

6.13 小结

第 7 章 Hadoop 近实时处理

7.1 流处理

7.2 Apache Storm

7.2.1 Storm高级架构

7.2.2 Storm拓扑

7.2.3 元组及数据流

7.2.4 spout和bolt

7.2.5 数据流分组

7.2.6 Storm应用的可靠性

7.2.7 仅处理一次机制

7.2.8 容错性

7.2.9 Storm与HDFS集成

7.2.10 Storm与HBase集成

7.2.11 Storm示例:简单移动平均

7.2.12 Storm评估

7.3 Trident接口

7.3.1 Trident示例:简单移动平均

7.3.2 Trident评估

7.4 Spark Streaming

7.4.1 Spark Streaming概述

7.4.2 Spark Streaming示例:简单求和

7.4.3 Spark Streaming示例:多路输入

7.4.4 Spark Streaming示例:状态维护

7.4.5 Spark Streaming示例:窗口函数

7.4.6 Spark Streaming示例:Streaming与ETL代码比较

7.4.7 Spark Streaming评估

7.5 Flume拦截器

7.6 工具选择

7.6.1 低延迟的数据扩充、验证、报警及采集

7.6.2 NRT技术、滚动平均及迭代处理

7.6.3 复杂数据流

7.7 小结

第二部分 案例研究

第 8 章 点击流分析

8.1 用例场景定义

8.2 使用Hadoop进行点击流分析

8.3 设计概述

8.4 数据存储

8.5 数据采集

8.5.1 客户端层

8.5.2 收集器层

8.6 数据处理

8.6.1 数据去重

8.6.2 会话生成

8.7 数据分析

8.8 协调调度

8.9 小结

第 9 章 欺诈检测

9.1 持续改善

9.2 开始行动

9.3 欺诈检测系统架构需求

9.4 用例介绍

9.5 架构设计

9.6 客户端架构

9.7 画像存储及访问

9.7.1 缓存

9.7.2 HBase数据定义

9.7.3 事务状态更新:通过或否决

9.8 数据采集

客户端与Flume间的数据通路

9.9 近实时处理与探索性分析

9.10 近实时处理

9.11 探索性分析

9.12 其他架构对比

9.12.1 Flume拦截器

9.12.2 从Kafka到Storm或Spark Streaming

9.12.3 扩展的业务规则引擎

9.13 小结

第 10 章 数据仓库

10.1 使用Hadoop构建数据仓库

10.2 用例场景定义

10.3 OLTP模式

10.4 数据仓库:术语介绍

10.5 数据仓库的Hadoop实践

10.6 架构设计

10.6.1 数据建模及存储

10.6.2 数据采集

10.6.3 数据处理及访问

10.6.4 数据聚合

10.6.5 数据导出

10.6.6 流程调度

10.7 小结

附录 A Impala 中的关联

A.1 广播式关联

A.2 分区后散列关联

作者简介

封面介绍

看完了

累计评论(2条) 2个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部