Je ne pouvais pas obtenir la fonction Erlang en cours d'exécution afin d'essayer avec JavaScript comme ci-dessous:MapReduce erreur javascript fonction
curl -XPOST http://localhost:8098/mapred \
-H "Content-Type: application/json" \
-d @- \
<<EOF
{
"inputs":"logs",
"query":[{
"map":{
"language":"javascript",
"source":"function(riakObject, keydata, arg) {
var m = riakObject.values[0].data.match(/^INFO.*cart/);
return [(m ? m.length : 0)];
}"
},
"reduce":{
"language":"javascript",
"source":"function(values, arg){
return [values.reduce(
function(total, v){ return total + v; }, 0)
];
}"
}
}]
}
EOF
ne semble pas travailler avec JS ainsi. Shell se bloque et ne revient pas du tout. Veuillez suggérer.
** Mise à jour **
Aujourd'hui, quand je l'ai essayé je vois l'erreur suivante:
An error occurred parsing the "query" field.
["Unrecognized format of query phase:\n ",
[123,
[34,<<"map">>,34],
58,
[123,
[34,<<"language">>,34],
58,
[34,<<"javascript">>,34],
44,
[34,<<"source">>,34],
58,
[34,
<<"function(riakObject, keydata, arg) { var m = riakObject.values[0].data.match(/^INFO.*Milk/); return [(m ? m.length : 0)]; }">>,
34],
125],
44,
[34,<<"reduce">>,34],
58,
[123,
[34,<<"language">>,34],
58,
[34,<<"javascript">>,34],
44,
[34,<<"source">>,34],
58,
[34,
<<"function(values, arg){ return [values.reduce( function(total, v){ return total + v; }, 0) ]; }">>,
34],
125],
125],
"\n\nValid formats are:\n {\"map\":{...spec...}}\n {\"reduce\":{...spec...}}\n {\"link:{...spec}}\n"]
utilisation Javascript dans la carte de Riak Réduire la capacité a été désapprouvée: http://docs.basho.com/riak/kv/2.2.0/release-notes/. Je recommande fortement de regarder les exemples d'Erlang dans la documentation: http://docs.basho.com/riak/kv/2.2.0/developing/usage/mapreduce/. – Craig
Oui, je sais, mais plus tôt, j'ai posté des problèmes avec les fonctions erlang aussi personne n'a donné une réponse correcte http://stackoverflow.com/questions/40750284/riak-mapreduce-error fondamentalement erlang ne fonctionne tout simplement pas dans mon cas. Il serait utile que vous puissiez répondre à la question erlang. merci – Raghuveer
Désolé, j'aimerais aider, mais je ne suis pas vraiment un expert Erlang. Si vous ne recevez pas de réponses sur Stack à des questions spécifiques, vous pouvez consulter les listes de diffusion Riak: http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com – Craig