Anmerkungen zu Big Data und den Folgen für die Speicher-Infrastruktur

Was ist Big Data?

Der Terminus „Big Data“ ist nun schon seit einigen Jahren auf dem Markt. Neuigkeiten wie der NSA-Skandal haben sicherlich dazu beigetragen, Aufmerksamkeit für den ganzen Themenkomplex zu wecken. Mögliche Konsequenzen der neuen Datenwelt, die ja ein wichter Teil der digitalen Transformation sind, werden inzwischen in den allgemeinen Medien ausführlich dargestellt und besprochen.

In den Wissenschaften, insbesondere in den Natur- und Lebens-, den Wirtschafts- und Sozial- aber auch in den Geisteswissenschaften, werden „Big Data“-Techniken als neue Arbeitsmethoden immer wichtiger. Grund genug, hier ein paar Überlegungen zu „Big Data“ und zur technologischen Basis anzustellen.

Der Begriff. Ganz grob gesprochen geht es bei „Big Data“ um die Verknüpfung verschiedener und umfangreicher Datenbestände. In der Hoffnung, neue Informationen bzw. Erkenntnisse gewinnen zu können, werden diese korreliert und analysiert; eine komplexe Jonglage also.

Google Trends verrät, dass seit 2009 „Big Data“ als Suchbegriff austritt und dann rasch relevanter wird. Die Methode ist im Kern nicht ganz so neu und baut ganz erheblich auf älteren Ansätzen wie Data Warehouse auf. Aber „Big Data“ ist eine umfangreiche Ansammlung verschiedener Technologien: Gartner hat einen eigenen Big Data Hype Cycle zusammengestellt, in dem das Thema in über drei Dutzend Teilgebiete differenziert wird. Trotzdem hat sich inzwischen eine allgemeine Charakterisierung für „Big Data“ entwickelt, welche um englische Begriffe kreist, die alle (mnemotechnisch günstig) mit einem V beginnen:

Die ersten drei Vs. Diese drei „klassischen“ Vs gehen auf einen steinalten Artikel von D. Laney aus dem Jahr 2001 zurück und heißen: Volume, Velocity und Variety.

Volume: Wie “Big Data” schon nahelegt, ist der schiere Umfang der verwendeten Daten eine wichtige Kenngröße. Während man heute sicherlich einige Terabyte (10^12) aufbieten können muss, treibt einige Leute schon die Sorge um, dass irgendwann die Präfixe knapp werden könnten und bringen Brontobytes (10^27) ins Gespräch …

Velocity (Schnelligkeit): Hiermit ist die Geschwindigkeit gemeint, mit der Daten erzeugt, verarbeitet und analysiert werden. Auch die Analyse während der Erzeugung, also eines Datenstroms, ist eine besondere Ausprägung dieses Merkmals.

Variety (Verschiedenheit): Die gemeinsame Verwendung von Daten aus unterschiedlichen Quellen sowie von strukturierten und unstrukturierten Daten ist ebenfalls typisch. Dies ist auch eine echte Weiterentwicklung des sehr strukturierten Data Warehouse Ansatzes.

Noch mehr Vs. Nach den genannten drei Vs kamen aber noch weitere Merkmale dazu:

Veracity (Wahrhaftigkeit): Dieses Charakteristikum greift den spannenden Umstand auf, dass auch Daten ausgewertet werden, die inkonsistent oder nicht sonderlich vertrauenswürdig sind. Man ahnt schon, dass dies ganz neue Herausforderungen mit sich bringt.

Variability (Veränderlichkeit): Diese besondere Ausprägung spielt eine Rolle, wenn Daten aus einer Sprachverarbeitung heraus verwendet werden. Dann kann sich die Bedeutung der Daten selbst verändern.

Visualisation (Veranschaulichung): Gerade die Analyse des Datenmaterials ist eine ziemliche Herausforderung. Der eingangs erwähnte WDR-Beitrag enthält auch ein paar mahnende Fehlinterpretationen, denen man ganz leicht aufsitzen kann. Für ein wirkliches Verständnis der „mutmaßlichen Befunde“, ist eine Veranschaulichung bereits in der Analyse unabdingbar. Zur Darstellung der Ergebnisse ist das weite Gebiet der Infographiken ein wichtiges Hilfsmittel. [1] [2] [3] [4]

