Kolumne: Die flinke Feder

Daten sind Schweine


„Normalisiert“. Dieses kleine Wörtchen hat es in sich. Es beschreibt die Annäherung an eine Utopie. Nämlich, dass man keinerlei Redundanzen in seinen Daten hat. Mehrfaches Ablegen derselben Information kostet Speicher; ein Argument, was vor einigen Jahren noch schwerer wog als heute. Außerdem erleichtert Normalisierung das maschinelle Verarbeiten von gleichen Informationen. Natürlich ist uns Menschen klar, dass „E-Mail“, „E-Mail-Adresse“ und „Mailadresse“ alles dasselbe bedeutet, zumindest höchstwahrscheinlich. Kollege Computer ist davon wesentlich schwerer zu überzeugen. Deswegen wird man aus diesen Varianten eine einzige zur Norm bestimmen und nur diese verwenden. Hoffentlich.

Es ist ein kleiner Schritt für die Computer von „normalisiert“ nach „normal“, aber ein großer Schritt für die Menschheit. Sind Ihre Daten einwandfrei normalisiert? Testfrage: Wie lange würde eine Datenmigration in ein anderes System mit einem anderen Domänenmodell bei Ihnen dauern? Und wenn Sie sich die in den letzten Jahren gewachsenen Daten und Schemata noch einmal genau anschauen, wie lange würde es jetzt wirklich dauern?

Ich bin kein Physiker, aber ich bin mir sicher, dass sich aus der Thermodynamik oder der Relativitätstheorie folgender Satz ableiten ließe: Daten streben die höchstmögliche Divergenz von ihrem Schema an. Mit anderen Worten: Datenschemata sind super, funktionieren aber selten hundertprozentig. Was ist ein Schema wert, das nicht eingehalten wird? Besser als gar kein Schema, sagen Sie? Ich gebe Ihnen recht. Trotzdem der Versuch einer anderen Perspektive. Schauen wir uns Apache Pig [1] an. Das Motto, das laut Webseite zur Wahl des Namens führte, ist „Pig eats everything“. Und Apache Pig frisst Daten. Sie müssen nicht normalisiert sein. Datenkonsistenz ist aber von großem Vorteil. Es sei nicht verschwiegen, dass ein Blick in den Quellcode von Pig den Namen noch zusätzlich motiviert. Sauberer Code ist etwas anderes. CSV Files, reine Textdateien oder Inhalte von Datenbanken sind die typischen Grundnahrungsmittel von Pig. Sie dürfen dabei auch sehr, sehr groß sein. Mit Pig lassen sich ad hoc Schemata auf solchen Daten deklarieren, das Chaos erhält also – wie gehabt – zuerst einmal Struktur. Nun kann man die Daten nach Belieben filtern, zählen, aufbrechen, aggregieren, umformen, joinen und parsen.

Hier kommt Pig Latin ins Spiel, die eingebaute deklarative Datenflusssprache. Konstrukte wie Schleifen und Verzweigungen sucht man vergebens. Stattdessen werden mit jedem Bef...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang