当前位置:首页 > 工业技术
离线和实时大数据开发实战
离线和实时大数据开发实战

离线和实时大数据开发实战PDF电子书下载

工业技术

  • 电子书积分:10 积分如何计算积分?
  • 作 者:朱松岭著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2018
  • ISBN:9787111596783
  • 页数:224 页
图书介绍:本书分为三篇。第一篇:从整体上给出数据大图和数据平台大图,主要介绍数据的主要流程、各个流程的关键技术、数据的主要从业者及他们的职责等;数据平台大图分离线和实时分别给出数据平台架构、关键数据概念和技术等;第二篇:介绍离线数据开发的主要技术,包含Hadoop、Hive、维度建模等,另外此部分还将综合上述各种离线技术给出离线数据处理实战;第三篇:集中介绍实时数据处理的各项技术,包含Storm、Spark Steaming、Flink、Beam等。
《离线和实时大数据开发实战》目录

第一篇 数据大图和数据平台大图 2

第1章 数据大图 2

1.1数据流程 2

1.1.1数据产生 3

1.1.2数据采集和传输 5

1.1.3数据存储处理 6

1.1.4数据应用 7

1.2数据技术 8

1.2.1数据采集传输主要技术 9

1.2.2数据处理主要技术 10

1.2.3数据存储主要技术 12

1.2.4数据应用主要技术 13

1.3数据相关从业者和角色 14

1.3.1数据平台开发、运维工程师 14

1.3.2数据开发、运维工程师 15

1.3.3数据分析工程师 15

1.3.4算法工程师 16

1.3.5业务人员 16

1.4本章小结 17

第2章 数据平台大图 18

2.1离线数据平台的架构、技术和设计 19

2.1.1离线数据平台的整体架构 19

2.1.2数据仓库技术 20

2.1.3数据仓库建模技术 23

2.1.4数据仓库逻辑架构设计 26

2.2实时数据平台的架构、技术和设计 27

2.2.1实时数据平台的整体架构 28

2.2.2流计算技术 29

2.2.3主要流计算开源框架 29

2.3数据管理 32

2.3.1数据探查 32

2.3.2数据集成 33

2.3.3数据质量 33

2.3.4数据屏蔽 34

2.4本章小结 35

第二篇 离线数据开发:大数据开发的主战场 38

第3章 Hadoop原理实践 38

3.1开启大数据时代的Hadoop 38

3.2 HDFS和MapReduce优缺点分析 40

3.2.1 HDFS 41

3.2.2 MapReduce 42

3.3 HDFS和MapReduce基本架构 43

3.4 MapReduce内部原理实践 46

3.4.1 MapReduce逻辑开发 46

3.4.2 MapReduce任务提交详解 47

3.4.3 MapReduce内部执行原理详解 48

3.5本章小结 52

第4章 Hive原理实践 53

4.1离线大数据处理的主要技术:Hive 53

4.1.1 Hive出现背景 53

4.1.2 Hive基本架构 55

4.2 Hive SQL 56

4.2.1 Hive关键概念 57

4.2.2 Hive数据库 59

4.2.3 Hive表DDL 60

4.2.4 Hive表DML 63

4.3 Hive SQL执行原理图解 65

4.3.1 select语句执行图解 66

4.3.2 group by语句执行图解 67

4.3.3 join语句执行图解 69

4.4 Hive函数 73

4.5其他SQL on Hadoop技术 74

4.6本章小结 76

第5章 Hive优化实践 77

5.1离线数据处理的主要挑战:数据倾斜 77

5.2 Hive优化 79

5.3 join无关的优化 79

5.3.1 group by引起的倾斜优化 79

5.3.2 count distinct优化 80

5.4大表join小表优化 80

5.5大表join大表优化 82

5.5.1问题场景 82

5.5.2方案1:转化为mapjoin 83

5.5.3方案2: join时用case when语句 84

5.5.4方案3:倍数B表,再取模join 84

5.5.5方案4:动态一分为二 87

5.6本章小结 89

第6章 维度建模技术实践 90

6.1大数据建模的主要技术:维度建模 90

6.1.1维度建模关键概念 91

6.1.2维度建模一般过程 95

6.2维度表设计 96

