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 中,单行中有 20 亿列的技术限制,但您希望保持小于 20 亿列。

于 2012-06-22T16:00:56.550 回答