Und noch ein V. Als siebtes (und bislang) letztes V findet sich

Value: Das ist eigentlich die „Sinnstiftung“ von Big Data, nämlich die Erinnerung, dass eine nützliche, wertvolle Erkenntnis am Ende der Übung stehen soll.

Weitere und ausführlichere Darstellungen finden sich im Web reichlich [5], [6].

Big Data = Technik + Algorithmik + Analytik? Die Charakteristiken von „Big Data“ scheinen mir nahe zu legen, dass hier drei Schichten zusammengebracht werden müssen, um ein fundiertes und werthaltiges Ergebnis zu erreichen:

  1. DieTechnik, welche die Voraussetzungen zur Haltung und Verarbeitung von Daten ist. Diese kann natürlich als Service im Sinn des Cloud-Paradigmas realisiert werden.
  2. Die Algorithmik, also die Konstruktion oder Wahl geeigneter Software zur Auswertung der Daten.
  3. Die Analytik, welche Hypothesen aus der Auswertung falsifiziert oder validiert, um ein Verständnis der Aufgabenstellung zu erreichen. Auf dieser Ebene ist die Semantik der Ergebnisse der dominierende Aspekt.

Die sieben Charakteristiken von Big Data sind nicht alle gleichermaßen auf diesen Schichten ausgeprägt. Vielmehr sind einige Schwerpunkte evident:

Technik Algorithmik Analyse
Value Stark
Visualisation Stark
Variability Mittel Stark
Veracity Stark Stark
Variety Stark Stark
Velocity Stark Stark
Volume Stark Mittel

Dass sich die drei „klassischen Vs“ – Volume, Velocity und Variety – in der Technik- und Algorithmik-Schicht besonders deutlich niederschlagen, ist wenig überraschend. Bei Veracity und Variability steht schon per definitionem die Semantik der Daten im Mittelpunkt.

Nun noch ein paar Überlegungen zur Speicherung und dem Management von Daten im Big Data Kontext.

 

Big Data und die IT-Infrastruktur

Traditionelle Speicher-Architekturen. Das Speichern und Verwalten von Daten kann auf recht unterschiedliche Weise erfolgen. Auf einer ziemlich tiefliegenden Technikebene können beispielsweise „Block Devices“ genutzt werden, um Portionen von Bytes zu schreiben und zu lesen. Das ist flexibel und performant, aber mühselig und eher für Experten geeignet. Anwender arbeiten normalerweise mit Dateisystemen oder auch (im Fall hochgradig strukturierter Daten) relationalen Datenbanken. Dateisysteme organisieren die einzelnen Dateien in einer Hierarchie und bieten oft Features wie Zugriffsteuerung, Versionierung, Replikation. In der Big Data Welt wird aber immer häufiger von Objekt-Speicher gesprochen, der die guten alten Filesysteme ablösen wird. Warum wird das so sein?

Objekt-Speicher. Das Konzept des Objekt-Speichers beruht auf dem Ansatz, die Details der Speicherung wie etwa Speicherort zu verbergen. Mit dem Speicherobjekt kann nur über eine definierte, schlanke Schnittstelle interagiert werden. Konkret besteht das Speicherobjekt aus einer eindeutigen Identitätskennung (ID), Metadaten, einer Menge von Standardmethoden (in der Regel ein API mit den CRUD-Aktionen – und häufig Accounting für die Cloud) sowie dem eigentlichen Dateninhalt. Das unterscheidet sich sehr erheblich vom Filesystem: Da der Speicherort verborgen ist, gibt keine Hierarchie (sondern nur die ID). Raffinierte, mächtige Features sind im Objekt-API nicht implementiert.

