2009-07-23 25 views
18

Jak mogę napisać funkcje zmniejszania map w Erlang dla CouchDB? Jestem pewien, że Erlang jest szybszy niż JavaScript.CouchDB: map-reduce in Erlang

+2

Dlaczego jesteś tego pewien? –

+18

To nie może być zbieg okoliczności: http://browsertoolkit.com/fault-tolerance.png – shoosh

Odpowiedz

16

Możesz to zrobić, używając numeru erlview, który znajduje się w pierwszej dziesiątce haseł w Google dla "widoku erlang couchdb" i jest wymieniony na CouchDB wiki page for other-language view servers.

+3

Snarky Jim jest snarky. I poprawne. –

+0

Wraz z następnym wydaniem CouchDB wyświetli się widok erlang. Nie trzeba będzie nawet pobierać i konfigurować programu erlview, aby działał. –

+2

CouchDB 0.10 (wydany w październiku 2009 r.), A następnie obsługuje widoki Erlang natywnie. Dobry napis znajduje się pod adresem http://blog.echolibre.com/2010/02/couchdb-custom-erlang-map-functions/ – JasonSmith

26
pmap(F, L) -> 
    Parent = self(), 
    Pids = [spawn(fun() -> 
        Parent ! {self(), F(X)} 
        end) || X -> L], 
    [receive {Pid, Res} -> Res end || Pid < - Pids]. 

Wierzę, że tak, Bob.

+0

Potrzebuje naklejonego tam kreskówki dla dodania wartości: D – madlep

+0

Lulz ... rozważ mój popołudniowy śmiech przewidziany. –