Der Schockwellenreiter Rotating Header Image

Elastic MapReduce jetzt auch in Europa

Der »Loadbalancer« für Amazons Cloud, Elastic MapReduce, ist jetzt auch in Europa verfügbar. [Amazon Webservice Blog]

Teilen:
  • Facebook
  • del.icio.us
  • Google Bookmarks
  • MySpace
  • PDF
  • RSS
  • Technorati
  • email
  • Wikio
  • Digg
  • Identi.ca
  • MisterWong.DE
  • Posterous
  • Twitter
  • Print
  • Yigg
  • LinkedIn
  • FriendFeed
  • Tumblr

3 Kommentare

  1. Christoph sagt:

    Kennst jemand eine Erläuterung von Map/Reduce, die für einen programmierenden Nicht-Mathematiker verständlich ist? Vielleicht mit ein bisschen Pseudocode dabei? CouchDB verwendet das auch, aber ich kommen nicht dahinter, ob und wofür ich es brauchen könnte.

  2. Jörg Kantel sagt:

    Stell Dir zum Beispiel vor, Du hast Terrabyte an OCR-Daten, die unregelmäßig anfallen, die Du dann aber in kürzester Zeit bearbeitet haben möchstest. Normalerweise müßtest Du Dir dafür einen Serverpark selber »zu Hause« hinstellen, der aber die meiste Zeit seiner Lebensdauer vor sich hin «idled«. Elastic MapReduce erlaubt Dir daher, für diese Aufgabe einen Serverpark zu »mieten« und zwar in einem von Dir gewünschten Verhältnis von Aufwand und Zeit (muß schnell gehen, daher viele Rechner parallel einsetzen (kostet mehr), hat Zeit, daher reichen weniger Rechner — kostet weniger). Und das konfigurierst Du außerhalb Deines Programmes, die eigentliche Parallelisierung übernimmt Elastic MapReduce transparent im Hintergrund.

    War ich jetzt auch für Nichtmathematiker verständlich? ;)

  3. Christoph sagt:

    Auch für Nichtmathematiker verständlich, danke!
    Ich hab jetzt den Artikel bei Wikipedia aufmerksam gelesen, und so langsam dämmerts. Die Map-Funktion nimmt key/value pairs und liefert wiederum key/value-Paare ab, welche dann von der reduce-Funktion ‘zusammengerechnet’ werden.

    Beispiel dort war ein verteilter Mechanismus, um die Gesamtanzahl für jedes Wort innerhalb eines Korpus von Dokumenten zu ermitteln:

    »The canonical example application of MapReduce is a process to count the appearances of each different word in a set of documents:

    map(String name, String document):
    // name: document name
    // document: document contents
    for each word w in document:
    EmitIntermediate(w, 1);

    reduce(String word, Iterator partialCounts):
    // key: a word
    // values: a list of aggregated partial counts
    int result = 0;
    for each v in partialCounts:
    result += ParseInt(v);
    Emit(result);

    Here, each document is split in words, and each word is counted initially with a “1″ value by the Map function, using the word as the result key. The framework puts together all the pairs with the same key and feeds them to the same call to Reduce, thus this function just needs to sum all of its input values to find the total appearances of that word.«

    Hm, da fallen mir doch gleich ein paar Anwendungen dafür ein…

Einen Kommentar verfassen

Mit dem Absenden Ihres Kommentars willigen Sie ein, daß der angegebene Name, Ihre Email-Adresse und die IP-Adresse, die Ihrem Internetanschluß aktuell zugewiesen ist, von mir im Zusammenhang mit Ihrem Kommentar gespeichert werden. Die Email-Adresse und die IP-Adresse werden natürlich nicht veröffentlicht oder sonst weitergegeben.