《大数据库》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:刘鹏主编;张燕副主编
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2017
  • ISBN:9787121316197
  • 页数:278 页
图书介绍:本书详细介绍大数据环境下的常用的数据库和相关工具,包括HBase、Hive、Impala、Spark、Spark SQL、键值数据库和流式数据库等,给出了详细的工作机理和应用方法,并给出完整的实践案例和代码。

第1章 大数据库概述 1

1.1 传统关系型数据库面临的问题 1

1.2 大数据库技术 2

1.2.1 列式数据库 2

1.2.2 内存数据库 2

1.2.3 键值数据库 3

1.2.4 流式数据库 3

1.3 大数据SQL 3

1.4 当前主流大数据SQL简介 4

1.4.1 Hive 4

1.4.2 Impala 5

1.4.3 Shark 6

1.4.4 Spark SQL 7

1.5 本章总结 8

习题 9

参考文献 9

第2章 分布式数据库HBase 10

2.1 HBase基础 10

2.1.1 体系架构 10

2.1.2 数据模型 15

2.2 HBase操作简介 17

2.2.1 HBase接口简介 17

2.2.2 HBase Shell实战 17

2.2.3 HBase API 20

2.3 HBase实战 21

2.3.1 实战HBase之综例 21

2.3.2 实战HBase之使用MapReduce构建索引 22

习题 26

参考文献 27

第3章 数据仓库工具Hive 28

3.1 Hive简介 28

3.1.1 工作原理 28

3.1.2 体系架构 29

3.1.3 计算模型 30

3.1.4 Hive部署模式 31

3.2 Hive的使用 32

3.2.1 Hive的数据类型 32

3.2.2 Hive接口汇总 32

3.3 实战Hive Shell 33

3.3.1 DDL操作 33

3.3.2 DML操作 34

3.3.3 SQL操作 34

3.4 实战Hive之复杂语句 35

3.5 实战Hive之综合示例 37

3.6 实战Hive API接口 38

3.6.1 UDF编程示例 38

3.6.2 UDAF编程示例 39

习题 40

参考文献 41

第4章 大数据查询系统Impala 42

4.1 Impala简介 42

4.1.1 Impala的起源 42

4.1.2 Impala的特点 42

4.1.3 Impala前辈及竞争对手 43

4.2 Impala工作原理 43

4.2.1 Impala设计目标 44

4.2.2 Impala服务器组件 44

4.2.3 Impala编程特点 45

4.2.4 Impala在Hadoop生态圈中的生存之道 45

4.3 Impala环境搭建 46

4.3.1 Impala安装前的考虑 47

4.3.2 Impala安装途径与安装示范 50

4.4 Impala操作实例 61

4.4.1 Impala基本操作 62

4.4.2 Impala数据库操作 62

习题 66

参考文献 66

第5章 内存数据库Spark 67

5.1 Spark简介 67

5.1.1 Spark的引入 67

5.1.2 Spark生态系统BDAS 69

5.1.3 Spark系统架构 75

5.1.4 Spark工作流程 77

5.1.5 Spark应用案例 78

5.2 Spark计算模型 80

5.2.1 Spark程序模型 81

5.2.2 弹性分布式数据集(RDD) 81

5.2.3 Spark算子 84

5.3 Spark工作机制 85

5.3.1 Spark运行机制 85

5.3.2 Spark调度机制 87

5.3.3 Spark I/O机制 93

5.3.4 Spark通信机制 94

5.3.5 Spark容错机制 97

5.3.6 Spark Shuffle机制 101

5.4 Scala快速入门 102

5.4.1 Scala解释器 103

5.4.2 变量 103

5.4.3 函数 104

5.4.4 编写Scala脚本 105

5.4.5 while配合if实现循环 105

5.4.6 foreach和for来实现迭代 105

5.4.7 类型参数化数组 106

5.4.8 Lists 107

5.4.9 使用元组(Tuples) 108

5.4.10 Sets和Maps 108

5.4.11 函数编程风格 109

5.4.12 读取文件 110

5.5 Spark环境部署 110

5.5.1 安装与配置Spark 110

5.5.2 Intellij IDEA构建Spark开发环境 118

5.5.3 SBT构建Spark程序 121

5.5.4 编译Spark程序 122

5.5.5 远程调试Spark程序 123

5.5.6 生成Spark部署包 124

5.6 Spark编程案例 124

5.6.1 WordCount 125

5.6.2 Top K 127

5.6.3 倒排索引 128

习题 130

参考文献 131

第6章 Spark SQL 132

6.1 Spark SQL简介 132

6.1.1 Spark SQL发展历程 132

6.1.2 Spark SQL架构 133

6.2 Spark SQL编程基础 137

6.2.1 数据类型及表达式 137

6.2.2 Spark SQL查询引擎Catalyst 138

6.2.3 SQL DSL API 142

6.2.4 Spark SQL ThriftServer和CLI 144

6.2.5 Spark SQL常用操作 146

6.3 Spark SQL实战 151

6.3.1 Spark SQL开发环境搭建 151

6.3.2 Spark SQL使用入门 166

习题 173

参考文献 173

第7章 键值数据库 174

7.1 概述 174

7.1.1 键值存储 174

7.1.2 键值数据库 176

7.2 Redis 178

7.2.1 简介 178

7.2.2 Redis数据服务及集群技术 180

7.2.3 Redis安装 186

7.2.4 Redis数据操作 187

7.2.5 案例:网站访问历史记录查询 193

7.3 Memcached 198

7.3.1 简介 198

7.3.2 Memcached缓存技术 198

7.3.3 Memcached安装 200

7.3.4 Memcached数据操作 203

7.3.5 Memcached分布式技术 206

7.3.6 案例:论坛帖子信息缓存 207

7.4 典型应用及局限 208

7.4.1 典型应用 209

7.4.2 键值数据库局限 211

习题 211

参考文献 212

第8章 流式数据库 213

8.1 流式计算模型 213

8.1.1 流式计算概念 213

8.1.2 流式计算数据特点 215

8.1.3 流式计算典型应用 216

8.1.4 典型流式计算平台 216

8.2 流式计算关键技术 218

8.2.1 计算拓扑 218

8.2.2 消息传递 220

8.2.3 高可用性 222

8.2.4 语义保障 224

8.2.5 其他关键技术 225

8.3 Storm平台 225

8.3.1 Storm简介 225

8.3.2 Storm原理 227

8.3.3 Storm部署 237

8.3.4 案例:Maven环境下的Storm编程 242

8.4 Spark Streaming平台 246

8.4.1 Spark Streaming简介 247

8.4.2 Spark Streaming原理 248

8.4.3 案例:集群环境下的Spark Streaming编程 249

习题 261

参考文献 262

第9章 大数据应用托管平台Docker 263

9.1 Docker技术简介 263

9.1.1 Docker是什么 263

9.1.2 Docker的架构和流程 265

9.2 Docker的优势和局限 266

9.2.1 Docker的优势 266

9.2.2 Docker的局限性 268

9.3 基于Docker的大数据系统设计 270

9.3.1 分布式Docker网络环境的搭建 270

9.3.2 Docker集群管理系统:Kubernetes 271

习题 277

参考文献 278