如果我使用remove(key)
删除Cassandra db中ColumnFamily中的每个键,那么如果我使用get_range_slices
,那么行仍然存在,但没有列。我怎样才能删除整行?当我删除Cassandra中的行时,我只删除列而不是行键
回答
就一直有同样的问题,我发现:
这已被固定在0.7 (https://issues.apache.org/jira/browse/CASSANDRA-1027)。 而回迁到0.6.3
Why do deleted keys show up during range scans?
因为get_range_slice说,“应用此谓词来定行的范围,”这意味着,如果预测结果是空的,我们必须包括该行键空的结果。即使没有执行删除操作,执行这样的查询返回某些或所有键的空列列表也是完全有效的。
感谢,并没有解决,以避免? – Matroska 2010-06-05 21:06:30
根据http://wiki.apache.org/cassandra/DistributedDeletes,每个GCGraceSeconds都会清理墓碑,默认为10天。 GCGraceSeconds应该是您获得故障节点备份并运行所需的最长时间。对于单个实例,可以将GCGraceSeconds设置为0,然后将自动删除墓碑。 – 2013-04-04 05:05:46
我与卡桑德拉0.63测试,问题还是一样。我不认为这个错误修复是为了摆脱删除的行ID。见
http://wiki.apache.org/cassandra/FAQ#range_ghosts
以获取更多信息。
Cassandra按预期使用分布式删除。
因此,删除操作不能随便擦出来的数据 的所有痕迹被立即删除:如果我们这样做,和副本没有收到 删除操作,当它再次可用它将把 确实收到删除的副本,因为错过了更新并写入 ,并对其进行修复!因此,而不是删除删除数据, 卡桑德拉用一个特殊的值,即墓碑替代它。然后,可以将该墓碑传播到错过了初始的删除请求的副本。
- 1. 从cassandra cli删除行键
- 2. 当我按下按钮时从MySQL表中删除行删除
- 3. 当我按下删除按钮时如何删除UITableView行?
- 4. 当子集或删除行只删除一个列的值
- 5. 当我删除SQL Server中的父行时,如何删除子行?
- 6. 我发现在gridview中删除的行当我按回车键
- 7. DataGridView删除行只删除备用行
- 8. 我如何允许我的NSFetchedResultsController删除行而不是用户?
- 9. 为什么当我在tableview中删除一行时,它会删除多行?
- 10. 两行正在删除,而不是一行我的代码
- 11. 如何使用非键列从Cassandra列族中删除行?
- 12. 当我从我的数据库删除行主键增加
- 13. Cassandra删除本地同行
- 14. jQuery删除表行不删除rowspan列
- 15. 我们如何发送删除行动中不是关键字
- 16. 我的代码是删除我的数据库中的所有行,而不是一次只有一行
- 17. UISearchDisplayController删除行不删除
- 18. NHibernate删除我的行
- 19. 如何删除行而不删除其_ID列值?
- 20. 如何从行对象中删除行,而不是从数据库中删除?
- 21. 当我想使用数据库约束,但只标记为删除而不是删除时该怎么办?
- 22. 用删除键删除JavaFX表行
- 23. silverlight用删除键删除行
- 24. 我的NSMutableDictionary删除对象当我删除IOS中的NSMutableArray?
- 25. 当某些列为空时删除行
- 26. 当行匹配条件时删除列
- 27. 当我删除`cv ::`
- 28. 删除上面我找到“删除”的行上的一行
- 29. 当我删除它时,UISearchController不会删除结果
- 30. 动态删除行不会工作,只删除第一行而不删除其他人
-1这不是“固定”的,票据刚被“解决”,解决方法是“稍后可能”。根据@ Schildmeijer的回答,这是预期的行为,而不是bug。 – user359996 2012-03-19 00:19:20
同意!请参阅下面的回复。 – 2013-04-04 05:06:54