搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
Cassandra权威指南(第3版)
0.00     定价 ¥ 128.00
图书来源: 浙江图书馆(由浙江新华配书)
此书还可采购25本,持证读者免费借回家
  • 配送范围:
    浙江省内
  • ISBN:
    9787519866433
  • 作      者:
    作者:(美)杰夫·卡彭特//埃本·休伊特|责编:刘炽|译者:林琪
  • 出 版 社 :
    中国电力出版社
  • 出版日期:
    2022-05-01
收藏
编辑推荐
这本书告诉你为什么要在你的应用中使用Cassandra以及如何使用。
想象一下,如果解决了伸缩性问题,你能做些什么。利用这本实用指南,你会了解Cassandra数据库管理系统如何处理数百TB的数据,同时仍保持跨多个数据中心的高可用性。这一版针对Cassandra 4.0做了全面更新,提供了生产环境中使用这个数据库所需的技术细节和实用示例。
本书作者展示了Cassandra非关系型设计的诸多优点,尤其对数据建模特别关注。如果你是一个开发人员、DBA或应用架构师,着力解决数据库扩展问题或应用的前瞻性问题,这个指南将帮助你充分利用Cassandra的高速度和灵活性。
“这本书会告诉你为什么要在你的应用中使用Cassandra以及如何使用。希望你能用它创造奇迹,获得成功。”
――Patrick McFadin
DataStax开发关系部副总裁
展开
作者简介
Jeff Carpenter是DataStax的开发布道师总监,利用他在系统架构、微服务和Apache Cassandra等领域的工作背景,Jeff Carpenter着力帮助开发人员和运维工程师构建可扩展、可靠且安全的分布式系统。
Eben Hewitt是Sabre Hospitality的CTO和首席架构师,他负责技术战略,同时负责设计大规模关键任务系统,并领导团队构建这些系统。他曾任全球Q最ZZZ大酒店集团之一的CTO,另外曾担任过O’Reilly Media的CIO。
展开
内容介绍
想象一下,如果解决了伸缩性问题,你能做些什么。利用这本实用指南,你会了解Cassandra数据库管理系统如何处理数百TB的数据,同时仍保持跨多个数据中心的高可用性。这一版针对Cassandra 4.0做了全面更新,提供了生产环境中使用这个数据库所需的技术细节和实用示例。 本书作者展示了Cassandra非关系型设计的诸多优点,尤其对数据建模特别关注。如果你是一个开发人员、DBA或应用架构师,着力解决数据库扩展问题或应用的前瞻性问题,这个指南将帮助你充分利用Cassandra的高速度和灵活性。 使用Cassandra查询语言(CQL)和cqlsh(CQL shell)。 创建一个实用的数据模型,并与等价关系型模型比较。 使用客户端驱动程序设计和开发应用。 研究集群拓朴,了解节点间如何交换数据。 维持集群的高性能水平。 现场部署、云环境部署或利用Docker和Kubernetes部署Cassandra。 Cassandra与Spark、Kafka、Elasticsearch、Solr和Lucene集成。
展开
目录
目录
序 .1
前言 .3
第1 章 超越关系型数据库 13
1.1 关系型数据库有什么问题? 13
1.2 关系型数据库速览 18
1.2.1 事务、ACID 性和两段提交 19
1.2.2 模式 21
1.2.3 分片和无共享架构 22
1.3 网络规模 25
1.4 NoSQL 的兴起 26
1.5 小结 29
第2 章 Cassandra 简介 30
2.1 Cassandra 电梯间演讲 30
2.1.1 50 字Cassandra 介绍 . 30
2.1.2 分布式与去中心化 31
2.1.3 弹性可扩展 . 32
2.1.4 高可用性和容错性 33
2.1.5 可调一致性 . 33
2.1.6 Brewer 的CAP 理论 36
2.1.7 面向行 40
2.1.8 高性能 42
2.2 Cassandra 从哪里来? 42
2.3 Cassandra 适合我的项目吗? 44
2.3.1 大规模部署 . 44
2.3.2 大量写操作、统计和分析 44
2.3.3 多地分布 45
2.3.4 混合云和多云部署 45
2.4 参与其中 45
2.5 小结 48
第3 章 安装Cassandra 49
3.1 安装Apache 发布版本 49
3.1.1 解压缩下载包 50
3.1.2 里面有什么? . 50
3.2 从源码构建 . 51
3.3 运行Cassandra . 53
3.3.1 设置环境 54
3.3.2 启动服务器 . 55
3.3.3 停止Cassandra . 57
3.4 其他Cassandra 发布版本 . 58
3.5 运行CQL Shell . 59
3.6 基本cqlsh 命令 . 60
3.6.1 cqlsh 帮助 61
3.6.2 cqlsh 中描述环境 . 62
3.6.3 cqlsh 中创建键空间和表 . 62
3.6.4 cqlsh 中读写数据 . 66
3.7 Docker 中运行Cassandra . 69
3.8 小结 70
第4 章 Cassandra 查询语言 71
4.1 关系型数据模型 71
4.2 Cassandra 的数据模型 72
4.2.1 集群 75
4.2.2 键空间 76
4.2.3 表 . 76
4.2.4 列 . 80
4.3 CQL 类型 . 83
4.3.1 数值数据类型 83
4.3.2 文本数据类型 84
4.3.3 时间和标识数据类型 . 85
4.3.4 其他简单数据类型 87
4.3.5 集合 89
4.3.6 元组 93
4.3.7 用户自定义类型 93
4.4 小结 97
第5 章 数据建模 98
5.1 概念数据建模 98
5.2 RDBMS 设计 . 99
5.3 定义应用查询 . 103
5.4 逻辑数据建模 . 105
5.4.1 酒店逻辑数据模型 106
5.4.2 预订逻辑数据模型 109
5.5 物理数据建模 . 110
5.5.1 酒店物理数据模型 112
5.5.2 预订物理数据模型 113
5.6 评估和改进 114
5.6.1 计算分区大小 . 114
5.6.2 计算磁盘上的大小 115
5.6.3 划分大分区 117
5.7 定义数据库模式 118
5.8 小结 . 123
第6 章 Cassandra 架构 . 124
6.1 数据中心和机架 124
6.2 Gossip 和故障检测 125
6.3 Snitch . 128
6.4 环和令牌 129
6.5 虚拟节点 130
6.6 分区器 131
6.7 复制策略 132
6.8 一致性级别 133
6.9 查询和协调器节点 134
6.10 提示移交 . 135
6.11 逆熵、修复和Merkle 树 . 137
6.12 轻量级事务和Paxos . 138
6.13 Memtable、SSTable 和提交日志 140
6.14 布隆过滤器 143
6.15 缓存 143
6.16 合并 144
6.17 删除和墓碑 146
6.18 管理器和服务 147
6.18.1 Cassandra 守护进程 147
6.18.2 存储引擎 . 147
6.18.3 存储服务 . 148
6.18.4 存储代理 . 149
6.18.5 消息传递服务 149
6.18.6 流管理器 . 149
6.18.7 CQL 原生传输服务器 150
6.19 系统键空间 150
6.20 小结 153
第7 章 设计使用Cassandra 的应用 . 154
7.1 酒店应用设计 . 154
7.1.1 Cassandra 和微服务架构 154
7.1.2 一个酒店应用的微服务架构 156
7.1.3 识别限界上下文 157
7.1.4 识别服务 157
7.1.5 设计微服务持久存储 159
7.2 扩展设计 162
7.2.1 二级索引 163
7.2.2 物化视图 167
7.3 预订服务:一个示例微服务 171
7.4 部署和集成问题 172
7.4.1 服务、键空间和集群 172
7.4.2 数据中心和负载平衡 173
7.4.3 微服务间的交互 173
7.5 小结 . 175
第8 章 使用驱动程序开发应用 176
8.1 DataStax Java 驱动程序 . 177
8.1.1 开发环境配置 . 178
8.1.2 连接集群 179
8.1.3 语句 . 181
8.1.4 简单语句 181
8.1.5 准备语句 183
8.1.6 查询生成器 185
8.1.7 对象映射器 187
8.1.8 异步执行 191
8.1.9 驱动程序配置 . 193
8.1.10 元数据 . 200
8.1.11 调试和监控 202
8.2 DataStax Python 驱动程序 203
8.3 DataStax Node.js 驱动程序 204
8.4 DataStax C# 驱动程序 205
8.5 其他Cassandra 驱动程序 205
8.6 小结 . 207
第9 章 读写数据 208
9.1 写 208
9.1.1 写一致性级别 . 208
9.1.2 Cassandra 写路径 210
9.1.3 文件写入磁盘 . 212
9.1.4 轻量级事务 215
9.1.5 批处理 218
9.2 读 221
9.2.1 读一致性级别 . 221
9.2.2 Cassandra 读路径 223
9.2.3 读修复 225
9.2.4 区间查询、排序和过滤 . 228
9.2.5 分页 . 231
9.3 删除 . 233
9.4 小结 . 236
第10 章 配置和部署Cassandra . 237
10.1 Cassandra 集群管理器 . 237
10.1.1 创建集群 . 238
10.1.2 为集群增加节点 . 241
10.1.3 动态加入环 243
10.2 节点配置 . 244
10.2.1 种子节点 . 244
10.2.2 Snitch 245
10.2.3 分区器 . 247
10.2.4 令牌和虚拟节点 . 249
10.2.5 网络接口 . 250
10.2.6 数据存储 . 251
10.2.7 启动和JVM 设置 253
10.3 规划集群部署 254
10.3.1 集群拓扑和复制策略 255
10.3.2 确定集群规模 258
10.3.3 选择实例 . 259
10.3.4 存储 259
10.3.5 网络 260
10.4 云部署 . 261
10.4.1 Amazon Web 服务 262
10.4.2 Google 云平台 . 265
10.4.3 Microsoft Azure 266
10.5 小结 266
第11 章 监控 268
11.1 用JMX 监控Cassandra 268
11.2 Cassandra 的MBean . 271
11.2.1 数据库MBean . 272
11.2.2 集群相关MBean . 276
11.2.3 内部MBean 278
11.3 用nodetool 监控 . 279
11.3.1 获得集群信息 280
11.3.2 获得统计信息 283
11.4 虚拟表 285
11.4.1 系统虚拟模式 286
11.4.2 系统视图 . 287
11.5 指标 290
11.6 日志 292
11.6.1 检查日志文件 295
11.6.2 全量查询日志 296
11.7 小结 298
第12 章 维护 . 299
12.1 健康检查 . 299
12.2 常见维护任务 300
12.2.1 刷新输出 . 300
12.2.2 清理 301
12.2.3 修复 302
12.2.4 重建索引 . 307
12.2.5 移动令牌 . 308
12.3 增加节点 . 308
12.3.1 向已有的数据中心增加节点 . 308
12.3.2 向集群增加数据中心 309
12.4 处理节点故障 311
12.4.1 修复失败节点 311
12.4.2 替换节点 . 312
12.4.3 移除节点 . 313
12.5 升级Cassandra . 317
12.6 备份和恢复 319
12.6.1 建立快照 . 320
12.6.2 清除快照 . 321
12.6.3 启用增量备份 322
12.6.4 从快照恢复 322
12.7 SSTable 实用工具 323
12.8 维护工具 . 325
12.8.1 Netflix Priam 325
12.8.2 DataStax OpsCenter 325
12.8.3 Cassandra Sidecars . 325
12.8.4 Cassandra Kubernetes Operators . 327
12.9 小结 330
第13 章 性能调优 . 331
13.1 管理性能 . 331
13.1.1 设置性能目标 331
13.1.2 基准测试和压力测试 333
13.1.3 监控性能 . 338
13.1.4 分析性能问题 340
13.1.5 跟踪 340
13.1.6 调优方法 . 343
13.2 缓存 344
13.2.1 键缓存 . 344
13.2.2 行缓存 . 345
13.2.3 块缓存 . 346
13.2.4 计数器缓存 347
13.2.5 保存的缓存设置 . 347
13.3 Memtable 348
13.4 提交日志 . 349
13.5 SSTables . 350
13.6 提示移交 . 351
13.7 合并 352
13.8 并发和线程 356
13.9 网络和超时 357
13.10 JVM 设置 . 359
13.10.1 内存 360
13.10.2 垃圾回收 360
13.11 小结 364
第14 章 安全 . 365
14.1 认证和授权 367
14.1.1 密码认证器 367
14.1.2 使用CassandraAuthorizer 371
14.1.3 基于角色的访问控制 373
14.2 加密 375
14.2.1 SSL、TLS 和证书 . 376
14.2.2 节点间加密 379
14.2.3 客户端- 节点间加密 . 381
14.3 JMX 安全性 382
14.3.1 保护JMX 访问安全 383
14.3.2 安全MBean 385
14.4 审计日志 . 386
14.5 小结 389
第15 章 迁移和集成 390
15.1 了解何时迁移 390
15.2 调整数据模型 391
15.2.1 转换实体 . 393
15.2.2 转换关系 . 394
15.3 调整应用 . 396
15.3.1 重构数据访问 397
15.3.2 维护一致性 398
15.3.3 迁移存储过程 400
15.4 规划部署 . 405
15.5 迁移数据 . 406
15.5.1 零停机迁移 406
15.5.2 批量加载 . 407
15.6 常见集成 . 409
15.6 1 使用Apache Kafka 管理数据流 409
15.6.2 用Apache Lucene、SOLR 和Elasticsearch 搜索 412
15.6.3 使用Apache Spark 分析数据 413
15.7 小结 421
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证