图书介绍

奠定大数据的基石 NoSQL数据库技术PDF|Epub|txt|kindle电子书版本网盘下载

奠定大数据的基石 NoSQL数据库技术
  • 皮雄军编著 著
  • 出版社: 佳魁信息
  • ISBN:9789863791621
  • 出版时间:2015
  • 标注页数:502页
  • 文件大小:57MB
  • 文件页数:522页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

奠定大数据的基石 NoSQL数据库技术PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

Part1 NoSQL的兴起与理论基础2

Chapter 01 NoSQL与大数据简介2

1.1引子——NoSQL在中国大陆使用的案例2

1.1.1新浪微博2

1.1.2淘宝资料平台3

1.1.3视觉中国网站4

1.1.4优酷营运资料分析5

1.1.5飞信空间6

1.1.6豆瓣社区7

1.2大数据9

1.2.1大数据的度量单位9

1.2.2大数据的特点10

1.3大数据相关技术12

1.3.1大数据撷取技术12

1.3.2大数据前置处理技术12

1.3.3大数据储存及管理技术13

1.3.4大数据分析及采撷技术13

1.3.5大数据展现与应用技术14

1.4 NoSQL简介15

1.4.1什么是NoSQL15

1.4.2关联式资料库简史15

1.4.3资料库分类15

1.4.4关联式资料库的优势17

1.4.5不擅长的处理18

1.4.6 NoSQL资料库21

1.5 NoSQL资料库的类型23

1.5.1键值(Key/Value)储存23

1.5.2针对文件的资料库25

1.5.3针对列的资料库25

1.6如何使用和学习NoSQL资料库26

1.6.1始终只是一种选择26

1.6.2在何种程度上信赖它27

1.7云端资料管理27

Chapter 02 NOSQL的资料一致性29

2.1传统关联式资料库中的ACID30

2.1.1最小性30

2.1.2一致性30

2.1.3隔离性31

2.1.4持久性31

2.1.5举例31

2.2 CAP理论32

2.2.1 NoSQL系统是分散式系统32

2.2.2 CAP理论说明33

2.3 AP的实例——DNS系统35

2.3.1 DNS系统35

2.3.2 DNS域名解析过程35

2.3.3 DNS系统是最后一致性的38

2.4资料一致性模型与BASE38

2.4.1资料一致性模型38

2.4.2 BASE(Basically Available,Soft-state,Eventual consistency)40

2.5资料一致性实现方法40

2.5.1 Quorum系统NRW策略41

2.5.2时间戳记策略42

2.5.3向量时钟46

Chapter 03 NOSQL的水平扩充与其他基础知识51

3.1所有资料储存在一个伺服器上52

3.2分片(Sharding)53

3.3主从复制55

3.4对等(PeerTo Peer)复制56

3.5复制和分片的同时使用57

3.6资料水平扩充的方法归纳58

3.7分片对资料的划分方式58

3.7.1 Range-Based Partitioning59

3.7.2 Round-Robin62

3.8一致性hash演算法(Consistent Hashing)63

3.8.1基本场景63

3.8.2 hash演算法和单调性64

3.8.3 Consistent Hashing演算法的原理64

3.8.4虚拟节点67

3.9磁碟的读写特点及五分钟法则68

3.9.1磁轨、磁区、磁柱和磁头数69

3.9.2固态硬碟(SSD)随机读写速度快70

3.9.3记忆体:读写速度极快70

3.9.4五分钟法则71

3.10不要删除资料71

Part2 列式NoSQL系统73

Chapter 04 BigTable与Google云端运算原理73

4.1云端运算74

4.1.1云端运算的概念74

4.1.2云端运算发展现状78

4.1.3云端运算实现机制79

4.1.4网格计算与云端运算81

4.2 Google档案系统GFS85

4.2.1系统架构86

4.2.2容错机制89

4.2.3系统管理技术90

4.3平行资料处理MapReduce91

4.3.1产生背景91

4.3.2程式设计模型92

4.3.3实现机制93

4.4分散式锁服务Chubby97

4.4.1 Paxos演算法97

4.4.2 Chubby系统设计98

4.4.3 Chubby档案系统101

4.4.4通讯协定102

4.4.5正确性与效能105

4.5分散式结构化资料表BigTable106

4.5.1设计动机与目标107

4.5.2资料模型109

4.5.3系统架构109

4.5.4主要伺服器110

4.5.5子表伺服器111

4.5.6效能最佳化115

Chapter 05 Google云端运算的开放原始码版本——Hadoop117

5.1 Hadoop简介118

5.1.1 Hadoop发展史118

5.1.2 Apache Hadoop专案及系统结构120

5.2 Hadoop产生的原因121

5.2.1巨量的资料121

5.2.2资料的储存和分析123

5.3 Hadoop和其他系统的比较124

5.3.1和关联式资料库管理系统(RDBMS)的比较125

5.3.2和网格计算的比较126

5.4 HDFS的架构设计128

