×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
NoSQL数据库实战派(Redis+MongoDB+HBase)

NoSQL数据库实战派(Redis+MongoDB+HBase)

1星价 ¥70.8 (6.0折)
2星价¥70.8 定价¥118.0
暂无评论
图文详情
  • ISBN:9787121443404
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:402
  • 出版时间:2022-10-01
  • 条形码:9787121443404 ; 978-7-121-44340-4

本书特色

绕不过的NoSQL,一本书掌握。包含以下内容:基于内存的NoSQL数据库——Redis;基于文档的NoSQL数据库——MongoDB;列式存储NoSQL数据库——HBase(1)覆盖了3种技术。 (2)主线清晰,循序渐进。 (3)突出实战,注重效果。 (4)深入原理,关注难点和易错点。

内容简介

本书介绍了NoSQL数据库生态圈体系,包括Redis、MongoDB和HBase,内容涉及开发、运维、管理与架构。“第1篇 基于内存的NoSQL数据库”(第1~5章)包括:内存对象缓存技术Memcached、Redis基础、Redis高级特性及原理、Redis集群与高可用和Redis故障诊断与优化。“第2篇 基于文档的NoSQL数据库”(第6~10章)包括:MongoDB基础、操作MongoDB的数据、MongoDB的数据建模、MongoDB的管理和MongoDB的集群。“第3篇 列式存储NoSQL数据库”(第11~15章)包括:HBase基础、部署与操作HBase、HBase原理剖析、HBase的高级特性和监控与优化HBase集群。

目录

