2015-10-06 213 views
0

我創造DynamoDB項目,如套,是這樣的:聯合查詢

ddb.updateItem({TableName: table, Key: key {Category: {S: categoryName}}, 
    AttributeUpdate: {MySet: {Action: "ADD", Value: {SS: [ValueToAdd]}}} 
}); 

這個偉大的工程和MySet每類適當填充。

現在,我想從給定的類別列表中獲得所有集合的聯合。比方說,我有:

tip: [1, 2, 3], 
foo: [1, 3, 5], 
bar: [3, 5, 7], 

,我想所有的設定值的tipfoo,並bar - 結果將是1, 2, 3, 5, 7。對於剛剛tipfoo這將是1, 2, 3, 5

我可以用ddb.query爲每個類別獲得一組,然後讓在JavaScript中集的工會做到這一點,但套可能比較大,因此通過查詢可能會更好。我看到UNION是DynamoDB中的一個關鍵字,但我似乎無法找到關於它的更多信息。

是否有可能從DynamoDB查詢中獲得集合的聯合?

回答

1

不,這是不可能的,DynamoDB查詢(http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html)中不支持「UNION」,實際上沒有其他人操作(http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Operations.html)。

這是因爲DynamoDB必須有點簡單才能提供可預測的性能和出色的可伸縮性,並且只有前端/協調器才能從存儲節點獲取數據檢索所需的基本操作,而將其他計算留給客戶端。