0

残念ながら、行キーを削除しました。

例: key='rowkey'; の tablename から削除します。

行キーを削除すると、すべてのデータが削除されます。

※テーブルはカウンターテーブルです。

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';

行キーを削除した後、同じキーのデータを挿入できません。他のキーのデータを更新できます。

例: update tablename set new = new + 1 where key='2014';

2014年のエントリーは見つかりませんでした

予想: 削除された行キーのデータを追加する必要があります。

4

1 に答える 1

0

カウンターの削除は強く制限されています: Counters Wiki ドキュメントから:

カウンターの行を削除した場合、その行の (削除前に存在していた) カウンターをインクリメントすると、未確定の動作が発生します。

カウンター wiki ページで、より多くの情報を見つけることができます。

ところで: 今後の 2.1 (および将来の 3.0) は、カウンターの動作に小さな革命をもたらすため、カウンターを使用する必要がある場合は、最新の cassandra バージョンを使用することをお勧めします (2.1 は現在 RC5 です)。

于 2014-08-14T09:26:02.850 に答える