包邮 实时流计算系统设计与实现+Storm分布式实时计算模式(|8067345pdf下载

包邮 实时流计算系统设计与实现+Storm分布式实时计算模式(|8067345百度网盘pdf下载

作者:
简介:包邮 实时流计算系统设计与实现+Storm分布式实时计算模式(|8067345
出版社:
出版时间:
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

 书名:  [套装书]实时流计算系统设计与实现+Storm分布式实时计算模式(2册)|8067345
 图书定价: 138元
 图书作者: 周爽(美)Brian O Neill; Peter Taylor Goetz
 出版社:  机械工业出版社
 出版日期:  2020/1/8 0:00:00
 ISBN号: 9782002289470
 开本: 16开
 页数: 490
 版次: 1-1
 作者简介



---------------------------Storm分布式实时计算模式---------------------------


P. Taylor Goetz是Apache Storm项目核心贡献者以及发布经理,自2011年10月Storm项目首次开源至今都参与其中,具有长期的Storm使用和开发经验。作为Storm用户社区中的活跃贡献者,Taylor领导了一系列开源项目,旨在使企业能够将Storm集成到不同的基础设施上。
目前,他在Hortonworks公司工作,主导将Storm集成到Hortonworks的数据平台中(HDP)。在加入Hortonworks公司之前,他就职于Health Market Science公司,主导了Storm与HMS公司的下一代主数据管理平台(Maste Data Management platform)的集成工作,涉及Cassandra数据库、Kafka队列、Elastic搜索引擎以及Titan图形数据库等技术。
非常感谢我的妻子、孩子、家人和朋友们,有了你们的爱、支持以及包容和牺牲,才有了这本书。感激不尽。
Brian O’Neill是一个丈夫、黑客、徒步旅行家、皮划艇爱好者。他还是渔夫、父亲,也是大数据的信徒、开拓者以及分布式计算的梦想家。
他已经担任技术主管超过15年,被公认为大数据领域的权威。他作为系统架构师,有着应对各种不同场景的经验,从初创公司到财富五百强公司。他信奉开源精神,对多个项目做出了贡献。他领导的项目,扩展了Cassandra数据库,并且将索引引擎,分布式处理框架,分析引擎集成到了该数据库中。他荣获了2013年InfoWorld的技术领导力奖项。他撰写了关于Cassandra的Dzone参考文档,被选为2012和2013年Datastax Cassandra MVP。
在过去,他作为专家组成员对Java社区化进程(JCP)做出了贡献,发表过人工智能和上下文发现领域的专利。他对获取了美国布朗大学的计算机科学学士学位引以为荣。
目前,Brian就职于Health Market Science(HMS)公司,任首席技术官,开发的大数据分析平台聚焦于数据管理和医疗领域数据分析。平台主要由Storm和Cassandra构成,提供了实时数据管理和分析服务。
致我的家人。我的妻子丽莎,我们一起将信仰放飞,它带领我们飞抵云端。孩子们使我们扎根大地,先人们为我们奠定基石,我们的家人成就了我所有的成就。没有你们,这本书永远不可能面世。
 内容简介



---------------------------实时流计算系统设计与实现---------------------------


全书分为11章。第1章介绍了实时流计算技术的产生背景、使用场景和通用架构。第2章通过实时流计算数据的采集,详细分析了Java高性能编程的理论基础。第3-6章通过从头构造一个分布式实时流计算框架,详细剖析了实时流计算中的几个核心概念和技术重点,并通过多个开源流计算平台的实现来验证这些核心概念和技术重点。第7章谈论了当实在做不到“实时”时,我们应该作出的备选方案。第8-10章阐述了构建一个完整实时流计算系统时,必要的周边辅助系统。第11章给出实时流计算应用案例。


---------------------------Storm分布式实时计算模式---------------------------


本书由Apache Storm项目核心贡献者亲笔撰写,融合了作者丰富的Storm实战经验,通过大量示例,全面而系统地讲解使用Storm进行分布式实时计算的核心概念及应用,并针对不同的应用场景,给出多种基于Storm的设计模式,为读者快速掌握Storm分布式实时计算提供系统实践指南。

全书分为10章:第1章介绍使用Storm建立一个分布式流式计算应用所涉及的核心概念,包括Storm的数据结构、开发环境的搭建,以及Storm程序的开发和调试技术等;第2章详细讲解Storm集群环境的安装和搭建,以及如何将topology部署到分布式环境中;第3章通过传感器数据实例详细介绍Trident topology;第4章讲解如何使用Storm和Trident进行实时趋势分析;第5章介绍如何使用storm进行图形分析,将数据持久化存储在图形数据库中,通过查询数据来发现其中潜在的联系;第6章讲解如何在Storm上使用递归实现一个典型的人工智能算法;第7章演示集成Storm和非事务型系统的复杂性,通过集成Storm和开源探索性分析架构 Druid实现一个可配置的实时系统来分析金融事件。第8章探讨Lambda体系结构的实现方法,讲解如何将批处理机制和实时处理引擎结合起来构建一个可纠错的分析系统;第9章讲解如何将Pig脚本转化为topology,并且使用Storm-YARN部署topology,从而将批处理系统转化为实时系统;第lo章介绍如何在云服务提供商提供的主机环境下部署和运行Storm。
 目录




---------------------------实时流计算系统设计与实现---------------------------


前言
第1章 实时流计算 …… 1
1.1 大数据时代的新挑战:实时流计算 …… 1
1.2 实时流计算使用场景 …… 2
1.3 实时流数据的特点 …… 4
1.4 实时流计算系统架构 …… 6
1.4.1 数据采集 …… 6
1.4.2 数据传输 …… 7
1.4.3 数据处理 …… 8
1.4.4 数据存储 …… 8
1.4.5 数据展示 …… 9
1.5 本章小结 …… 10
第2章 数据采集 …… 11
2.1 设计数据采集的接口 …… 11
2.2 使用Spring Boot实现数据采集服务器 …… 12
2.3 BIO与NIO …… 14
2.3.1 BIO连接器 …… 14
2.3.2 NIO连接器 …… 17
2.4 NIO和异步 …… 19
2.4.1  CPU密集型任务 …… 19
2.4.2 I/O密集型任务 …… 20
2.4.3 I/O和CPU都密集型任务 …… 21
2.4.4 纤程 …… 22
2.4.5 Actor …… 24
2.4.6 NIO配合异步编程 …… 25
2.5  使用Netty实现数据采集服务器 …… 26
2.5.1 使用Netty实现数据采集API …… 27
2.5.2 异步编程 …… 29
2.5.3 流量控制和反向压力 …… 31
2.5.4 实现反向压力 …… 32
2.5.5 异步的不足之处 …… 36
2.6 本章小结 …… 36
第3章 实现单节点流计算应用 …… 38
3.1 自己动手写实时流计算框架 …… 38
3.1.1 用DAG描述流计算过程 …… 38
3.1.2 造一个流计算框架的轮子 …… 39
3.1.3 实现特征提取DAG节点 …… 42
3.1.4 实现特征提取DAG拓扑 …… 45
3.2 CompletableFuture方法与原理 …… 46
3.2.1 常用的CompletableFuture类方法 …… 47
3.2.2 CompletableFuture的工作原理 …… 49
3.3 采用CompletableFuture实现单节点流处理 …… 51
3.3.1 基于CompletableFuture实现流计算应用 …… 51
3.3.2 反向压力 …… 53
3.3.3 死锁 …… 54
3.3.4 再论流与异步的关系 …… 55
3.4 流计算应用的性能调优 …… 56
3.4.1 优化机制 …… 56
3.4.2 优化工具 …… 56
3.4.3 线程状态 …… 62
3.4.4 优化方向 …… 66
3.5 本章小结 …… 67
第4章 数据处理 …… 68
4.1 流计算到底在计算什么 …… 68
4.2 流数据操作 …… 70
4.2.1 过滤 …… 70
4.2.2 映射 …… 70
4.2.3 展开映射 …… 71
4.2.4 聚合 …… 72
4.2.5 关联 …… 73
4.2.6 分组 …… 75
4.2.7 遍历 …… 75
4.3 时间维度聚合特征计算 …… 76
4.4 关联图谱特征计算 …… 78
4.4.1 一度关联 …… 79
4.4.2 二度关联 …… 81
4.5 事件序列分析 …… 85
4.5.1 CEP编程模式 …… 86
4.5.2 Flink CEP实例 …… 87
4.6 模型学习和预测 …… 89
4.6.1 统计学习模型 …… 90
4.6.2 P-value检验 …… 90
4.6.3 机器学习模型 …… 91
4.7 本章小结 …… 93
第5章 实时流计算的状态管理 …… 94
5.1 流的状态 …… 94
5.1.1 流数据状态 …… 96
5.1.2 流信息状态 …… 97
5.2 采用Redis实现流信息状态管理 …… 98
5.2.1 时间维度聚合特征计算 …… 98
5.2.2 一度关联特征计算 …… 99
5.3 采用Apache Ignite实现流信息状态管理 …… 100
5.3.1 时间维度聚合分析 …… 101
5.3.2 一度关联特征计算 …… 103
5.4 扩展为集群 …… 105
5.4.1 基于Redis的状态集群 …… 106
5.4.2 局部性原理 …… 106
5.4.3 批次请求处理 …… 108
5.4.4 基于Apache Ignite的状态集群 …… 109
5.4.5 基于分布式文件系统的状态管理集群 …… 109
5.5 本章小结 …… 110
第6章 开源流计算框架 …… 111
6.1 Apache Storm …… 112
6.1.1 系统架构 …… 112
6.1.2 流的描述 …… 113
6.1.3 流的执行 …… 113
6.1.4 流的状态 …… 116
6.1.5 消息传达可靠性保证 …… 116
6.2 Spark Streaming …… 117
6.2.1 系统架构 …… 117
6.2.2 流的描述 …… 117
6.2.3 流的执行 …… 118
6.2.4 流的状态 …… 119
6.2.5 消息传达可靠性保证 …… 120
6.3 Apache Samza …… 120
6.3.1 系统架构 …… 120
6.3.2 流的描述 …… 121
6.3.3 流的执行 …… 123
6.3.4 流的状态 …… 126
6.3.5 消息传达可靠性保证 …… 126
6.4 Apache Flink …… 127
6.4.1 系统架构 …… 127
6.4.2 流的描述 …… 128
6.4.3 流的执行 …… 128
6.4.4 流的状态 …… 130
6.4.5 消息传达可靠性 …… 131
6.5 本章小结 …… 132
第7章 当做不到实时 …… 133
7.1 做不到实时的原因 …… 133
7.2 Lambda架构 …… 134
7.2.1 数据系统和Lambda架构思想 …… 135
7.2.2 Lambda架构 …… 135
7.2.3 Lambda架构在实时流计算中的运用 …… 137
7.3 Kappa架构与架构实例 …… 138
7.3.1 Kappa架构 …… 138
7.3.2 Kappa架构实例 …… 140
7.4 本章小结 …… 143
第8章 数据传输 …… 144
8.1 消息中间件 …… 144
8.1.1 为什么使用消息中间件 …… 145
8.1.2 消息中间件的工作模式 …… 146
8.1.3 消息模式 …… 147
8.1.4 使用消息中间件的注意事项 …… 149
8.2 Apache Kafka …… 150
8.2.1 Kafka架构 …… 150
8.2.2 Kafka生产者 …… 152
8.2.3 Kafka消费者 …… 154
8.2.4 将Kafka用于数据总线 …… 156
8.3 RabbitMQ …… 157
8.3.1 RabbitMQ架构 …… 157
8.3.2 RabbitMQ的使用 …… 158
8.3.3 将RabbitMQ用于配置总线 …… 160
8.4 Apache Camel …… 161
8.4.1 使用Apache Camel集成系统 …… 162
8.4.2 使用Apache Camel管理流数据路由 …… 163
8.5 本章小结 …… 166
第9章 数据存储 …… 167
9.1 存储的设计原则 …… 167
9.2 点查询 …… 169
9.2.1 数据灵活性 …… 170
9.2.2 MongoDB数据库 …… 171
9.2.3 数据过期和按时间分表 …… 172
9.3 Ad-Hoc查询 …… 174
9.3.1 倒排索引 …… 175
9.3.2 ElasticSearch …… 176
9.3.3 分索引存储 …… 177
9.4 离线分析 …… 178
9.4.1 存储 …… 179
9.4.2 处理和分析 …… 182
9.4.3 调度 …… 183
9.5 关系型数据库查询 …… 185
9.6 本章小结 …… 186
第10章 服务治理和配置管理 …… 188
10.1 服务治理 …… 188
10.1.1 流服务和微服务 …… 188
10.1.2 微服务框架Spring Cloud …… 190
10.2 面向配置编程 …… 195
10.2.1 面向配置编程思想 …… 195
10.2.2 更高级的配置:领域特定语言 …… 196
10.3 动态配置 …… 196
10.4 将前端配置与后端服务配置隔离开 …… 201
10.5 本章小结 …… 202
第11章 实时流计算应用案例 …… 204
11.1 实时流数据特征提取引擎 …… 204
11.1.1 流数据特征提取引擎DSL定义 …… 204
11.1.2 实现原理 …… 208
11.1.3 具体实现 …… 210
11.2 使用Flink实现风控引擎 …… 216
11.2.1 实现原理 …… 217
11.2.2 具体实现 …… 218
11.3 本章小结 …… 225



------...
 编辑推荐



---------------------------实时流计算系统设计与实现---------------------------


透过现象看本质,掌握高性能、高并发、实时系统设计与权衡之道
高度抽象出实时流计算系统的技术支撑、架构模式、编程模式、系统实现与协同系统,并从零编写一个分布式实时流计算系统