5.4.1前提和设计目标128

5.4.2 Namenode和Datanode129

5.4.3档案系统的Namespace129

5.4.4资料复制130

5.4.5档案系统中继资料的持久化131

5.4.6通讯协定132

5.4.7稳固性133

5.4.8资料组织134

5.4.9可存取性135

5.4.10空间的回收135

5.5安装Hadoop136

5.5.1安装JDK 1.7136

5.5.2安装Hadoop138

5.6 HDFS操作144

5.6.1使用FS Shell指令操作H DFS144

5.6.2程式设计读写HDFS149

5.7 Hadoop中的MapReduce模型151

5.7.1 MapReduce计算模型151

5.7.2 Hadoop中的 Hello World程式152

5.7.3执行MapReduce程式158

5.7.4 Hadoop中的Hello World程式——新的API160

5.7.5 MapReduce的资料流程和控制流162

5.8 Zookeeper164

5.8.1 Zookeeper设定安装164

5.8.2 Zookeeper的资料模型166

5.8.3 Zookeeper的基本使用167

5.8.4 ZooKeeper典型的应用场景170

5.8.5统一命名服务(Name Service)170

5.8.6共用锁(Locks )173

5.8.7佇列管理174

5.8.8 Zookeeper归纳177

5.9 HBase177

5.9.1简介177

5.9.2逻辑视图178

5.9.3实体储存179

5.9.4系统架构183

5.9.5关键演算法/流程185

5.10 HBase的安装和设定190

5.11 HBase使用实例192

Part3 Key/Value NoSQL系统195

Chapter 06 Dynamo:Amazon的高可用键值对储存195

6.1简介196

6.2背景197

6.2.1系统假设和要求198

6.2.2服务水准协定(SLA)199

6.2.3设计考虑201

6.3系统架构203

6.3.1系统介面203

6.3.2划分演算法204

6.3.3复制205

6.3.4版本的资料205

6.3.5执行get()和put()操作208

6.3.6故障处理:暗示移交(Hinted Handoff)210

6.3.7处理永久性故障:备份同步210

6.3.8会员和故障检测211

6.3.9增加/删除储存节点213

6.4实现213

6.5 Amazon使用的经验与教训215

6.5.1平衡效能和耐久性216

6.5.2确保均匀的负载分布218

6.5.3不同版本:何时以及有多少222

6.5.4用户端驱动或伺服器驱动协调223

6.5.5权衡后台和前台工作224

6.5.6讨论225

6.6结论225

Chapter07 LevelDb——出自Google的Key-Value资料库227

7.1 LevelD b简介228

7.2 LevelDb的静态部分229

7.2.1整体架构229

7.2.2 log档案232

7.2.3 SSTable档案233

7.2.4 MemTable详解237

7.3 LevelDb的动态部分238

7.3.1写入与删除记录238

7.3.2读取记录239

7.3.3 Compaction操作242

7.3.4 LevelDb中的Cache245

7.3.5 Version、VersionEdit和VersionSet247

Chapter 08 RediS实战249

8.1 Redis安装与准备250

8.1.1下载与安装250

8.1.2设定档修改251

8.1.3启动Red is253

8.1.4停止Redis254

8.2 Redis所支援的资料结构255

8.2.1 String256

8.2.2 List260

8.2.3 Set266

8.2.4 Hash/杂凑/杂凑270

8.2.5有序集合/Zset274

8.3 Key操作指令281

8.3.1概述281

8.3.2指令范例282

8.4事物286

8.4.1事物概述286

8.4.2相关指令287

8.4.3指令范例288

8.4.4 WATCH指令和以CAS为基础的乐观锁289

8.5 Redis的主从复制290

8.5.1 Redis的Replication290

8.5.2 Replication的工作原理291

8.5.3如何设定Replication291

8.5.4应用范例292

8.6 Redis的持久化293

8.6.1持久化机制293

8.6.2 RDB机制的优势和劣势293

8.6.3 AOF机制的优势和劣势294

8.6.4其他295

8.7 Redis的虚拟记忆体296

8.7.1简介296

8.7.2应用场景297

8.7.3设定297

8.8 pipeline/管线299

8.8.1请求回应协定和RTT299

8.8.2管线(pipelining)299

8.8.3 Benchmark300

8.9实例301

Part4 文件型NoSQL系统307

Chapter 09针对文件的资料库CouchDB307

9.1 CouchDB介绍308

9.1.1基本概念308

9.1.2扩充概念308

9.2 CouchDB安装与设定309

9.3 RESTAPI311

9.3.1资料库REST API311

9.3.2文件REST API311

9.3.3视图REST API312

9.3.4附件REST API312

9.4为应用建模313

9.4.1描述实体313

9.4.2描述一对一和一对多关联性314

9.4.3描述多对多关系315

9.5实战开发317

9.5.1开发Web应用317

9.5.2使用CouchDB jQuery外挂程式319

9.5.3范例应用建模320

