当前位置:首页 > 数据库 >
《NoSQL数据库技术实战》电子书封面

NoSQL数据库技术实战

  • 发布时间:2020年08月18日 09:04:44
  • 作者:皮雄军
  • 大小:78.3 MB
  • 类别:NoSQL电子书
  • 格式:PDF
  • 版本:高清版
  • 评分:9.2

    NoSQL数据库技术实战 PDF 高清版

      给大家带来的一篇关于NoSQL相关的电子书资源,介绍了关于NoSQL、数据库技术方面的内容,本书是由清华大学出版社出版,格式为PDF,资源大小78.3 MB,皮雄军编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:8.1。

      内容介绍

      NoSQL数据库技术实战由浅入深,全面系统地介绍了NoSQL系统。本书既对NoSQL系统的理论进行了深入浅出的分析,又介绍了每一种NoSQL数据库在业界广泛应用的一个具体系统,理论与实战并重。

      本书共分5篇,12章。涵盖的内容有:NoSQL与大数据简介、NoSQL的数据一致性、NoSQL的水平扩展与其他基础知识、BigTable与Google云计算原理、Google云计算的开源版本——Hadoop、Dynamo:Amazon的高可用键值对存储、LevelDb——出自Google的Key-Value数据库、Redis实战、面向文档的数据库CouchDB、MongoDB实战、MySQL基础、MySQL高级特性与性能优化。

      本书涉及面广,从基本操作到高级技术和核心原理,再到项目开发,几乎涉及NoSQL系统的所有重要知识。本书适合所有想全面学习NoSQL的人员阅读,也适合各种使用NoSQL进行开发的工程技术人员使用。

      目录

      • 第1篇 NoSQL的兴起与理论基础
      • 第1章 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 大数据 8
      • 1.2.1 大数据的度量单位 8
      • 1.2.2 大数据的特点 9
      • 1.3 大数据相关技术 10
      • 1.3.1 大数据采集技术 10
      • 1.3.2 大数据预处理技术 11
      • 1.3.3 大数据存储及管理技术 11
      • 1.3.4 大数据分析及挖掘技术 11
      • 1.3.5 大数据展现与应用技术 12
      • 1.4 NoSQL简介 12
      • 1.4.1 什么是NoSQL 12
      • 1.4.2 关系型数据库简史 13
      • 1.4.3 数据库分类 13
      • 1.4.4 关系型数据库的优势 14
      • 1.4.5 不擅长的处理 15
      • 1.4.6 NoSQL数据库 18
      • 1.5 NoSQL数据库的类型 20
      • 1.5.1 键值(Key/Value)存储 20
      • 1.5.2 面向文档的数据库 21
      • 1.5.3 面向列的数据库 22
      • 1.6 如何使用和学习NoSQL数据库 23
      • 1.6.1 始终只是一种选择 23
      • 1.6.2 在何种程度上信赖它 23
      • 1.7 云数据管理 24
      • 第2章 NoSQL的数据一致性 25
      • 2.1 传统关系数据库中的ACID 25
      • 2.1.1 原子性 25
      • 2.1.2 一致性 25
      • 2.1.3 隔离性 26
      • 2.1.4 持久性 26
      • 2.1.5 举例 26
      • 2.2 CAP理论 27
      • 2.2.1 NoSQL系统是分布式系统 27
      • 2.2.2 CAP理论阐述 27
      • 2.3 AP的例子——DNS系统 29
      • 2.3.1 DNS系统 29
      • 2.3.2 DNS域名解析过程 29
      • 2.3.3 DNS系统是最终一致性的 31
      • 2.4 数据一致性模型与BASE 31
      • 2.4.1 数据一致性模型 31
      • 2.4.2 BASE(Basically Available,Soft-state,Eventual consistency) 32
      • 2.5 数据一致性实现方法 33
      • 2.5.1 Quorum系统NRW策略 33
      • 2.5.2 时间戳策略 34
      • 2.5.3 向量时钟 37
      • 第3章 NoSQL的水平扩展与其他基础知识 41
      • 3.1 所有数据存放在一个服务器上 41
      • 3.2 分片(Sharding) 41
      • 3.3 主从复制 43
      • 3.4 对等(Peer To Peer)复制 44
      • 3.5 复制和分片的同时使用 45
      • 3.6 数据水平扩展的方法总结 46
      • 3.7 分片对数据的划分方式 46
      • 3.7.1 Range-Based Partitioning 47
      • 3.7.2 Round-Robin 49
      • 3.8 一致性hash算法(Consistent Hashing) 50
      • 3.8.1 基本场景 51
      • 3.8.2 hash算法和单调性 51
      • 3.8.3 Consistent Hashing算法的原理 51
      • 3.8.4 虚拟节点 54
      • 3.9 磁盘的读写特点及五分钟法则 55
      • 3.9.1 磁道、扇区、柱面和磁头数 56
      • 3.9.2 固态硬盘(SSD):随机读写速度快 57
      • 3.9.3 内存:读写速度极快 57
      • 3.9.4 五分钟法则 57
      • 3.10 不要删除数据 58
      • 第2篇 列式NoSQL系统
      • 第4章 BigTable与Google云计算原理 60
      • 4.1 云计算 60
      • 4.1.1 云计算的概念 60
      • 4.1.2 云计算发展现状 63
      • 4.1.3 云计算实现机制 64
      • 4.1.4 网格计算与云计算 66
      • 4.2 Google文件系统GFS 68
      • 4.2.1 系统架构 69
      • 4.2.2 容错机制 71
      • 4.2.3 系统管理技术 72
      • 4.3 并行数据处理MapReduce 73
      • 4.3.1 产生背景 73
      • 4.3.2 编程模型 73
      • 4.3.3 实现机制 74
      • 4.4 分布式锁服务Chubby 78
      • 4.4.1 Paxos算法 78
      • 4.4.2 Chubby系统设计 79
      • 4.4.3 Chubby文件系统 80
      • 4.4.4 通信协议 82
      • 4.4.5 正确性与性能 83
      • 4.5 分布式结构化数据表BigTable 84
      • 4.5.1 设计动机与目标 85
      • 4.5.2 数据模型 85
      • 4.5.3 系统架构 87
      • 4.5.4 主服务器 88
      • 4.5.5 子表服务器 89
      • 4.5.6 性能优化 92
      • 第5章 Google云计算的开源版本——Hadoop 94
      • 5.1 Hadoop简介 94
      • 5.1.1 Hadoop发展史 94
      • 5.1.2 Apache Hadoop项目及体系结构 96
      • 5.2 Hadoop产生的原因 97
      • 5.2.1 海量的数据 97
      • 5.2.2 数据的存储和分析 98
      • 5.3 Hadoop和其他系统的比较 99
      • 5.3.1 和关系型数据库管理系统(RDBMS)的比较 99
      • 5.3.2 和网格计算的比较 100
      • 5.4 HDFS的架构设计 101
      • 5.4.1 前提和设计目标 102
      • 5.4.2 Namenode和Datanode 102
      • 5.4.3 文件系统的Namespace 103
      • 5.4.4 数据复制 103
      • 5.4.5 文件系统元数据的持久化 104
      • 5.4.6 通讯协议 105
      • 5.4.7 健壮性 105
      • 5.4.8 数据组织 106
      • 5.4.9 可访问性 107
      • 5.4.10 空间的回收 107
      • 5.5 安装Hadoop 108
      • 5.5.1 安装JDK 1.7 108
      • 5.5.2 安装Hadoop 109
      • 5.6 HDFS操作 113
      • 5.6.1 使用FS Shell命令操作HDFS 113
      • 5.6.2 编程读写HDFS 118
      • 5.7 Hadoop中的MapReduce模型 119
      • 5.7.1 MapReduce计算模型 119
      • 5.7.2 Hadoop中的Hello World程序 120
      • 5.7.3 运行MapReduce程序 124
      • 5.7.4 Hadoop中的Hello World程序——新的API 125
      • 5.7.5 MapReduce的数据流和控制流 127
      • 5.8 Zookeeper 129
      • 5.8.1 Zookeeper配置安装 129
      • 5.8.2 Zookeeper的数据模型 130
      • 5.8.3 Zookeeper的基本使用 131
      • 5.8.4 ZooKeeper 典型的应用场景 133
      • 5.8.5 统一命名服务(Name Service) 133
      • 5.8.6 共享锁(Locks) 136
      • 5.8.7 队列管理 137
      • 5.8.8 Zookeeper总结 139
      • 5.9 HBase 139
      • 5.9.1 简介 139
      • 5.9.2 逻辑视图 139
      • 5.9.3 物理存储 141
      • 5.9.4 系统架构 144
      • 5.9.5 关键算法/流程 146
      • 5.10 HBase的安装和配置 149
      • 5.11 HBase使用例子 151
      • 第3篇 Key/Value NoSQL系统
      • 第6章 Dynamo:Amazon的高可用键值对存储 156
      • 6.1 简介 156
      • 6.2 背景 157
      • 6.2.1 系统假设和要求 158
      • 6.2.2 服务水平协议(SLA) 158
      • 6.2.3 设计考虑 160
      • 6.3 系统架构 161
      • 6.3.1 系统接口 162
      • 6.3.2 划分算法 162
      • 6.3.3 复制 163
      • 6.3.4 版本的数据 163
      • 6.3.5 执行get()和put()操作 165
      • 6.3.6 故障处理:暗示移交(Hinted Handoff) 166
      • 6.3.7 处理永久性故障:副本同步 167
      • 6.3.8 会员和故障检测 167
      • 6.3.9 添加/删除存储节点 169
      • 6.4 实现 169
      • 6.5 Amazon使用的经验与教训 170
      • 6.5.1 平衡性能和耐久性 171
      • 6.5.2 确保均匀的负载分布 172
      • 6.5.3 不同版本:何时以及有多少 175
      • 6.5.4 客户端驱动或服务器驱动协调 176
      • 6.5.5 权衡后台和前台任务 177
      • 6.5.6 讨论 177
      • 6.6 结论 178
      • 第7章 LevelDb——出自Google的 Key-Value数据库 179
      • 7.1 LevelDb简介 179
      • 7.2 LevelDb的静态部分 180
      • 7.2.1 整体架构 180
      • 7.2.2 log文件 182
      • 7.2.3 SSTable文件 183
      • 7.2.4 MemTable详解 186
      • 7.3 LevelDb的动态部分 187
      • 7.3.1 写入与删除记录 187
      • 7.3.2 读取记录 188
      • 7.3.3 Compaction操作 190
      • 7.3.4 LevelDb中的Cache 192
      • 7.3.5 Version、VersionEdit和VersionSet 194
      • 第8章 Redis实战 195
      • 8.1 Redis安装与准备 195
      • 8.1.1 下载与安装 195
      • 8.1.2 配置文件修改 196
      • 8.1.3 启动Redis 197
      • 8.1.4 停止Redis 198
      • 8.2 Redis所支持的数据结构 198
      • 8.2.1 String 199
      • 8.2.2 List 203
      • 8.2.3 Set 207
      • 8.2.4 Hash/哈希/散列 210
      • 8.2.5 有序集合/Zset 213
      • 8.3 Key操作命令 218
      • 8.3.1 概述 218
      • 8.3.2 命令示例 220
      • 8.4 事物 223
      • 8.4.1 事物概述 223
      • 8.4.2 相关命令 223
      • 8.4.3 命令示例 224
      • 8.4.4 WATCH命令和基于CAS的乐观锁 225
      • 8.5 Redis的主从复制 226
      • 8.5.1 Redis的Replication 226
      • 8.5.2 Replication的工作原理 227
      • 8.5.3 如何配置Replication 227
      • 8.5.4 应用示例 228
      • 8.6 Redis的持久化 228
      • 8.6.1 持久化机制 228
      • 8.6.2 RDB机制的优势和劣势 229
      • 8.6.3 AOF机制的优势和劣势 229
      • 8.6.4 其他 230
      • 8.7 Redis的虚拟内存 231
      • 8.7.1 简介 231
      • 8.7.2 应用场景 231
      • 8.7.3 配置 231
      • 8.8 pipeline/管线 233
      • 8.8.1 请求应答协议和RTT 233
      • 8.8.2 管线(pipelining) 233
      • 8.8.3 Benchmark 234
      • 8.9 实例 234
      • 第4篇 文档型NoSQL系统
      • 第9章 面向文档的数据库CouchDB 240
      • 9.1 CouchDB介绍 240
      • 9.1.1 基本概念 240
      • 9.1.2 扩展概念 241
      • 9.2 CouchDB安装与配置 241
      • 9.3 REST API 242
      • 9.3.1 数据库REST API 243
      • 9.3.2 文档REST API 243
      • 9.3.3 视图 REST API 243
      • 9.3.4 附件 REST API 244
      • 9.4 为应用建模 244
      • 9.4.1 描述实体 244
      • 9.4.2 描述一对一和一对多关系 245
      • 9.4.3 描述多对多关系 246
      • 9.5 实战开发 247
      • 9.5.1 开发Web应用 247
      • 9.5.2 使用CouchDB jQuery插件 248
      • 9.5.3 示例应用建模 249
      • 9.5.4 管理文档 250
      • 9.5.5 视图 253
      • 9.6 高级话题 259
      • 9.6.1 权限控制与安全 259
      • 9.6.2 文档更新校验 259
      • 9.6.3 分组 259
      • 9.6.4 键的排序 260
      • 第10章 MongoDB实战 261
      • 10.1 为什么要使用MongoDB 261
      • 10.1.1 不能确定的表结构信息 261
      • 10.1.2 序列化可以解决一切问题吗 261
      • 10.1.3 无需定义表结构的数据库 262
      • 10.2 MongoDB的优势和不足 262
      • 10.2.1 无表结构 262
      • 10.2.2 容易扩展 263
      • 10.2.3 丰富的功能 263
      • 10.2.4 性能卓越 264
      • 10.2.5 简便的管理 264
      • 10.2.6 MongoDB的不足 264
      • 10.3 基本概念 264
      • 10.4 Linux下MongoDB的安装和配置、启动和停止 265
      • 10.4.1 下载 265
      • 10.4.2 安装 266
      • 10.4.3 启动数据库 267
      • 10.4.4 停止数据库 269
      • 10.5 创建、更新及删除文档 270
      • 10.5.1 连接数据库 270
      • 10.5.2 插入记录 270
      • 10.5.3 _id key 272
      • 10.5.4 修改记录 272
      • 10.5.5 删除记录 272
      • 10.6 查询记录 273
      • 10.6.1 普通查询 273
      • 10.6.2 条件查询 274
      • 10.6.3 findOne()语法 274
      • 10.6.4 通过limit限制结果集数量 274
      • 10.7 高级查询 275
      • 10.7.1 条件操作符 275
      • 10.7.2 $all匹配所有 275
      • 10.7.3 $exists判断字段是否存在 276
      • 10.7.4 Null值处理 276
      • 10.7.5 $mod取模运算 276
      • 10.7.6 $ne不等于 277
      • 10.7.7 $in包含 277
      • 10.7.8 $nin不包含 278
      • 10.7.9 $size数组元素个数 278
      • 10.7.10 正则表达式匹配 278
      • 10.7.11 JavaScript查询和$where查询 279
      • 10.7.12 count查询记录条数 279
      • 10.7.13 skip限制返回记录的起点 279
      • 10.7.14 sort排序 280
      • 10.7.15 游标 280
      • 10.8 MapReduce 281
      • 10.8.1 Map 282
      • 10.8.2 Reduce 282
      • 10.8.3 Result 282
      • 10.8.4 Finalize 283
      • 10.8.5 Options 283
      • 10.9 索引 284
      • 10.9.1 基础索引 284
      • 10.9.2 文档索引 285
      • 10.9.3 组合索引 285
      • 10.9.4 唯一索引 285
      • 10.9.5 强制使用索引 286
      • 10.9.6 删除索引 287
      • 10.10 性能优化 287
      • 10.10.1 explain执行计划 287
      • 10.10.2 优化器Profile 288
      • 10.10.3 性能优化举例 289
      • 10.11 性能监控 290
      • 10.11.1 mongosniff 291
      • 10.11.2 Mongostat 292
      • 10.11.3 db.serverStatus 292
      • 10.11.4 db.stats 294
      • 10.11.5 第三方工具 294
      • 10.12 Replica Sets复制集 294
      • 10.12.1 部署Replica Sets 295
      • 10.12.2 主从操作日志oplog 297
      • 10.12.3 主从配置信息 298
      • 10.12.4 管理维护Replica Sets 299
      • 10.12.5 增减节点 301
      • 10.13 Sharding分片 305
      • 10.13.1 建立Sharding Cluster 306
      • 10.13.2 管理维护Sharding 308
      • 10.14 Replica Sets和Sharding的结合 313
      • 10.14.1 创建数据目录 314
      • 10.14.2 配置Replica Sets 314
      • 10.14.3 配置3台Route Process 316
      • 10.14.4 配置Shard Cluster 316
      • 10.14.5 验证Sharding正常工作 317
      • 第5篇 MySQL基础与性能优化
      • 第11章 MySQL基础 320
      • 11.1 CentOS 6.5下MySQL的安装 320
      • 11.2 MySQL基本命令 322
      • 11.3 MySQL数据类型 325
      • 11.3.1 整型 325
      • 11.3.2 浮点型 326
      • 11.3.3 定点数 326
      • 11.3.4 字符串(char,varchar,xxxtext) 326
      • 11.3.5 二进制数据 327
      • 11.3.6 日期时间类型 327
      • 11.3.7 数据类型的属性 327
      • 11.4 创建数据库和表 328
      • 11.5 检索表中的数据 331
      • 11.6 多个表的操作 334
      • 第12章 MySQL高级特性与性能优化 338
      • 12.1 MySQL Server系统架构 338
      • 12.1.1 逻辑模块组成 338
      • 12.1.2 各模块工作配合 341
      • 12.2 存储引擎 343
      • 12.2.1 MySQL存储引擎概述 343
      • 12.2.2 MyISAM存储引擎简介 344
      • 12.2.3 Innodb 存储引擎简介 346
      • 12.3 MySQL中的锁定机制 347
      • 12.3.1 MySQL中锁定机制概述 347
      • 12.3.2 合理利用锁机制优化MySQL 349
      • 12.4 索引与优化 350
      • 12.4.1 选择索引的数据类型 351
      • 12.4.2 索引入门 351
      • 12.4.3 索引的类型 352
      • 12.4.4 高性能的索引策略 353
      • 12.4.5 索引与加锁 358
      • 12.5 MySQL的MyISAM和Innodb的Cache优化 359
      • 12.5.1 MyISAM存储引擎的Cache优化 359
      • 12.5.2 Innodb缓存相关优化 362
      • 12.6 MySQL的复制 364
      • 12.6.1 复制对于可扩展性的意义 364
      • 12.6.2 复制的原理 365
      • 12.6.3 体验MySQL复制 366
      • 12.6.4 复制的常用拓扑结构 370
      • 12.7 可扩展性设计之数据切分 375
      • 12.7.1 何谓数据切分 375
      • 12.7.2 数据的垂直切分 375
      • 12.7.3 数据的水平切分 377
      • 12.7.4 垂直与水平联合切分的使用 379
      • 12.7.5 数据切分及整合方案 381
      • 12.7.6 数据切分与整合中可能存在的问题 386
      • 12.8 小结 388

      学习笔记

      sql与各个nosql数据库使用场景的讲解

      sql为主干为什么我这样理解: 单从技术角度来说 关系型网格 充分的体现了现实事务 对事务,审计,闪存等等对数据的重视所以如何一些特别主要的数据,一定要放到sql里面。一个系统里面至少有用户信息是重要的数据。 所以sql必须有,而且数据存储的主干 什么时候引入nosql 先看看sql - sql + nosql的过程。 https://www.jb51.net/article/79236.htm 为什么要使用NoSQL 这些nosql? 对java语言而言: redis:用于缓存 - 读速度极快(内存中) mongoDb - 读写事务都是均衡的.node.js开发的json Neo4j - .java的的比较像SQL但查询更快,可惜高级功能收费… - 社交(图像数据库) Cassandra - 写数据比读快.-用于日志的存放。 HBase 离线分析……

      如何使用Python完成一个NoSQL数据库的示例代码分享

      NoSQL 这个词在近些年正变得随处可见. 但是到底 “NoSQL” 指的是什么? 它是如何并且为什么这么有用? 在本文, 我们将会通过纯 Python (我比较喜欢叫它, “轻结构化的伪代码”) 写一个 NoSQL 数据库来回答这些问题. OldSQL 很多情况下, SQL 已经成为 “数据库” (database) 的一个同义词. 实际上, SQL 是 Strctured Query Language 的首字母缩写, 而并非指数据库技术本身. 更确切地说, 它所指的是从 RDBMS (关系型数据库管理系统, Relational Database Management System ) 中检索数据的一门语言. MySQL, MS SQL Server 和 Oracle 都属于 RDBMS 的其中一员. RDBMS 中的 R, 即 “Relational” (有关系,关联的), 是其中内容最丰富的部分. 数据通过 表 (table) 进行……

      以上就是本次介绍的NoSQL电子书的全部相关内容,希望我们整理的资源能够帮助到大家,感谢大家对码农之家的支持。

      上一篇:神奇的匹配:正则表达式求精之旅

      下一篇:学习bash

      展开 +

      收起 -

      下载地址:百度网盘下载
      NoSQL相关电子书
      数据库项目开发实践
      数据库项目开发实践 高清版

      数据库项目开发技能是当前软件行业必备的技能之一。《数据库项目开发实践/高等学校软件工程专业校企深度合作系列实践教材》根据数据库设计的一般规范,介绍了真实案例的设计过程与所

      立即下载
      Oracle数据库系统原理
      Oracle数据库系统原理 高清版

      Oracle数据库系统原理(第2版) 包括数据库基本理论以及Oracle数据库系统知识两部分。主要包括关系模型基本理论、ER图及范式理论、安装Oracle 12c软件、SQL语言、Oracle的逻辑存储空间、索引原理

      立即下载
      数据库事务处理的艺术:事务管理与并发控制
      数据库事务处理的艺术:事务管理与并发控制 影印版 立即下载
      R语言之数据库交互及统计绘图
      R语言之数据库交互及统计绘图 高清版

      R与数据库:各有所长、取长补短 R与数据库:两种连接方式 ODBC(Open DataBase Connectivity),开放式数据库连接 DBI(DataBase Interface)方式: ROracle、RMysqlhellip;hellip; 目录 R数据库交互 #61692; R语言与数据库#61692; nbsp;通过RODBC进行数据存取#61548; R统计绘图#61692; R语言与统计绘图#61692; R的高水平绘图函数#61692; R的常用绘图参数#61692; R的低水平绘图

      立即下载
      数据库云平台理论与实践
      数据库云平台理论与实践 完整影印版

      数据库云平台是现如今甚至将来一段時期信息化管理行业广泛关心的一个网络热点行业。云技术的实质是分布式计算,而数据库云平台表明的更是分布式计算在数据处理方法行业的实质难题。

      立即下载
      Oracle数据库编程经典300例
      Oracle数据库编程经典300例 中文影印版 立即下载
      数据库查询优化器的艺术:原理解析与SQL性能
      数据库查询优化器的艺术:原理解析与SQL性能 高清版

      《数据库技术丛书数据库查询优化器的艺术:原理解析与SQL性能优化》 是数据库查询优化领域的里程碑之作,由Oracle公司MySQL全球开发团队、资深专家撰写,作者有10余年数据库内核和查询优化

      立即下载
      读者留言
      钱建辉

      钱建辉 提供上传

      资源
      43
      粉丝
      48
      喜欢
      76
      评论
      13

      Copyright 2018-2020 www.xz577.com 码农之家

      版权投诉 / 书籍推广 / 赞助:520161757@qq.com