Riak 2i - 列出索引值

时间:2015-10-15 13:42:43

标签: riak secondary-indexes riak-2i

是否可以列出以前保存在Riak存储桶中的所有二级索引值(leveldb,2i已启用)?在Riak中拥有以下数据:

curl -XPOST localhost:8098/types/indexes/buckets/users/keys/x -H 'x-riak-my_bin: a'
curl -XPOST localhost:8098/types/indexes/buckets/users/keys/y -H 'x-riak-my_bin: b'

我希望能够发送一个查询,该查询会返回{a, b}作为结果(或者可能是相同结果的流句柄,如果它太大了)。类似的东西:

curl -XGET localhost:8098/types/indexes/buckets/users/index/my_bin/_

是否有可能从Riak获得此类信息?

注意:在我们的案例中,我对获取实际的对象密钥不感兴趣 - {x, y}

1 个答案:

答案 0 :(得分:1)

我不相信功能是提供的。似乎Riak以{i,Bucket,Index,Value,Key}之类的形式存储2i值。然后,一个范围索引请求从{i,Bucket,Index,FirstValue,_}开始折叠并返回它找到的内容。默认设置是返回找到的键,您也可以请求值,但不能输入没有键的值。因此,您必须使用map-reduce或某些客户端代码来删除存储桶/密钥并对值列表进行重复数据删除。