9.5.4管理文件321

9.5.5视图325

9.6进阶内容332

9.6.1许可权控制与安全332

9.6.2文件更新验证333

9.6.3分组333

9.6.4键的排序334

Chapter10 MongoDB实战335

10.1为什么要使用MongoDB336

10.1.1不能确定的表结构资讯336

10.1.2序列化可以解决一切问题吗336

10.1.3无需定义表结构的资料库337

10.2 MongoDB的优势和不足337

10.2.1无表结构337

10.2.2容易扩充338

10.2.3丰富的功能339

10.2.4效能卓越339

10.2.5简便的管理339

10.2.6 MongoDB的不足340

10.3基本概念340

10.4 Linux下MongoDB的安装和设定、启动和停止341

10.4.1下载341

10.4.2安装341

10.4.3启动资料库343

10.4.4停止资料库346

10.5建立、更新及删除文件347

10.5.1连接资料库347

10.5.2插入记录348

10.5.3_ id key349

10.5.4修改记录350

10.5.5删除记录350

10.6查询记录351

10.6.1普通查询351

10.6.2条件查询352

10.6.3 findOne()语法353

10.6.4透过limit限制结果集数量353

10.7高级查询353

10.7.1条件运算符号354

10.7.2 $all比对所有354

10.7.3 $exists判断栏位是否存在354

10.7.4 Null值处理355

10.7.5 $mod取模运算356

10.7.6 $ne不等於356

10.7.7 $in包含357

10.7.8 $nin不包含357

10.7.9 $size阵列元素个数358

10.7.10正规表示法比对358

10.7.11 JavaScript查询和$where查询358

10.7.12 count查询记录笔数359

10.7.13 skip限制传回记录的起点359

10.7.14 sort排序360

10.7.15游标360

10.8 MapReduce361

10.8.1 Map362

10.8.2 Reduce363

10.8.3 Result363

10.8.4 Finalize364

10.8.5 Options365

10.9索引365

10.9.1基础索引366

10.9.2文件索引366

10.9.3组合索引367

10.9.4唯一索引367

10.9.5强制使用索引367

10.9.6删除索引369

10.10性能优化369

10.10.1 explain执行计画369

10.10.2最佳化器Profile370

10.10.3效能最佳化举例372

10.11性能监控374

10.11.1 mongosniff374

10.11.2 Mongostat375

10.11.3 db.serverStatus376

10.11.4 db.stats378

10.11.5协力厂商工具378

10.12 Replica Sets复制集379

10.12.1部署Replica Sets379

10.12.2主从操作记录档oplog383

10.12.3主从设定资讯384

10.12.4管理维护Replica Sets385

10.12.5增减节点388

10.13 Sharding分片393

10.13.1建立Sharding Cluster394

10.13.2管理维护Sharding397

10.14 Replica Sets和Sharding的结合404

10.14.1建立资料目录405

10.14.2设定Replica-Sets406

10.14.3设定3台Route Process408

10.14.4设定Shard Cluster409

10.14.5验证Sharding正常执行409

Part5 MySQL基础与效能最佳化411

Chapter11 MySQL基础411

11.1 CentOS 6.5下MySQL的安装412

11.2 MySQL基本指令415

11.3 MySQ L资料类型419

11.3.1整数419

11.3.2浮点数419

11.3.3定点数420

11.3.4字串(char,varchar,xxxtext )420

11.3.5二进位资料421

11.3.6日期时间类型421

11.3.7资料类型的属性421

11.4建立资料库和表422

11.5检索表中的资料426

11.6多个表的操作430

Chapter 12 MySQL进阶特性与效能最佳化435

12.1 MySQL Server系统架构436

12.1.1逻辑模组成436

12.1.2各模组工作配合439

12.2储存引擎443

12.2.1 MySQL储存引擎概述443

12.2.2 MyISAM储存引擎简介444

12.2.3 Innodb储存引擎简介446

12.3 MySQL中的锁定机制448

12.3.1 MySQL中锁定机制概述448

12.3.2合理利用锁机制最佳化MySQL450

12.4索引与最佳化453

12.4.1选择索引的资料类型453

12.4.2索引入门454

12.4.3索引的类型454

12.4.4高性能的索引策略456

12.4.5索引与加锁462

12.5 MySQL的MyISAM和Innodb的Cache最佳化464

12.5.1 MyISAM储存引擎的Cache最佳化464

12.5.2 Innodb快取相关最佳化468

12.6 MySQL的复制471

12.6.1复制对於可扩充性的意义471

12.6.2复制的原理472

12.6.3体验MySQL复制473

12.6.4复制的常用拓扑结构478

12.7可扩充性设计之资料切分484

12.7.1何谓资料切分485

12.7.2资料的垂直切分485

12.7.3资料的水平切分488

12.7.4垂直与水平联合切分的使用490

12.7.5资料切分及整合方案493

12.7.6资料切分与整合中可能存在的问题500

12.8小结502

热门推荐