Das klingt auf den ersten Blick nicht besonders verlockend. Allerdings kommen mit diesem Ansatz auch Vorteile:

  1. Der Zugriff über eine ID und ein API ist einfach zu standardisieren. Verschiedene Speicher können dann gleichartig genutzt werden.
  2. Der Umgang mit Datenobjekten über ein API, also von einer Anwendung aus, ist grundsätzlich einfacher als das hantieren mit Dateien. Dabei muss nämlich mit dem Betriebssystem eines Servers oder aber einem Netzwerkprotokoll interagiert werden, was typischerweise ziemlich komplex und variantenreich ist.
  3. Die Objekt-Metadaten können im Prinzip erweitert werden, was Dateisysteme meist nicht vorsehen.
  4. Das Datenmanagement kann erheblich flexibler und weitreichender agieren, weil der Speicherort vor den Nutzenden verborgen ist. Dadurch können mehr steuernde und optimierende Eingriffe transparent durchgeführt werden.
  5. Im Zusammenspiel mit den Objekt-Metadaten kann das Datenmanagement besser automatisiert werden. Bei Filesystemen ist dies nur bei speziellen HSM-Lösungen möglich.
  6. Durch die Entkopplung von Nutzung und Management können horizontal skalierende Lösungen (scale out) einfacher realisiert werden.

Vorteile sind also sowohl in der Datennutzung als auch im Datenmanagement zu erwarten, wobei es hauptsächlich um Standardisierung, Automatisierung und Flexibilisierung geht.

Volume, Velocity, Variety und Speicher-Objekte. Bezüglich Volume und Velocity sind die Vorteile des Objektspeichers bezüglich des Datenmanagements (also 4, 5 und 6) relevant. Bei riesigen Datenmengen mit erheblichen Veränderungsraten wird die Transparenz und Automatisierung von Management-Aktivitäten immer wichtiger, da dies Einschränkungen bei der Verfügbarkeit reduziert und einen „smarten“ Umgang bei Lastwechseln ermöglicht.

Während die Nutzenden stärker von Fragen der Kapazitätsplanung entlastet werden können, verbleibt ihnen die Bürde des Umgangs mit den unterschiedlichen Datenquellen. Die Komplikationen, die sich aus der Variety ergebenen könnten, werden beim Objekt-Speicher aber durch die einfachere und einheitliche Schnittstelle aus ID und API (also 1, 2 und 3) entschärft.

Für die interaktive Standardnutzung im Büroalltag werden Filesysteme sicherlich weiterhin ihre Bedeutung behalten, denn dort ist die hierarchische Organisation oft sehr sachgemäß. Für die Nutzung von Speicherbeständen aus Anwendungen heraus, welche diese dann komplexe Analysen in diesen Beständen durchführen, sind Objekt-Speicher aber zweifellos die bessere Wahl.

Es wird spannend sein, wie sich Nachfrage und Angebot in den nächsten Jahren an unserer Universität entwickeln werden. Gartner gelangt übrigens zu dem Schluss, dass Big Data im Jahr 2014 die Hype-Cycle-Phase des „Trough of Disillusionment“ erreicht hat. Good Luck, Big Data!

 

Weitere Informationen

Provost, F.; Fawcett, T.: Data Science for Business; O’Reilly; 2013

Strg+Alt+Entf unter Windows bei iMac mit deutscher (Bluetooth-)Tastatur

Auf meinem älteren iMac (Late 2009) mit deutscher, schnurloser Bluetooth-Tastatur nutze ich regelmäßig eine Windows7-Bootcamp-Installation. Der Anmeldevorgang beginnt bei der Standardeinstellung mit der Tastenkombination „Strg-Alt-Entf“, die ich (ohne Keyboard Remapping oder Verwendung eines anderen USB-Keyboards) der Apple-Tastatur nicht entlocken kann. Aber so kann man es beim Anmeldebildschirm erreichen:

1. Bildschirmtastatur einblenden (links unten)

2. Tastatur-Layout auf „Englisch (USA)“=“EN“ umschalten (links oben)

3. Auf der Bildschirmtastatur Ctrl-Alt-Del eingeben. Dies erzielt die erwünschte Wirkung.

Die Regel, welche diese Eingabe erfordert, kann beispielsweise mit dem Tool „netplwiz“ deaktiviert werden. Dazu einfach (als Admin) „netplwiz“ als Kommando ins Eingabefeld des Startmenüs eingeben.

 

Passwörter mit Dashlane aufbewahren, einsetzen und synchronisieren

Meine Ausgangspunkt

Mein digitales Leben ist „geschützt“ durch gefühlt Zillionen von Passwörtern – faktisch sind es einige Hundert, aber mit Erinnerungsvermögen ist da nichts mehr zu machen. Bisher nutzte ich meinen Browser sowie eine lokale Anwendung auf meinem Smartphone zur Verwahrung dieser Credentials. Das war mehr schlecht als recht, denn mein Gerätebestand umfasst OS X, Android, Windows7 und iOS — alles in allem ein mittlerer Alptraum.

