当前位置:首页 > 工业技术
Cassandra实战
Cassandra实战

Cassandra实战PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:郭鹏著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2011
  • ISBN:9787111341642
  • 页数:303 页
图书介绍:本书内容全面,基于Cassandra最新版撰写,系统地讲解了Cassandra的所有功能特性和使用方法;实战性强,不仅包含大量示例代码,而且还设计了一个完整的在线交易系统实例;有一定的深度,不仅结合源代码分析了Cassandra的底层机制和工作原理,而且还精心总结了一些关于Cassandra的最佳实践。
《Cassandra实战》目录
标签:实战

第1章 认识NoSQL 1

1.1 NoSQL的起源和发展现状 2

1.2为什么要使用NoSQL 2

1.3开源NoSQL产品介绍 3

1.3.1 KeyValue的NoSQL数据库 3

1.3.2面向文档的NoSQL数据库 4

1.3.3面向列的NoSQL数据库 5

1.3.4面向图的NoSQL数据库 6

1.4本章小结 7

第2章Cassandra快速入门 9

2.1在Windows环境运行单机版Cassandra 10

2.1.1配置JRE 10

2.1.2配置运行Cassandra 0.6x 11

2.1.3配置运行Cassandra 0.7 x 12

2.2在Linux环境运行单机版Cassandra 14

2.2.1配置JRE 14

2.2.2配置运行Cassandra 0.6 x 15

2.2.3配置运行Cassandra 0.7 x 16

2.3 Cassandra的数据模型 18

2.3.1 Column 18

2.3.2 SuperColumn 18

2.3.3 ColumnFamily 19

2.3.4 Keyspace 20

2.4 Cassandra的数据排序规则 20

2.5配置数据类型 22

2.6使用命令行工具与Cassandra交互 23

2.6.1与Cassandra 0.6 x进行交互 23

2.6.2与Cassandra 0.7 x进行交互 24

2.7本章小结 26

第3章 理解Cassandra编程接口 27

3.1多语言服务开发框架Thrift 28

3.2 Cassandra的数据类型 28

3.2.1 Column 28

3.2.2 SuperColumn 29

3.2.3 ColumnOrSuperColumn 29

3.2.4 ColumnParent 29

3.2.5 ColumnPath 30

3.2.6 SliceRange 30

3.2.7 SlicePredicate 30

3.2.8 Deletion 31

3.2.9 Mutation 31

3.2.10 KeyRange 31

3.2.11 KeySlice 32

3.2.12 TokenRange 32

3.2.13 AuthenticationRequest 32

3.2.14 ConsistencyLevel 33

3.2.15 NotFoundException 33

3.2.16 InvalidRequestException 34

3.2.17 UnavailableException 34

3.2.18 TimedOutException 34

3.2.19 AuthenticationException 34

3.2.20 AuthorizationException 35

3.3 Cassandra的编程接口 35

3.3.1 get 35

3.3.2 get_slice 36

3.3.3 multiget_slice 36

3.3.4 get_count 37

3.3.5 get_range_slices 37

3.5.6 insert 38

3.3.7 remove 38

3.3.8 batch_mutate 39

3.3.9 describe_keyspaces 39

3.3.10 describe_keyspace 39

3.3.11 describe_cluster_name 40

3.3.12 describe_version 40

3.3.13 describe_ring 40

3.4 Cassandra0.7 x版本新增功能 40

3.4.1二级索引 40

3.4.2动态修改Schema 44

3.4.3自动清除过期数据 46

3.5本章小结 47

第4章 基于Cassandra的在线交易系统 49

4.1需求分析 50

4.2数据模型设计 50

4.2.1 Seller 50

4.2.2 Buyer 51

4.2.3 Product 51

4.2.4 ProductCategory 52

4.2.5 Comment 53

4.3编码实现 54

4.3.1修改Keyspace设置 54

4.3.2建立Eclipse项目 54

4.3.3实体对象实现 55

4.3.4 Cassandra数据操作接口实现 56

4.4系统功能验证 60

4.4.1 BuyerDao功能验证 60

4.4.2 SellerDao功能验证 61

4.4.3 ProductDao功能验证 62

4.5迁移到Cassandra0.7x 65

4.5.1建立Eclipse项目 65

4.5.2修改编译错误代码 65

4.5.3新增Schema在线定义功能 69

4.5.4功能验证 70

4.6本章小结 71

第5章Cassandra的集群机制 73

5.1一致性哈希 74

5.1.1理解一致性哈希 74

5.1.2一致性哈希在Cassandra中的应用 77

