Cassandra に次のような ColumnFamily があるとします。
KEY | VALUE
_____________
foo_a | data
foo_b | data
bar_a | data
bar_b | data
キーが「foo」で始まるすべての行を削除する最良の方法は何でしょうか? 必要に応じて、データの構造を変更できます。
これを行う唯一の方法は、クラスター内のすべての行をスキャンし、「foo」で始まるかどうかをプログラムで確認し、そうであれば削除することです。
そのような機能が必要な場合は、「foo」で始まる行のインデックスを保持できる可能性があります。「foo」で始まる行を書き込むたびに、その行の完全なキーもインデックス行に書き込みます。次に、検索を実行して、「foo」で始まるすべてのキーを削除したいときに簡単に見つけることができます。その戦略では、インデックス行が大きくなりすぎないようにする必要があります。Cassandra では、1 行に 20 億列という技術的な制限がありますが、20 億よりもかなり小さくしたいと思うでしょう。