2010-12-17 41 views
0

所以simpledb有一種電子表格數據模型。如何最好的將這個結構映射到亞馬遜上SimpleDB

我有一個應用程序,只需要存儲鍵對值。除了一個鍵可以有多個值。

會有多個客戶端。每個客戶端都有一個擁有自己的密鑰集的ID。 如果我可以在這個階段,我想堅持一個單一的域名。

我該如何將其映射到simpleDB上?

我想 域= MYDOMAIN 項目=客戶端ID attribute.n.name = key_1 ... key_n attribute.n.value = VAL1 ... VALN

,將滿足存儲能力同一個鍵的多個值。 但是後來我發現我需要在我的選擇中獲得所有屬性,或者知道我有多少屬性的示例 。我不會預先知道這一點。 此外,我允許從鍵(或屬性)刪除特定值。我將不得不先搜索它。看來在select中沒有attributeName()函數,只是itemName()函數。

難道也許是更明智的項目名稱ID +按鍵+ _n的組合? 例如如果id是'myid',並且密鑰是'boots',那麼項目名稱將是 'myidboots_1'

然後每個項目都有一個名爲say'keyval'的屬性。

我可以做一個 select'keyval'where itemName like'myidboots_%'?

與普通的sql數據庫相比仍然麻煩。

也許我應該嘗試編碼像逗號分隔列表的值? 除了它可能更麻煩,我也讀過1000字符的限制。

其他建議?

回答

0

我不知道我完全按照你的問題,但我認爲這可能是有益指出的SimpleDB讓你做經典SQL樣式的查詢,如:

select * from foo where bar = '1' 

這將返回所有屬性/結果記錄的值。