Cassandra1.2文档学习(11)—— 删除数据
2014-01-30 00:12
302 查看
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_about_deletes_c.html
相比于传统的关系型数据库,Cassandra采用了另一种方式去删除数据。关系型数据库会花时间扫描并删除过期数据或者管理员可能需要每月分区过期数据,例如,让数据库更快一些。在Cassandra中,你不需要移除过期的数据。
关于Cassandra删除数据有两个因素需要记住:
•Cassandra并不会立即删除磁盘上的数据。
•已删除的数据可能会再次出现如果不定期运行节点的修复。
当SSTable文件被写入后是不可写的。因此,一个被删除的column不会被立马移除。代替地,一个墓碑会被写入去表明新的column状态。column会被一个墓碑标记存活一段被配置的时间。当这个时间到了,压紧的过程会永久性的删除column。
用墓碑标记一个被删除的column告诉Cassandra发送一个删除请求给副本在删除的时间删除数据。如果副本在宽限期内恢复了,他最终会受到删除请求。然而,如果一个节点宕机的时间超过了宽限期,节点可能也会错过删除请求,副本会在恢复之后删除数据。为了防止被删除的数据重新出现,管理员应该定期(通常是十天)在节点运行常规的节点修复。
相比于传统的关系型数据库,Cassandra采用了另一种方式去删除数据。关系型数据库会花时间扫描并删除过期数据或者管理员可能需要每月分区过期数据,例如,让数据库更快一些。在Cassandra中,你不需要移除过期的数据。
关于Cassandra删除数据有两个因素需要记住:
•Cassandra并不会立即删除磁盘上的数据。
•已删除的数据可能会再次出现如果不定期运行节点的修复。
当SSTable文件被写入后是不可写的。因此,一个被删除的column不会被立马移除。代替地,一个墓碑会被写入去表明新的column状态。column会被一个墓碑标记存活一段被配置的时间。当这个时间到了,压紧的过程会永久性的删除column。
用墓碑标记一个被删除的column告诉Cassandra发送一个删除请求给副本在删除的时间删除数据。如果副本在宽限期内恢复了,他最终会受到删除请求。然而,如果一个节点宕机的时间超过了宽限期,节点可能也会错过删除请求,副本会在恢复之后删除数据。为了防止被删除的数据重新出现,管理员应该定期(通常是十天)在节点运行常规的节点修复。
相关文章推荐
- Cassandra1.2文档学习(9)—— 数据写入
- Cassandra1.2文档学习(17)—— CQL数据模型(上)
- Cassandra1.2文档学习(3)——数据分配和复制
- Cassandra1.2文档学习(6)—— 客户端数据请求
- Cassandra1.2文档学习(8)—— 数据管理
- Cassandra1.2文档学习(18)—— CQL数据模型(下)
- Cassandra1.2文档学习(13)—— 数据读取
- Cassandra1.2文档学习(12)—— hint机制
- Cassandra1.2文档学习(15)—— 配置数据一致性
- Cassandra1.2文档学习(4)——分区器
- Cassandra1.2文档学习(19)—— CQL索引
- Cassandra1.2文档学习(16)—— 模式的变化
- Cassandra1.2文档学习解读计划——为自己鼓劲
- Cassandra1.2文档学习(7)—— 规划集群部署
- MongoDB学习六--MongoDB删除数据文档
- Cassandra1.2文档学习(14)—— 事务和并发控制
- Cassandra1.2文档学习(5)—— Snitch
- Cassandra1.2文档学习(1)——Cassandra基本说明
- Cassandra1.2文档学习(2)——节点间通信协议之gossip协议
- cassandra新增、更新、删除数据。