-1

Riak erlang と JS mapreduce の例を見ました。しかし、私はJAVAの男です:)、JAVAでそれをするのが好きです。さらに、JS mapreduce は非推奨です。

  1. Javaでそれを行う方法はありますか?よろしければサンプルをどうぞ。
  2. Riak 2.0 Search の Java サンプルも探していました。

Riak docs では、riak-search のステップは巨大に見えます。これは、mapreduce と検索の小さなクックブックのように見えるかもしれません。例を挙げて実際の手順で要約できますか。

問題

私はgithubで次の手順を試しました。

   ./rebar get-deps
==> meck (get-deps)
==> protobuffs (get-deps)
==> hamcrest (get-deps)
==> riak_pb (get-deps)
==> riak-erlang-client (get-deps)
./rebar compile
==> meck (pre_compile)
==> meck (compile)
==> protobuffs (pre_compile)
==> protobuffs (compile)
==> hamcrest (pre_compile)
==> hamcrest (compile)
==> hamcrest (post_compile)
==> riak_pb (pre_compile)
==> riak_pb (compile)
==> riak-erlang-client (compile)
raghuveer@ubuntu:~/erlang-git/riak-erlang-client$ erl -pa $PATH_TO_RIAKC/ebin $PATH_TO_RIAKC/deps/*/ebin
Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:4:4] [async-threads:10] [kernel-poll:false]

Eshell V7.3  (abort with ^G)
1> code:which(riakc_pb_socket).
non_existing
4

1 に答える 1

2

map および reduce フェーズのコードは、erlang または javascript のいずれかでなければなりません。クライアント側で Java を使用できますが、mapreduce コードは Riak ノードで実行する必要があります。Riak ノードは erlang をネイティブで使用し、javascript を実行するための Spidermonkey を持っています。

https://github.com/basho/riak_kv/blob/develop/src/riak_kv_mapreduce.erlで開始できるいくつかの定義済み関数があります。

ドキュメントには、検索で Java を使用する例が含まれています: https://docs.basho.com/riak/kv/2.1.4/developing/usage/search/

于 2016-11-14T19:59:45.580 に答える