第1篇 基于内存的NoSQL数据库 第1章 内存对象缓存技术Memcached /2 1.1 Memcached基础 /2 1.1.1 Memcached的体系架构 /2 1.1.2 Memcached的数据存储方式 /3 1.2 使用Memcached在内存中缓存数据 /3 1.2.1 【实战】在CentOS上部署Memcached /4 1.2.2 【实战】使用Telnet操作Memcached /6 1.2.3 【实战】使用Java操作Memcached /10 1.2.4 【实战】实现Memcached的客户端路由 /12 1.3 Memcached集群 /16 1.3.1 【实战】部署Memcached的“主主复制”集群 /16 1.3.2 【实战】使用KeepAlived实现Memcached的高可用 /19 第2章 Redis基础 /25 2.1 Redis入门 /25 2.1.1 缓存的架构 /26 2.1.2 Redis的优势 /27 2.1.3 Redis与其他Key-Value数据库有何不同 /27 2.1.4 一个典型的Redis应用案例――记录用户的登录次数,查询活跃用户 /27 2.2 Redis的安装和访问 /29 2.3 Redis的数据结构 /32 2.3.1 简单动态字符串 /32 2.3.2 跳跃表 /33 2.3.3 压缩列表 /35 2.3.4 整数集合 /36 2.3.5 字典 /37 2.3.6 快表 /38 2.3.7 Stream /40 2.3.8 HyperLogLog /42 2.3.9 RedisObject /43 2.4 Redis的存储结构 /43 2.5 键管理 /45 2.5.1 键管理的基本操作 /45 2.5.2 【实战】遍历键 /49 2.5.3 【实战】迁移键 /53 第3章 Redis高级特性及原理 /56 3.1 消息的发布与订阅 /56 3.1.1 “发布者-订阅者”模式 /56 3.1.2 “生产者-消费者”模式 /59 3.2 Redis的事务 /60 3.2.1 【实战】使用命令操作Redis的事务 /61 3.2.2 【实战】在事务操作中使用watch功能 /61 3.2.3 【实战】使用Java API操作Redis的事务 /62 3.3 数据持久化 /63 3.3.1 RDB持久化 /63 3.3.2 AOF持久化 /66 3.4 使用PipeLine优化请求的传递 /69 3.5 慢查询日志 /71 3.5.1 慢查询的配置参数 /72 3.5.2 【实战】管理和使用慢查询日志 /73 3.5.3 慢查询日志*佳实践 /74 3.6 Lua脚本编程语言 /75 3.6.1 Lua基础 /75 3.6.2 【实战】使用Lua脚本实现限流 /76 第4章 Redis集群与高可用 /79 4.1 Redis主从复制 /79 4.1.1 部署Redis主从复制 /80 4.1.2 Redis主从复制的源码剖析 /82 4.2 基于哨兵的高可用架构 /84 4.2.1 部署Redis哨兵 /84 4.2.2 哨兵的主要配置参数 /86 4.2.3 哨兵的工作原理 /87 4.3 Redis Cluster集群 /90 4.3.1 什么是Redis Cluster集群 /90 4.3.2 Redis Cluster集群的体系架构 /90 4.3.3 部署Redis Cluster集群 /92 4.3.4 【实战】操作与管理Redis Cluster集群 /96 4.3.5 【实战】实现Redis Cluster集群的代理分片 /101 4.4 Codis集群 /103 4.4.1 Codis集群的体系架构 /104 4.4.2 部署Codis集群 /105 4.4.3 【实战】基于Codis集群的主从复制 /109 4.4.4 【实战】基于Codis集群的数据分布式存储 /112 第5章 Redis故障诊断与优化 /115 5.1 监控Redis /115 5.1.1 监控Redis的内存 /115 5.1.2 监控Redis的吞吐量 /116 5.1.3 监控Redis的运行时信息 /116 5.1.4 监控Redis的延时 /117 5.2 删除策略和淘汰策略 /120 5.2.1 内存的删除策略 /120 5.2.2 内存的淘汰策略 /122 5.3 Hot Key /124 5.3.1 监控Hot Key /124 5.3.2 Hot Key的常见处理办法 /125 5.4 Big Key /125 5.5 缓存的更新策略 /126 5.5.1 “maxmemory-policy更新”策略 /126 5.5.2 “超时更新”策略 /126 5.5.3 “主动更新”策略 /126 5.6 缓存与数据库的数据一致性 /127 5.6.1 数据一致性案例分析 /127 5.6.2 延时双删策略 /128 5.6.3 异步更新缓存 /129 5.7 分布式锁 /129 5.8 Redis缓存的常见问题 /131 5.8.1 提高缓存命中率 /131 5.8.2 缓存预热 /131 5.8.3 缓存穿透 /132 5.8.4 缓存雪崩 /132 5.8.5 缓存击穿 /133 ==第2篇 基于文档的NoSQL数据库 第6章 MongoDB基础 /136 6.1 MongoDB简介 /136 6.2 部署和使用MongoDB /137 6.2.1 【实战】在CentOS上安装MongoDB 5.0 /137 6.2.2 【实战】使用配置文件启动MongoDB服务器 /139 6.2.3 【实战】使用JavaScript命令行工具mongoshell /141 6.2.4 【实战】使用MongoDB图形化工具MongoDB Compass /145 6.3 MongoDB中的数据类型 /148 6.3.1 ObjectId类型 /148 6.3.2 日期类型 /149 6.3.3 数值类型 /149 6.3.4 其他数据类型 /151 6.4 MongoDB的体系结构 /152 6.4.1 逻辑存储结构 /152 6.4.2 物理存储结构 /153 6.5 MongoDB的存储引擎 /154 6.5.1 WiredTiger存储引擎 /154 6.5.2 MMAP v1存储引擎 /159 6.5.3 In-Memory存储引擎 /161 6.6 MongoDB的日志――Journal日志 /163 第7章 操作MongoDB中的数据 /164 7.1 使用DML语句操作数据 /164 7.1.1 使用insert语句插入文档 /164 7.1.2 使用update语句更新文档 /166 7.1.3 使用delete语句删除文档 /167 7.1.4 批处理操作 /168 7.2 使用DQL语句查询数据 /169 7.2.1 【实战】基本查询 /169 7.2.2 【实战】查询嵌套的文档 /171 7.2.3 【实战】查询数组中的文档 /173 7.2.4 【实战】查询数组中嵌套的文档 /174 7.2.5 【实战】查询空值和缺失的列 /175 7.2.6 【实战】使用游标查询文档 /176 7.3 全文检索 /177 7.3.1 【实战】执行全文索引 /178 7.3.2 【实战】在全文检索中聚合数据 /179 7.4 地理空间查询 /181 7.5 聚合操作 /182 7.5.1 【实战】使用Pipeline方式聚合数据 /182 7.5.2 【实战】使用MapReduce方式聚合数据 /184 7.6 MongoDB中的事务 /189 第8章 MongoDB的数据建模 /190 8.1 数据库建模基础 /190 8.1.1 MongoDB的数据建模方式 /190 8.1.2 验证MongoDB的数据文档 /191 8.2 MongoDB数据模型设计 /195 8.2.1 文档的“一对一”关系模型 /195 8.2.2 文档的“一对多”关系模型 /196 8.2.3 文档的树型模型 /196 8.3 使用MongoDB的索引 /201 8.3.1 了解索引 /201 8.3.2 了解MongoDB中的索引 /202 8.3.3 【实战】在查询中使用单键索引 /205 8.3.4 【实战】在查询中使用多键索引 /206 8.3.5 【实战】在查询中使用复合索引 /207 8.3.6 【实战】在查询中使用过期索引 /210 8.3.7 【实战】在查询中使用全文索引 /212 8.3.8 【实战】在查询中使用地理空间索引 /213 第9章 MongoDB的管理 /216 9.1 管理MongoDB的运行 /216 9.1.1 【实战】启动MongoDB服务器 /216 9.1.2 【实战】停止MongoDB服务器 /218 9.2 MongoDB的安全机制 /219 9.2.1 了解MongoDB的用户认证机制 /219 9.2.2 【实战】启用MongoDB的用户认证机制 /219 9.2.3 【实战】在MongoDB中进行用户管理 /221 9.3 基于角色的访问控制 /223 9.3.1 了解MongoDB中的角色 /223 9.3.2 【实战】基于角色控制用户的访问 /224 9.4 MongoDB的审计功能 /227 9.4.1 与审计相关的参数 /227 9.4.2 【实战】审计功能举例 /227 9.5 监控MongoDB的运行 /229 9.5.1 【实战】通过命令行工具监控MongoDB /229 9.5.2 【实战】通过可视化工具Compass监控MongoDB /232 9.6 MongoDB的数据安全 /232 9.6.1 【实战】导入/导出MongoDB的数据 /232 9.6.2 【实战】备份/恢复MongoDB的数据 /235 第10章 MongoDB的集群 /238 10.1 基于MongoDB复制集实现主从 同步 /238 10.1.1 MongoDB复制集基础 /238 10.1.2 部署MongoDB复制集 /240 10.1.3 管理MongoDB复制集 /247 10.1.4 【实战】MongoDB复制集的选举机制 /253 10.1.5 【实战】Oplog日志和数据的同步 /255 10.1.6 【实战】MongoDB的事务 /257 10.2 基于MongoDB分片实现数据的分布式存储 /261 10.2.1 MongoDB分片架构 /261 10.2.2 【实战】搭建MongoDB分片架构 /262 10.2.3 【实战】查看配置服务器 /268 10.2.4 片键的选择 /270 ==第3篇 列式存储NoSQL数据库 第11章 HBase基础 /274 11.1 大数据基础 /274 11.1.1 大数据的基本概念和特性 /274 11.1.2 大数据平台要解决的核心问题 /276 11.1.3 数据仓库与大数据 /278 11.1.4 Hadoop生态圈 /279 11.2 BigTable(大表)与HBase的数据模型 /281 11.3 HBase的体系架构 /283 11.3.1 HMaster /284 11.3.2 Region Server /284 11.3.3 ZooKeeper /285 11.4 部署Hadoop环境 /286 11.4.1 部署前的准备 /287 11.4.2 Hadoop的目录结构 /289 11.4.3 【实战】部署Hadoop伪分布模式 /290 11.4.4 【实战】部署Hadoop全分布模式 /295 第12章 部署与操作HBase /299 12.1 在Linux上部署HBase环境 /299 12.1.1 部署HBase的本地模式 /299 12.1.2 部署HBase的伪分布模式 /301 12.1.3 部署HBase的全分布模式 /303 12.1.4 部署HBase的高可用模式 /305 12.2 使用命令行操作HBase /307 12.2.1 【实战】基础操作 /307 12.2.2 【实战】DDL操作 /308 12.2.3 【实战】DML操作 /311 12.3 HBase的Java API /313 12.3.1 【实战】使用Java API操作HBase /313 12.3.2 【实战】使用HBase的过滤器过滤数据 /317 12.3.3 【实战】使用MapReduce处理存储在HBase中的数据 /322 12.4 HBase的图形工具――Web控制台 /325 第13章 HBase原理剖析 /327 13.1 了解HBase的存储结构 /327 13.1.1 HBase的逻辑存储结构 /328 13.1.2 HBase的物理存储结构 /329 13.1.3 LSM树与Compaction机制 /333 13.2 HBase读数据的流程 /335 13.2.1 meta表与读取过程 /335 13.2.2 读合并与读放大 /337 13.3 HBase写数据的流程 /338 13.4 负载均衡和数据分发的*基本单元Region的管理 /339 13.4.1 Region的状态 /339 13.4.2 Region的拆分 /341 13.4.3 Region的合并 /342 13.4.4 Region拆分的影响 /342 13.5 HBase的内存刷新策略 /343 13.5.1 Region Server级别的刷新策略 /343 13.5.2 Region级别的刷新策略 /344 13.5.3 按照时间决定的刷新策略 /345 13.5.4 依据WAL文件数量的刷新策略 /345 13.6 了解HBase的Rowkey /346 13.6.1 Rowkey的设计原则 /346 13.6.2 HBase表的热点 /347 第14章 HBase的高级特性 /348 14.1 【实战】使用多版本保存数据 /348 14.2 【实战】使用HBase的快照 /350 14.3 【实战】使用Bulk Loading方式导入数据 /352 14.4 HBase的访问控制 /354 14.4.1 了解HBase的用户权限管理 /354 14.4.2 【实战】HBase的用户权限管理 /355 14.5 备份HBase的数据 /357 14.5.1 【实战】使用Export/Import备份数据 /358 14.5.2 【实战】使用CopyTable备份数据 /360 14.6 HBase的计数器 /361 14.6.1 【实战】在hbase shell中使用计数器 /361 14.6.2 【实战】在Java API中使用单计数器 /362 14.6.3 【实战】在Java API中使用多计数器 /363 14.7 布隆过滤器 /364 14.7.1 布隆过滤器的工作原理 /365 14.7.2 HBase中的布隆过滤器 /366 14.8 【实战】HBase的主从复制 /366 14.9 在HBase中使用SQL /368 14.9.1 安装和使用Phoenix /369 14.9.2 Phoenix与HBase的映射关系 /371 14.9.3 Phoenix中的索引 /372 14.9.4 【实战】通过JDBC程序访问Phoniex中的数据 /376 第15章 监控与优化HBase集群 /380 15.1 HBase集群的监控指标 /380 15.1.1 主机监控指标 /381 15.1.2 JVM监控指标 /381 15.1.3 HMaster监控指标 /383 15.1.4 Region Server监控指标 /384 15.2 利用可视化工具监控HBase集群 /387 15.2.1 【实战】使用Ganglia监控HBase集群 /387 15.2.2 【实战】使用JConsole监控HBase集群 /391 15.2.3 【实战】使用JVisualVM监控HBase集群 /394 15.3 HBase集群的优化 /397 15.3.1 优化HBase的数据管理 /397 15.3.2 优化HBase的客户端 /401 15.3.3 优化HBase的配置 /402
展开全部

作者简介

赵渝强 曾任京东大学大数据学院院长、Oracle(中国)高级技术顾问 现专职从事培训工作

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航