1

Cassandra に次のような ColumnFamily があるとします。

KEY   | VALUE
_____________
foo_a | data
foo_b | data
bar_a | data
bar_b | data

キーが「foo」で始まるすべての行を削除する最良の方法は何でしょうか? 必要に応じて、データの構造を変更できます。

4

1 に答える 1

3

これを行う唯一の方法は、クラスター内のすべての行をスキャンし、「foo」で始まるかどうかをプログラムで確認し、そうであれば削除することです。

そのような機能が必要な場合は、「foo」で始まる行のインデックスを保持できる可能性があります。「foo」で始まる行を書き込むたびに、その行の完全なキーもインデックス行に書き込みます。次に、検索を実行して、「foo」で始まるすべてのキーを削除したいときに簡単に見つけることができます。その戦略では、インデックス行が大きくなりすぎないようにする必要があります。Cassandra では、1 行に 20 億列という技術的な制限がありますが、20 億よりもかなり小さくしたいと思うでしょう。

于 2012-06-22T16:00:56.550 に答える