Dashlane „betritt“ mein digitales Leben

Ein Artikel von David Pogue [1][2] machte mich auf Dashlane aufmerksam. Das Tool behebt mein Problem inzwischen wirklich recht gut. Der „Migrationsaufwand“ war bei mir nicht wirklich vernachlässigbar, weil die Import-Funktion bei mir nicht so genial funktioniert hat – also knapp unter „Do What I Think“-Niveau. Auch das Sortieren der einzelnen Records nach Kategorien nervt (auch wenn es vernünftig ist).

Nach dieser Einstiegshürde ist Dashlane aber wirklich nützlich. Ich nutze die Anwendung nicht lokal, sondern synchronisiere darüber mein gutes halbes Dutzend Devices. Das funktioniert kostenlos für 30 Tage, danach nur mit einer kostenpflichtigen Subscription – Eine schwierige Abwägung zwischen Geiz und Komfort!

Meine Konfiguration ist nun so, dass ich Dashlane auf meinem Notebook, Arbeitsplatzrechner, Android-Smartphone, iPad und den privaten Rechnern nutze. Das Smartphone nutze ich auch als One-Time-Password-Generator (Google Authenticator).

Erfahrungen

Dashlane ist schon sehr pfiffig darin, Formulare richtig auszufüllen, aber David Pogues Beschreibung erscheint mir etwas zu euphorisch. Mir sind schon etliche Seiten untergekommen, bei denen die Logik nicht funktioniert. Bei englischsprachigen Seiten funktioniert das Auto-Ausfüllen aber gut.

Wirklich cool ist, dass man das Ausfüllen auf „Subdomains“ ausdehnen bzw. einschränken kann und die Möglichkeit mit mehreren Accounts für eine Website umgehen zu können. Nett ist auch die Möglichkeit, sichere Passwörter erzeugen zu lassen; nützlich sind die Hinweise auf vermutliche kompomitierte Web-Site, bei denen man Accounts hat. Das Wallet habe ich bisher wenig (aber erfolgreich) genutzt. Die anderen Features wie Nachrichten-Austausch und so nutze ich nicht.

Risiken und Nebenwirkungen

Ach ja, das Synchronisieren geht natürlich über die Server von Dashlane. Das Sicherheitsmodell scheint mir wasserdicht zu sein, solange man auf keinem seiner Endgeräte einen Keylogger eingefangen hat oder sonst irgendwie das Masterpasswort verliert. Im Normalfall geht also „unbrauchbarer“ AES256-Datenschrott über den Austauschpunkt. Für die Sicherheit von AES256 gibt es sogar eine Zusicherung der NSA – super!

Um etwas Schutz gegen die Keylogger-Problematik zu haben, nutze ich die Zwei-Faktor-Authentifizierung. Dann kann niemand ein Endgerät mit meinem Dashlane-Datenaustausch-Account verknüpfen. Wenn ich mein Android-Smartphone UND mein Masterpasswort verliere, wäre das natürlich ganz schlecht.

Nun gut, die Prism-Tempora-Sonstwas-Maschinen wissen nun wirklich ganz genau, welche Endgeräte ich nutze. Vermutlich ist dies ja auch für jene Leute die wirklich interessante Information – Passwörter von Individuen brauchen die eh nicht so dringend. Also: „Ja, man gibt Futter für diese Maschinen“, damit das Korrelieren im Big-Data-Wust dann besser geht.

Zusammenfassung

Angesichts des Nutzens finde ich das Werkzeug sehr interessant und werde es weiterhin einsetzen. Unberührt von der technischen Coolness ist der Umstand, dass beispielsweise eine Unternehmspolicy das Hinterlegen bestimmter Credentials in Password-Manager-Anwendungen untersagen kann.

Zwei-Faktor-Verifikation für Google-Accounts

Ob das RRZK-Blog ein guter Platz ist, um über ein Feature von Google-Accounts zu schreiben? Ich bin nicht sicher, aber viele an der Uni nutzen ja die Google-Angebote und daher ist es vielleicht für ein paar Leute von Interesse.

