需要从 cassandra 中删除的行键中添加数据
Posted
技术标签:
【中文标题】需要从 cassandra 中删除的行键中添加数据【英文标题】:Need to add data from deleted rowkey in cassandra 【发布时间】:2014-08-14 08:35:22 【问题描述】:不幸的是我删除了行键。
例如:从表名中删除 key='rowkey';
删除行键后,所有数据都被删除。
注意:该表为计数器表。
CREATE TABLE tablename (
KEY text PRIMARY KEY
) WITH
comment='' AND
comparator=text AND
read_repair_chance=0.100000 AND
gc_grace_seconds=864000 AND
default_validation=counter AND
min_compaction_threshold=4 AND
max_compaction_threshold=32 AND
replicate_on_write='true' AND
compaction_strategy_class='SizeTieredCompactionStrategy' AND
compression_parameters:sstable_compression='SnappyCompressor';
删除行键后,我无法插入相同键的数据。我可以更新其他键的数据。
例如:更新表名 set new = new + 1 where key='2014';
我没有找到 2014 年的任何条目
预期:我需要为已删除的行键添加数据。
【问题讨论】:
【参考方案1】:计数器移除受到严格限制:来自 Counters Wiki 文档:
如果您删除一行计数器,则增加该行中的任何计数器 (删除之前存在的)将导致未确定的 行为。
您可以在counters wiki page 上找到更多信息。
顺便说一句:即将推出的 2.1(以及未来的 3.0)将对计数器的工作方式进行一次小革命,因此如果您必须使用计数器,您最好使用最新的 cassandra 版本(2.1 现在是 RC5)
【讨论】:
以上是关于需要从 cassandra 中删除的行键中添加数据的主要内容,如果未能解决你的问题,请参考以下文章