我有一个关于将数据插入到Cassandra的问题。无法将数据插入Cassandra./
我有一段时间后,我已经从列家族(CF)中删除了一个行键,我试图用相同的rowkey插入数据。
该程序得到执行,但当我尝试从命令行使用rowkey访问数据时,我得到零结果。
这是怎么发生的?我知道每个删除的键都有一些名为“墓碑”的东西。
但我试图在压缩后插入数据。
我已经预先设置我<GCGraceSeconds> 0 </GCGraceSeconds>.
感谢。
我有一个关于将数据插入到Cassandra的问题。无法将数据插入Cassandra./
我有一段时间后,我已经从列家族(CF)中删除了一个行键,我试图用相同的rowkey插入数据。
该程序得到执行,但当我尝试从命令行使用rowkey访问数据时,我得到零结果。
这是怎么发生的?我知道每个删除的键都有一些名为“墓碑”的东西。
但我试图在压缩后插入数据。
我已经预先设置我<GCGraceSeconds> 0 </GCGraceSeconds>.
感谢。
可能您的删除发生的时间戳大于您稍后插入的时间戳。
我看到了同样的问题,但我一直无法调试。目前我正在检查http://wiki.apache.org/cassandra/FAQ#range_ghosts以查看是否导致问题。也许它也会帮助你。
你有多少个节点?他们的时钟是否准确同步?如果不是,这可能会导致不一致。
是的..我正在用非常高的时间戳删除它。我能否请知道为什么我不能在更高的时间戳删除时插入数据? – Sandeep 2010-06-25 16:09:55
@Sandeep现在已经很晚了,但如果其他人来这里并且奇怪,那么答案是因为墓碑,正如你所建议的那样。 Cassandra通过插入墓碑标记进行删除操作,该标记具有与列一样的时间戳。如果(行或列)逻辑删除的时间戳比对应列的时间戳更高,则逻辑删除将胜出,并且列(或行)被视为不存在。 – 2012-05-03 19:13:06