我使用了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