获取给定哈希键集的所有项目

时间:2012-12-05 16:23:37

标签: amazon-web-services amazon-dynamodb

从单个表中获取给定哈希键集的所有项目的有效方法是什么?表有hashkey和rangekey。

要检索我正在使用的单个项目

items = tbl.items.query(
                    :hash_value => "HashKey1",
                    :select => :all).select.map {|i| i.attributes}

检索所有项目的一种方法是循环键,这是一个糟糕的解决方案

hashkeys = %w(abcd efgh xyz)
hashkeys.each do |key|
     items[dn] = tbl.items.query(
                    :hash_value => key,
                    :select => :all).select.map {|i| i.attributes}
end

我正在为Amazon DynamoDB使用ruby客户端。

1 个答案:

答案 0 :(得分:0)

我没有使用ruby客户端,但与php客户端相比,你可以使用数组作为hashkey值,如:

hashkeys = %w(abcd efgh xyz)
items = tbl.items.query(
    :hash_value => hashkeys,
    :select => :all).select.map {|i| i.attributes}