【问题标题】:How to List all keys from bucket using riak-java-client如何使用 riak-java-client 列出存储桶中的所有密钥
【发布时间】:2014-08-15 08:20:37
【问题描述】:

关于如何使用 riak 列出存储桶密钥的相当简单的问题,我正在使用 java-riak-client v1.1.4Riak 1.3.2 ,很少我知道的方法:

-> 虽然已弃用,

val riak = new RiakClient("http://localhost:8098/riak");
val r = riak.listBucket("bucket");
if (r.isSuccess()) {
    val info = r.getBucketInfo();
    val keys = info.getKeys();         // list of all object keys in this bucket
}

-> 使用 map reduce 从存储桶中获取所有记录,但由于某种原因,执行 map-reduce 实际上会导致一些 Riak 错误,请参阅Error,尽管该错误实际上并不是由于 map-reduce 引起的。代码我一直在使用下面给出,但问题是这段代码仅在两个桶的情况下给出错误,检索所有使用 map reduce 对其他桶正常工作。

val riakClient = RiakFactory.httpClient
val result = riakClient.mapReduce(BUCKET_NAME_USER)
        .addMapPhase(new NamedJSFunction("Riak.mapValuesJson"), true)
        .execute //Gives errors

现在还有另一种使用 java-riak-client 检索存储桶内容的方法,或者至少如何列出存储桶键??

【问题讨论】:

    标签: scala riak


    【解决方案1】:

    这是一个相当古老的线程.. 但无论如何。这不成功吗?

    BucketResponse bucketResponse =  riak.listBucket("bucket");
    Collection<String> keys = bucketResponse.getBucketInfo().getKeys();
    

    你可以在http://basho.github.io/riak-java-client/1.1.4/index.html关注RiakClient

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-27
      • 2015-10-25
      • 1970-01-01
      • 2011-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多