6.2.1维度变化 96

6.2.2维度层次 99

6.2.3维度一致性 100

6.2.4维度整合和拆分 101

6.2.5维度其他 102

6.3深入事实表 104

6.3.1事务事实表 104

6.3.2快照事实表 106

6.3.3累计快照事实表 107

6.3.4无事实的事实表 108

6.3.5汇总的事实表 108

6.4大数据的维度建模实践 109

6.4.1事实表 109

6.4.2维度表 110

6.5本章小结 110

第7章 Hadoop数据仓库开发实战 111

7.1业务需求 112

7.2 Hadoop数据仓库架构设计 113

7.3 Hadoop数据仓库规范设计 114

7.3.1命名规范 115

7.3.2开发规范 115

7.3.3流程规范 116

7.4 FutureRetailer数据仓库构建实践 118

7.4.1商品维度表 118

7.4.2销售事实表 120

7.5数据平台新架构——数据湖 121

7.6本章小结 123

第三篇 实时数据开发:大数据开发的未来 127

第8章 Storm流计算开发 127

8.1流计算技术的鼻祖:Storm技术 128

8.1.1 Storm基本架构 129

8.1.2 Storm关键概念 130

8.1.3 Storm并发 132

8.1.4 Storm核心类和接口 133

8.2 Storm实时开发示例 133

8.2.1语句生成spout 134

8.2.2语句分割bolt 135

8.2.3单词计数bolt 136

8.2.4上报bolt 136

8.2.5单词计数topology 137

8.2.6单词计数并发配置 139

8.3 Storm高级原语Trident 142

8.3.1 Trident引入背景 142

8.3.2 Trident基本思路 142

8.3.3 Trident流操作 143

8.3.4 Trident的实时开发实例 145

8.4 Storm关键技术 147

8.4.1 spout的可靠性 147

8.4.2 bolt的可靠性 148

8.4.3 Storm反压机制 149

8.5本章小结 150

第9章 Spark Streaming流计算开发 151

9.1 Spark生态和核心概念 151

9.1.1 Spark概览 151

9.1.2 Spark核心概念 153

9.1.3 Spark生态圈 157

9.2 Spark生态的流计算技术:Spark Streaming 158

9.2.1 Spark Streaming基本原理 159

9.2.2 Spark Streaming核心API 159

9.3 Spark Streaming的实时开发示例 161

9.4 Spark Streaming调优实践 162

9.5 Spark Streaming关键技术 164

9.5.1 Spark Streaming可靠性语义 164

9.5.2 Spark Streaming反压机制 165

9.6本章小结 166

第10章 Flink流计算开发 167

10.1流计算技术新贵:Flink 167

10.1.1 Flink技术栈 168

10.1.2 Flink关键概念和基本原理 169

10.2 Flink API 172

10.2.1 API概览 172

10.2.2 DataStream API 173

10.3 Flink实时开发示例 180

10.4 Flink关键技术详解 182

10.4.1容错机制 182

10.4.2水位线 184

10.4.3窗口机制 185

10.4.4撤回 187

10.4.5反压机制 187

10.5本章小结 188

第11章 Beam技术 189

11.1意图一统流计算的Beam 190

11.1.1 Beam的产生背景 190

11.1.2 Beam技术 191

11.2 Beam技术核心:Beam Model 193

11.3 Beam SDK 196

11.3.1关键概念 196

11.3.2 Beam SDK 197

11.4 Beam窗口详解 202

11.4.1窗口基础 202

11.4.2水位线与延迟数据 203

11.4.3触发器 204

11.5本章小结 205

第12章 Stream SQL实时开发实战 206

12.1流计算SQL原理和架构 207

12.2流计算SQL:未来主要的实时开发技术 208

12.3 Stream SQL 209

12.3.1 Stream SQL源表 209

12.3.2 Stream SQL结果表 209

12.3.3 Stream SQL维度表 210

12.3.4 Stream SQL临时表 211

12.3.5 Stream SQL DML 211

12.4 Stream SQL的实时开发实战 212

12.4.1 select操作 212

12.4.2 join操作 214

12.4.3聚合操作 218

12.5撤回机制 221

12.6本章小结 222

参考文献 224

返回顶部