5.2 Gossip:集群节点之间的通信协议 81

5.2.1 FailureDetector 82

5.2.2 Gossiper 83

5.3集群的数据备份机制 88

5.3.1 EndpointSnitch 88

5.3.2 ReplicationStrategy 91

5.4集群状态变化的处理机制 96

5.4.1 StorageLoadBalancer 96

5.4.2 StorageService 97

5.4.3 MigrationManager 98

5.5本章小结 99

第6章Cassandra的内部数据存储结构 101

6.1 Cassandra中的数据存放规则 102

6.2 Commilog 102

6.3 Memtable 103

6.4 SSTable 105

6.4.1 Filter文件 105

6.4.2 Index文件 107

6.4.3 Data文件 109

6.4.4 Statistics文件 113

6.5系统表空间 113

6.6本章小结 114

第7章Cassandra的数据更新机制 115

7.1数据更新流程 116

7.2集群数据更新策略 116

7.2.1 ANY 120

7.2.2 ONE 121

7.2.3 QUORUM 121

7.2.4 LOCAL_QUORUM 121

7.2.5 EACH_QUORUM 121

7.2.6 ALL 121

7.3二级索引 122

7.3.1为什么需要二级索引 122

7.3.2 Cassandra二级索引更新过程 123

7.4本章小结 124

第8章Cassandra的数据读取机制 125

8.1数据读取流程 126

8.1.1弱读取 126

8.1.2强读取 128

8.2集群数据读取策略 131

8.2.1 ONE 132

8.2.2 QUORUM 132

8.2.3 LOCAL_QUORUM 132

8.2.4 EACH_QUORUM 132

8.2.5 ALL 133

8.3读修复 133

8.4数据缓存 134

8.4.1 RowCache 134

8.4.2 KeyCache 134

8.5二级索引 135

8.6本章小结 135

第9章Cassandra的数据压缩机制 137

9.1为什么要进行数据压缩 138

9.2如何控制数据压缩 138

9.3数据压缩流程 139

9.4维护Cassandra中的数据 143

9.4.1数据清理压缩 143

9.4.2数据一致性校验压缩 144

9.5本章小结 144

第10章Cassandra的启动流程 145

10.1 Cassandra启动脚本 146

10.2 Cassandra启动流程 149

10.2.1配置log4j 150

10.2.2读取校验配置文件信息 150

10.2.3加载所有的数据文件 152

10.2.4修复数据 154

10.2.5启动Gossiper服务 155

10.2.6判断是否需要进行Bootstrap操作 156

10.2.7监听Thrift端口,提供Thrift服务 157

10.3本章小结 157

第11章 在分布式环境中使用的Cassandra 159

11.1在Linux环境中搭建与使用Cassandra集群 160

11.1.1配置JRE 160

11.1.2部署Cassandra可执行文件 161

11.1.3修改Cassandra配置文件 162

11.1.4启动Cassandra 163

11.2 Cassandra运行配置项详解 166

11.3 Cassandra集群的运行和维护 175

11.3.1查看集群的运行情况 176

11.3.2添加节点 179

11.3.3删除节点 181

11.3.4移动节点 183

11.3.5数据维护 185

11.4本章小结 187

第12章Cassandra与Hadoop的整合 189

12.1 Hadoop快速入门 190

12.1.1 Hadoop简介 190

12.1.2 HDFS 190

12.1.3 MapReduce 192

12.1.4配置单机版Hadoop 194

12.1.5编写MapReduce程序 195

12.2为什么要整合Cassandra与Hadoop 200

12.3使用MapReduce导入数据到Cassandra中 200

12.4将Cassandra中的数据作为MapReduce输入 205

12.5本章小结 209

第13章Cassandra最佳实践 211

13.1避免Cassandra自身的限制 212

13.1.1不要盲目使用Super Column 212

13.1.2硬盘的容量大小限制 212

13.1.3注意系统大小限制 212

13.2数据压缩策略 213

13.3使用高级的客户端 213

13.3.1 Pycassa 213

13.3.2 Hector 215

13.3.3 FluentCassandra 218

13.3.4 Cassandra 220

13.3.5 phpcassa 221

13.4负载均衡 222

13.4.1随机选取 222

13.4.2缓存集群信息 222

13.5谨慎使用二级索引 223

13.6通过JMX监测Cassandra 223

13.7调整JVM启动参数 229

13.8使用适合的系统配置参数 231

13.9本章小结 232

附录A在Eclipse中修改Cassandra源代码 233

附录B CassSeller代码 243

附录C CassSeller-0.7代码 273

返回顶部