Open Source im professionellen Einsatz
Linux-Magazin 06/2013

Bücher über Map-Reduce und über die Sprache Erlang

Tux liest

Das eine Buch trägt bewährte Lösungen für das Framework Map-Reduce zusammen, das zweite versammelt Wissenswertes über Erlang. Für beide Werke muss der Leser der englischen Sprache mächtig sein.

644

Auf knapp 250 Seiten wagen die Autoren Donald Miner und Adam Shook das mutige Unterfangen, bewährte Best Practices mit Map-Reduce zu dokumentieren, obwohl Googles Framework erst seit etwa fünf Jahren im Einsatz ist. Simon St. Laurent bespricht in seinem englischsprachigen Buch "Introducing Erlang" die funktionale Programmiersprache Erlang.

Die Kunst der Reduktion

Auf recht wenigen Seiten ein mächtiges Framework zu erklären ist heikel. Dabei halten sich die Autoren an die bekannte Map-Reduce-Implementierung Hadoop und verwenden als zu analysierenden Datensatz die vielen Mails von Stack Overflow. Wer eine Einführung in das Thema erwartet, wird enttäuscht: Nur am Anfang gehen die Autoren ein wenig auf Design Patterns im Allgemeinen und Map-Reduce im Speziellen ein. Map-Reduce-vertrauten Lesern wird das reichen, um tiefer einzusteigen.

Im Kapitel "Summarization Patterns" begegnet dem Leser das Map-Reduce-Pattern Word Count, das zusammengefasste Sichten auf Daten darstellt. Es folgen Patterns, die Teilmengen aus Daten herausfiltern, um sie besser zu verstehen. Eine typischer Anwendungsfall im Kapitel "Filtering Patterns" ist ein verteilter »grep« -Aufruf. Die Data Organization Patterns versuchen schlecht strukturierte Daten besser zu organisieren. Besser kann hier eine Schlüssel-Wert-Assoziation oder auch eine Hierarchie sein.

Es geht weiter mit den Join Patterns, die Daten um Daten erweitern. Das Kapitel "Metapatterns" erklärt das Verknüpfen und Verschmelzen von Map-Reduce-Jobs, um die Performance des Gesamtjobs oder den I/O-Durchsatz zu optimieren. Wie es in der Implementierung Hadoop möglich ist, externe Datenquellen oder -senken anzusprechen, zeigt ein Kapitel über Input- und Output-Patterns. So lassen sich Daten direkt erzeugen oder aus einer Datenbank lesen und schreiben.

Fazit: Das Wagnis, auf wenigen Seiten ein komplexes Framework zu würdigen, ist den Autoren gelungen. Als große Referenz für Best-Practice-Lösungen kann das Werk dagegen nicht gelten. Es leistet aber eine Hilfe, die Anwendungsfälle zu identifizieren und zu analysieren. Die zugehörigen Java-Codebeispielen eingerechnet besitzt das Werk für den Map-Reduce-Architekten großen Wert.

Info

Donald Miner, Adam Shook:

MapReduce Design Patterns (Englisch)

O'Reilly, 2013

249 Seiten

37 Euro

ISBN: 978-1-4493-2717-0

Erlang – kurz und bündig

Um mit der Tür ins Haus zu fallen: "Introducing Erlang" ist eine sehr kurzweilige Lektüre, die einiges an Information bietet. Als roter Faden durch das ganze Werk zieht sich ein Schwerkraftbeispiel. Das Buch besteht aus zwei Teilen: Der erste führt in Erlang und die funktionale Denkweise ein. Dabei nimmt der Autor den Leser an die Hand, um ihm den Umgang mit der Interpreter Shell, Funktionen, Modulen, Atomen, Tuples, Strings und Listen zu erklären. Das schildert er so anschaulich, dass es gar nicht nötig ist, den abgedrucken Sourcecode in Aktion zu sehen, um ihn zu verstehen.

Neben der Erlang-Syntax versteht es der Autor, das funktionale Paradigma motivierend einzuführen. Vorteile unveränderlicher Variablen, von Rekursion, Listenverarbeitung und List Comprehension als Strukturelementen – er beschreibt es. Funktionales wie Higher Order Functions, Closures und Tail Recursion beenden den ersten Teil des Buches.

Erlang zeichnet der Umgang mit unabhängigen Prozessen aus, die sich Nachrichten synchron und asynchron senden. Die Eleganz und Mächtigkeit dieses skalierbaren und fehlertoleranten Konzepts beschreibt der zweite Teil des Buches. Er schlüsselt auch Erlangs stimmige Persistenzkonzepte auf, sei es nun Erlang Term Storage (ETS) oder die Datenbank Mnesia, mit denen sich ein Record im Arbeitsspeicher oder persistent speichern lässt. Beeindruckend wie die Open Telecom Platform (OTP) hilft Services zu erzeugen, Server aufzusetzen und Anwendungen zu packen.

Fazit: Trotz des geringen Umfangs von rund 200 Seiten gelingt es Simon St. Laurent, dem Leser die funktionale Denke im Allgemeinen sowie die syntaktischen und vor allem die semantischen Eigenheiten von Erlang im Besonderen näherzubringen. Die kompakte Form und die unterhaltsame Vermittlung machen Lust auf mehr. Besser lässt sich nicht für Erlang werben. (jk/tle)

Info

Simon St. Laurent:

Introducing Erlang (Englisch)

O'Reilly, 2013

199 Seiten

16 Euro

ISBN: 978-1-4493-3176-4

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 1 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Bücher

    Das Linux-Magazin stellt ein Buch zum Pentesting-Framework Metasploit vor. Das zweite Werk erklärt die Entwicklung massiv-paralleler und fehlertoleranter Systeme in der Sprache Erlang.

  • CouchDB

    Relationale Datenbank war gestern. Viele Entwickler verwenden heute Datenbanken, die ohne SQL auskommen. Der zurzeit populärste Vertreter der Gattung ist CouchDB.

  • Bücher

    Das Linux-Magazin ergründet, was das Haskell-Buch von Simon Thompson zu einem Dauerbrenner macht. Der zweite Titel widmet sich der No-SQL-Datenbank Couch DB und ihrer Anwendung.

  • Uni Passau forscht zu MapReduce

    Die Deutsche Forschungsgemeinschaft (DFG) hat der Universität Passau ein Forschungsvorhaben zu Googles Rechen-Framework MapReduce bewilligt.

  • Bücher

    Die Bücherseite hat sich ein praktisch ausgerichtetes Buch zur Netzwerkanalyse mit Wireshark geangelt. Als Beifang gibt es ein exzentrisches Koch- und Programmierbuch aus dem Hause O'Reilly.

comments powered by Disqus

Ausgabe 10/2017

Digitale Ausgabe: Preis € 6,40
(inkl. 19% MwSt.)

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.