0

有一些 Cassandra 操作来验证列族是否包含密钥?我们不需要任何行数据,只需要键是否存在。

此致

4

2 回答 2

2

如果您使用的是 Java,则为 rowKey 创建一个 SliceQuery 并将开始/结束值设置为等于您要查找的特定列键。如果有一列具有特定键,则以下表达式为真:

sliceQuery.execute().get().getColumns().size() > 0
于 2013-03-28T19:33:40.050 回答
1

一种快速的方法是询问该行的列数,如果它是肯定的,则该行存在。由于墓碑,“不存在”周围有一个灰色区域。您可以删除一行的所有列,但请求该行的数据可能会导致一组空的列而不是null(这在很大程度上取决于您使用的驱动程序)。您应该将没有列的行视为不存在,因此询问列数可能是确定行是否存在的最佳方法。

在Cassandra 常见问题解答中的“范围幽灵”下有更多关于此的信息。

于 2013-03-28T19:10:46.080 回答