是否有更好的方法来编写代码,因为我的erlang代码需要14秒才能获取数据

时间:2015-05-18 13:39:44

标签: erlang riak erlang-shell erlang-escript

我在riak上运行Erlang Map / Reduce。在一个存储桶中有57000条记录,我的地图阶段将过滤记录获得14秒。

-module(chatlogs).
-author("gopi").

%% API
-export([getListForUser/3]).


getListForUser(Obj,_kd,Chat_id) ->
case catch mochijson2:decode(hd(riak_object:get_values(Obj))) of
{struct, Data} ->
     Event_list = [<<"INTRO_MSG">>, <<"QUESTION">>, <<"VALID_ANSWER">>,  <<"NEW_MSG">>],
    case proplists:get_value(<<"chat_id">>,Data) == Chat_id  of
    true ->
            case lists:member(proplists:get_value(<<"Event-Name">>,Data),Event_list) of
                    true->
                            [Data];
                    false->
                            []
            end;
    false ->
            []
    end;
_ ->
   []
end.

有没有更好的方法来降低和改善代码性能

0 个答案:

没有答案