我使用了Riak存儲JSON文檔現在排序,我想基於一些屬性對它們進行排序,讓我們說有一個關鍵,即如何文檔中使用Erlang的地圖在了Riak減少
{ 「someAttribute」:「whatever」, 「order」:1 }
所以我想根據「訂單」對文檔進行排序。
我目前正在用erlang界面檢索riak中的文檔。我可以將文檔作爲字符串取回,但在此之後我不知道該怎麼做。我在想這個map函數只是減少了json文檔本身,而在reduce函數中,我會檢查一下,看看我正在查看的項目是否具有比其餘部分更高的「順序」列表,如果是這樣附加到開頭,然後返回一個列表:反向。
儘管我的想法如上所述,在幾乎整整一天之後,我已經得到了零結果,但我對於erlang接口在riak中很困惑。有人可以提供關於如何編寫這個map/reduce函數的見解,或者只是如何解析json文檔?
我有點困惑,在riak/java腳本的例子中,他們可以做到這一點。 函數(value,keyData,arg)var data = Riak。mapValuesJson(值)[0]; if(data.High && data.High> 600.00) return [value.key]; else return []; } 所以他們得到他們在var數據中看到的任何東西。 然後他們做一個數據。就好像它是一個屬性。我想這取決於 他們甚至如何將文檔放在首位。我不能爲訂單做同樣的事嗎? (不是您所說的「輸入」部分) – user436605 2010-11-22 15:58:34
在給出的示例中,該語句用於過濾映射階段中的數據。排序不能在地圖階段完成,因爲它一次只能處理一條記錄。 – 2012-12-14 12:56:16