Ich selbst nutze einen Google-Account seit 2006 für mein „persönliches digitales Leben“. Die Datenschutz-Problematik ist mir durchaus bewusst, aber die Funktionen sind einfach zu verführerisch, um widerstehen zu können. Schon lange hat mich gestört, dass meine Daten nur durch ein kleines Passwort von der Welt getrennt sind. In einer globalen Cloud können merk- und tippbare Passwörter praktisch nie ein geeigneter Schutzmechanismus sein.

Seit einigen Monaten bietet Google nun eine Authentifizierungsmethode an, die „Two Step Verification“ genannt wird. Das klingt verdächtig nach der klassischen Zwei- bzw. Mehr-Faktor-Authentifizierung. Dies legt auch die Intro-Page nahe, die sagt „Sign in will require something you know and something you have“. Klingt sehr gut.

Der Start ist auch recht simpel; eine kleine Änderung in den Account-Einstellungen und man erhält Einmal-Zugriff-PINs über SMS, Voice Call oder eine recht nette Authenticator-App (für Android, iOS usw.), die zusammen mit dem traditionellen Passwort den Zugriff auf das Konto ermöglichen. Außerdem kann man Geräte nach eigenem Ermessen als „vertrauenswürdig“ einstufen; dann entfällt dort die Eingabe der zusätzlichen PIN. Auch der Desaster-Fall ist bedacht: dafür gibt es Backup-PINs zum Ausdrucken (Natürlich nicht ausdrucken, falls der Drucker ein Gerät mit Festplatte oder Netzwerk-Anschluss ist 😉 ).

Wie immer gibt es in der schönen neuen Welt auch ein paar Relikte aus der hässlichen alten Welt; in diesem Fall sind das die „anwendungsspezifischen Passwörter„. Diese sind zwar nicht „anwendungsspezifisch“, aber Passwörter mit fast allen schlechten Eigenschaften, die Passwörter haben können. Sie sind nicht anwendungsspezifisch, weil sie den Zugriff auf das komplette Google-Konto ermöglichen. Die Terminologie bedeutet, dass sie nur für eine bestimmte Anwendung eingesetzt werden sollen.

Ein zusätzlicher Schutz (im Vergleich zum klassischen Passwort) besteht neben der Länge darin, dass es weniger Risiken gibt, das Passwort zu verlieren oder unabsichtlich offenzulegen (revealing). Faktisch wird es einmal angezeigt und dann nie wieder; schreibt man es nicht auf, sondern kopiert es sofort in die Anwendung der Wahl und vergisst es, so kann man es selbst nicht mehr verlieren. Trotzdem kann in der rauen Wirklichkeit das eigene Google-Konto über diesen Mechanismus „geknackt“ werden. Also: Der Provider kann es noch „für einen verlieren“ – quasi „RaaS, Revealing as a Service“.

Klar, die „anwendungssprezifischen Passwörter“ sind eben Passwörter und daher ist der Authentifizierungsmechanismus auch keine echte Zwei-Faktor-Authentifizierung. Ich vermute, dass Google daher auch von einer „Two Factor Verification“ spricht. Zu dem Mechanismus und seinen potenziellen Schwachstellen gibt es diverse mehr oder weniger technische Erläuterungen.

Alles sinnlos also? Falls das eigene digitale Leben spartanisch ist und sich auf die Browser-Schnittstelle bzw. moderne Android-Systeme (wohl >2.3) beschränkt, sind anwendungsspezifische Passwörter verzichtbar. Dann ist das Niveau des Zugriffschutzes mit Zwei-Faktor-Verifikation deutlich besser als ohne.

Andernfalls muss man halt mit dem kleinen Schönheitsfehler leben. Ein Sicherheitszuwachs bleibt: Falls man doch einmal das gute alte Passwort verlieren sollte oder falls es ein Service-Provider „für einen selbst“ verliert, kann nicht ohne weiteres von jedem Rechner im Internet auf das Konto zugegriffen werden.

Was man auch noch im Auge behalten sollte:

  1. Gut auf die Backup-Codes aufpassen.
  2. Einen kritischen Blick auf die Liste der Sites, Apps und Dienste, denen Zugriff auf die eine oder andere Information des Google-Kontos eingeräumt wird. Sicherheitsvorfälle in diesen Bereichen können auf das Google-Konto übergreifen.