使用pycassa,确定具有特定键的记录是否存在的最佳方法是什么?这是

try:
    cf.get(key, columns=[])
except pycassa.NotFoundException:
    # Not exists
else:
    # Exists


是一个好的解决方案?这将仅使用密钥缓存吗?

更新:我只是尝试了此查询,并且如果指定了pycassa.NotFoundException,它将始终引发columns=[]

最佳答案

要查看cf中是否存在特定的行键,请执行以下操作:

>>> cf.get(key)
{'col_name': 'col_val', 'col_name2': 'col_val2'}


如果该行键恰好在键高速缓存中,则将使用高速缓存中的值。
您将需要研究适当的sstables,以查找与该行键相对应的实际值。除非您很幸运,并且需要访问行缓存或(linux)页面缓存,否则这可能需要(缓慢)磁盘查找/访问。

09-25 20:41