Das „Warum“ der Datenverarbeitung liegt auf der Hand, wenn man die große Anzahl von Sensoren, vernetzten Geräten, Websites oder mobilen Anwendungen betrachtet; oder einfach alle Daten, die sowohl von Menschen als auch von Maschinen erzeugt werden. Die immensen, rasch ansteigenden Datenberge erfordern kontinuierlich leistungsfähigere Ansätze zur Datenverarbeitung. Open Source spielt dabei nach Meinung der data Artisans aus Berlin eine wichtige Rolle.
data Artisans wurde von den Initiatoren des Open Source Projekts Apache Flink gegründet, um Unternehmen Echtzeit-Datenanwendungen zu ermöglichen.
Die „Vorgeschichte“ von Big Data
Mit der Erfindung des Computers entstand ein deutlicher Bedarf an Informationen und Datenverarbeitung. In diesen sehr frühen Tagen mussten Informatiker benutzerdefinierte Programme zur Datenverarbeitung schreiben und diese Programme höchstwahrscheinlich in eine Lochkarte stecken. Die nächsten Entwicklungsschritte brachten die Assemblersprache und zielführendere Programmiersprachen wie Fortran, dann C und Java hervor. Aus der „prähistorischen“ Big-Data-Perspektive betrachtet, würden Softwareingenieure diese Frameworks nutzen, um speziell entwickelte Programme für bestimmte Datenverarbeitungsaufgaben zu schreiben. Dieses Paradigma der Datenverarbeitung war jedoch nur für wenige Auserwählte, die einen Programmier-Background hatten, zugänglich. Dies verhinderte eine breitere Akzeptanz seitens Datenanalytikern oder der Geschäftswelt, die Informationen verarbeiten und darauf basierend spezifische Entscheidungen treffen wollten.
Als nächster Schritt setzte sich um die 1970er Jahre der Einsatz von Datenbanken durch. Traditionelle relationale Datenbanksysteme wie IBMs Datenbanken ermöglichten die Nutzung von SQL (für „Structured Query Language“, auf Deutsch „Strukturierte Abfrage-Sprache“) und erhöhten die Akzeptanz der Datenverarbeitung bei einem breiteren Publikum. SQL ist eine standardisierte und ausdrucksstarke Abfragesprache, die sich ähnlich wie Englisch liest und mehr Menschen Zugang zur Datenverarbeitung bot. Die Anwender waren nicht mehr auf einen Programmierer angewiesen, um spezielle Einzelprogramme zu schreiben und Daten zu analysieren. SQL erweiterte auch die Anzahl und Art der Datenverarbeitungsaufgaben wie Geschäftsanwendungen, Berechnung der Abwanderungsquote oder Warenkorbgröße, Jahresvergleich von Wachstumszahlen etc.
Die Anfänge von Big Data
Die Ära von Big Data begann mit dem von Google herausgegebenen MapReduce-Paper, das ein einfaches Modell erklärt, das auf den beiden Primitiven Map und Reduce (die Funktionen zweiter Ordnung sind) basiert, die parallele Berechnungen über eine große Anzahl paralleler Maschinen ermöglichen. Offensichtlich waren parallele Berechnungen schon vor der MapReduce-Ära durch mehrere Computer, Supercomputer und MPI-Systeme möglich. MapReduce stellte es jedoch einem breiteren Publikum zur Verfügung.
Dann kam Apache Hadoop als Open-Source-Implementierung des Frameworks (ursprünglich bei Yahoo! implementiert). Hadoop war bald im Open-Source-Bereich weit verbreitet und stand somit einem breiteren Publikum zur Verfügung. Hadoop setzte sich bei verschiedenen Unternehmen durch und viele Big-Data-Akteure stammen aus dem Hadoop-Framework (Cloudera oder Hortonworks). Hadoop hat ein neues Paradigma in der Datenverarbeitung eingeführt: eines, in dem sich Daten in einem verteilten Dateisystem oder Speicher (z.B. HDFS for Hadoop) speichern lassen, um zu einem späteren Zeitpunkt Fragen zu diesen Daten stellen zu können (Abfrage von Daten). Der Hadoop-Raum sah einen ähnlichen Weg vor wie bei den relationalen Datenbanken (die Geschichte wiederholt sich immer wieder), wo der erste Schritt die benutzerdefinierte Programmierung durch einen bestimmten „Cast“ von Personen beinhaltete, die in der Lage waren, Programme zu schreiben, um dann SQL-Abfragen auf Daten in einem verteilten Dateisystem wie Hive oder anderen Storage-Frameworks zu implementieren.
Die nächste Stufe der Batch-Verarbeitung
Der nächste Schritt für Big Data war die Einführung von Apache Spark. Spark ermöglichte eine zusätzliche Parallelisierung und brachte die Batch-Verarbeitung auf die nächste Stufe. Die Batch-Verarbeitung oder Stapelverarbeitung sieht das Einfügen von Daten in ein Speichersystem vor, auf dem dann Berechnungen geplant werden. Das Hauptkonzept besteht darin, dass die Daten irgendwo sitzen, während regelmäßig (täglich, wöchentlich, stündlich) Berechnungen durchgeführt werden, um Ergebnisse basierend auf früheren Informationen sichtbar zu machen. Diese Berechnungen laufen nicht kontinuierlich, sondern haben einen Anfang und ein Ende. Daher müssen sie fortlaufend neu ausgeführt werden, um aktuelle Ergebnisse zu erhalten.
Die Entwicklung von Big Data zu Fast Data: Stream-Verarbeitung
In einem weiteren Schritt der Big-Data-Evolution folgte die Einführung der Stream-Verarbeitung mit Apache Storm als erstem weit verbreiteten Framework (es gab andere Forschungssysteme und Frameworks zur gleichen Zeit, aber Storm hatte eine zunehmende Akzeptanz). Was dieses Framework ermöglicht, ist das Schreiben von Programmen, die kontinuierlich (24/7) laufen. Im Gegensatz zum Batch-Verarbeitungsansatz, bei dem die Programme und Anwendungen einen Anfang und ein Ende haben, wird das Programm bei der Stream-Verarbeitung kontinuierlich auf dem Datenstrom ausgeführt und produziert Ergebnisse in Echtzeit, während die Daten generiert werden. Die Stream-Verarbeitung wurde mit der Einführung von Apache Kafka (ursprünglich bei LinkedIn) als Speichermechanismus für einen Nachrichtenstrom weiterentwickelt. Kafka fungierte als Puffer zwischen den Datenquellen und dem Verarbeitungssystem (wie Apache Storm).
Ein kleiner Umweg in der Entwicklung von Big Data war die sogenannte „Lambda-Architektur“. Diese Architektur entstand, weil die ersten Anwender der Stream-Verarbeitung nicht glaubten, dass Stream-Verarbeitungssysteme wie Apache Storm zuverlässig genug waren, so dass sie beide Systeme (Batch- und Stream-Verarbeitung) gleichzeitig betrieben. Die Lambda-Architektur kombiniert also die beide Systeme, wobei ein Stream-Verarbeitungssystem wie Apache Storm für Echtzeit-Einblicke genutzt wird, aber die Architektur dennoch periodisch auf ein Batch-Verarbeitungssystem zurückgreift, das die „Grundwahrheit des Geschehens“ aufrechterhält. Zum jetzigen Zeitpunkt wird die Stream-Verarbeitung nur für Sofortmaßnahmen oder Analysen verwendet, nicht aber für die „Ground Source of Truth“.
Die Stream-Verarbeitung wird zugänglich gemacht: Apache Flink
Die Landschaft änderte sich etwa um 2015 herum, als Apache Flink begann, sich zu einem führenden Stream-Processing-Framework zu entwickeln, das von namhaften Entwicklern, datenorientierten Unternehmen und Analytikern übernommen wurde. Von Anfang an zeichnete sich Flink durch sehr starke Garantien, eine genau abgestimmte Semantik und eine fehlertolerante Processing-Engine aus. Die Anwender sahen sich darin überzeugt, dass die Lambda-Architektur keine Notwendigkeit mehr sei und Stream Processing für komplexe Ereignisverarbeitung und kontinuierlich laufende, unternehmenskritische Anwendungen geeignet sei. Der gesamte Aufwand, der mit dem Bau und der Wartung von zwei Systemen (ein Batch- und ein Stream-Verarbeitungssystem) verbunden war, konnten nun entfallen, da Flink ein zuverlässiges und zugängliches Datenverarbeitungs-Framework einführte.
Die Stream-Verarbeitung führte ein neues Paradigma und einen Wandel in der Denkweise ein: von einem Anfrage-Antwort-Ansatz, bei dem Daten gespeichert werden, bevor Fragen zu einem Ereignis gestellt werden können, zu einem Ansatz, bei dem die Fragen zuerst gestellt werden, um in Echtzeit Informationen zu erhalten, während die Daten laufend generiert werden.
Mithilfe der Stream-Verarbeitung lässt sich beispielsweise ein Betrugserkennungsprogramm entwickeln, das rund um die Uhr läuft. Es erfasst Ereignisse in Echtzeit und liefert wertvolle Einblicke, wenn es Anzeichen auf Kreditkartenbetrug erkennt. Dadurch kann verhindert werden, dass der Betrug tatsächlich stattfinden kann. Dies ist eine der größeren Veränderungen in der Datenverarbeitung, weil sie Echtzeiteinblicke in das Geschehen in der Welt und proaktives Handeln ermöglicht.
Fazit und Ausblick
„Bei der Entwicklung der Open Source-Datenverarbeitung wird ein gemeinsames Muster deutlich: Ein neues Framework wird auf dem Markt eingeführt, das zunächst einem bestimmten Publikum zur Verfügung steht, das kundenspezifische Programme zur Datenverarbeitung schreiben kann“, fasst Dr. Stephan Ewen von data Artisans abschließend zusammen. „Dann kommt die Einführung von SQL im Framework, das es für breitere Zielgruppen, die nicht unbedingt Programme für anspruchsvolle Datenverarbeitung schreiben können müssen, zugänglich macht. Mit der Einführung von SQL in der Stream-Verarbeitung dürfte für die Zukunft eine breite Akzeptanz für das Framework in Unternehmen und ein Markt, der exponentiell wächst, zu erwarten sein.“
Unter Big Data (dt. „große Daten“) versteht man das Zusammenführen von Daten aus verschiedenen Quellen, um einen möglichst umfassenden Datenbestand zu erhalten. Visuelle Analysen können u.a. dabei helfen, diese Datenmengen leichter zu interpretieren. Die Gesamtdatenmenge wird z.B. für noch effizienteres Targeting oder Customer Relationship Management genutzt. Übergeordnetes Ziel beim Zusammentragen von Big Data ist eine Steigerung von Conversions bzw. Umsatz. Die Datenbestände, die als Big Data bezeichnet werden, benötigen entsprechende Speicherkapazitäten, die nicht mehr in Gigabyte gemessen werden können. Allerdings gibt es keine feste Grenze, ab welcher von Big Data gesprochen wird.
Entwicklung
Mit der rasanten Entwicklung von Speichermedien haben sich auch die Möglichkeiten potenziert, noch größere Datenmengen zu analysieren und daraus Profit zu ziehen. Darüber hinaus steigt die Datenmenge weltweit ebenso stark an. Man geht davon aus, dass sich das Datenvolumen weltweit in Zweijahresschritten verdoppelt. Die Ursache hierfür ist wiederum in der steigenden Digitalisierung der Welt zu sehen. Denn während Datenbestände früher manuell gepflegt oder erfasst wurden, übernehmen dies heute Maschinen und schnelle Rechner. Vom Einkauf im Supermarkt über die Buchung einer Reise bis hin zur Bestellung im Restaurant oder der Verwaltung von Krankenkassendaten: alle Schritte werden von Rechnern aufgezeichnet, verwaltet und organisiert.
Big Data ist folglich eine Konsequenz aus einem allgemeinen Trend der Menschheit, immer größere Datenvolumina zu produzieren. Heute wird Big Data sowohl in der Wissenschaft als auch in der Wirtschaft genutzt.
Technische Voraussetzungen
Die Verarbeitung großer Datenmengen setzt viele Einzelschritte voraus. Mit üblicher Technik kann Big Data jedoch nicht mehr effizient verarbeitet werden. Denn das setzt bei der verwendeten Software voraus,
dass diese viele Datensätze auf einmal verarbeiten kann
dass sie große Datenmengen schnell importieren kann
dass sie Datenbestände schnell verfügbar macht
dass sie mehrere Datenbankabfragen zugleich bearbeiten kann
Derartige Voraussetzungen erfüllen nicht nur kostenpflichtige Programme, wie beispielsweise NeuroBayes, sondern auch Software wie Hadoop.
Einsatzmöglichkeiten von Big Data
Von Big Data versprechen sich vor allem Großunternehmen entscheidende Vorteile gegenüber Wettbewerbern, die über geringere Datenbestände verfügen. Zugleich lassen sich vielfach Kosten sparen, wenn ganze Betriebsabläufe alleine anhand von automatisiert ausgelesenen Daten gesteuert werden können. Doch auch in der Wissenschaft können völlig neue Auswertungsansätze auf statistischer Basis getestet werden, die nur mit Hilfe von Big Data möglich sind.
Folgende Anwendungsmöglichkeiten sind denkbar und werden in der Praxis genutzt:
eine automatisierte und schnelle Marktforschung, die auf Veränderungen unmittelbar reagieren kann
Aufdecken von Missbrauch bei Finanztransaktionen
umfassende Webanalysen zur Steigerung und Optimierung von Online-Marketing-Maßnahmen
umfassende medizinische Diagnostik
Steuerung des Energieverbrauchs, z.B. in einem intelligenten Stromnetz
erweiterte Möglichkeiten im E-Commerce durch flexibles Up-Selling oder Cross-Selling
Rasterfahndung oder Profilerstellung für Geheimdienste oder Polizei
Big Data wird als eine wichtige Komponente im Online Marketing betrachtet. Vor allem große Brands können mit riesigen Datenbeständen arbeiten, die noch mehr Marketing-Potential liefern. Allerdings wird an Big Data häufig auch ähnlich wie beim Targeting kritisiert, dass mit großen Datenmengen hochpräzise Nutzerprofile angelegt werden können. Dadurch bietet Big Data einen großen Eingriff in die Privatsphäre von Usern. Unternehmen, die mit Big Data arbeiten, müssten ihre Kunden bzw. Besucher auf Ihren Websites in den Datenschutzbestimmungen darauf hinweisen, dass Nutzerdaten weiterverarbeitet werden.
Unternehmen wie Google oder andere Suchmaschinenprovider, die sich mit Werbung finanzieren, arbeiten seit Jahren mit Big Data, die sie aus Nutzerdaten und sonstigen verfügbaren Quellen speisen. Die regelmäßigen Debatten um den Datenschutz verdeutlichen das Problemfeld „Big Data“, da dadurch einzelnen Unternehmen zu viel Datenhoheit geboten wird. Aber auch bei anderen Anwendern von Big Data erhöht sich die Gefahr, dass Daten missbräuchlich eingesetzt werden und dieser Missbrauch Bürgern langfristig schadet.
Ein weiterer Kritikpunkt an Big Data besteht darin, dass die Analysemethoden aufgrund der immensen Datenmengen nur auf Algorithmen beruhen und demnach eine sehr technische Ausrichtung haben. Allerdings steht die IT-Branche noch am Anfang bei der Behandlung von riesigen Datenmengen und es sind noch präzisere Auswertungsmethoden zu erwarten.
Nutzen für SEO
Wenn man die Möglichkeiten betrachtet, die Webanalyse-Tools wie Google Analytics liefern, profitieren auch SEOs von Big Data. Denn durch Benchmark-Vergleiche, Keyword-Tools etc. erhalten Suchmaschinenoptimierer Teilergebnisse aus enormen Datenbeständen übersichtlich aufbereitet, um diese für die Optimierung ihrer Projekte zu verwenden. Große Unternehmen wiederum, die ihre Datenbestände zusammenführen, können ebenfalls wichtige Aspekte für SEO-Strategien sowie das Targeting liefern.
2. Big Data-Quellen analysieren
Big Data steht und fällt mit der Qualität der Daten. Deshalb ist es für Unternehmen entscheidend, an dieser Stelle zu identifizieren, welche Datenquellen und Datenströme vorliegen. Datenquellen und -ströme können sich von Unternehmen zu Unternehmen unterscheiden. Datenquellen können z.B. folgende sein:
Soziale Netzwerke: Facebook, Instagram, XING oder LinkedIn sind Kommunikations- und Interaktionsplattformen für Millionen Menschen weltweit. Hierüber werden täglich gigantische Datenmengen generiert.
Mobile Endgeräte: Daten aus mobilen Endgeräten gewähren Informationen über die Aufenthaltsorte der jeweiligen Nutzer. Insbesondere für standortgetriebenes Marketing ergeben sich dadurch zahlreiche Vorteile.
Multimediadaten: Multimediadaten machen mittlerweile den Großteil an Daten im Internet aus. Alleine Youtube gewinnt pro Minute 75 Stunden neues Videomaterial. Durch die Fülle an Daten, die Videos enthalten, sind Multimediadaten besonders wertvoll.
Textdateien: Auch Textdateien bilden eine wertvolle Datengrundlage. Mittlerweile ist es möglich, Millionen von Dokumenten in Echtzeit zu durchsuchen.
3. Datenmanagement
Sind die Datenquellen ausgemacht, muss überlegt werden, wie auf diese zugegriffen werden kann und wie diese abgespeichert und verwaltet werden sollen. In diesem Zusammenhang stellt sich die Frage, ob zusätzliche Softwaresysteme angeschafft werden müssen, die die nötige Schnelligkeit, Rechenleistung und Flexibilität mitbringen, um auf notwendige Daten zuzugreifen. Eng damit verbunden ist eine ausreichende Datenqualität. Diese sollte sichergestellt werden, um Anwendern den größtmöglichen Nutzen zu liefern. Stammen die Daten aus unterschiedlichen Quellen und liegen in verschiedenen Formaten vor, sollten diese einheitlich aufbereitet werden, um Kompatibilitätsprobleme zu vermeiden. Schließlich sollte die Data Governance und das Stammdatenmanagement Berücksichtigung finden. Ersteres umfasst die Regeln und Vorgaben, die sicherstellen, dass die Datenspeicherung und -verarbeitung im Einklang mit der Geschäftsstrategie des Unternehmens ist. Im Rahmen des Stammdatenmanagements sollte es eine einheitliche Unternehmensentscheidung dazu geben, wie die Daten im Unternehmen gespeichert und überwacht werden.
4. Analyse-Techniken
Welche Analyse-Methoden verwendet werden, hängt stark von dem Ziel ab, das mit der Analyse verbunden ist. Zu den gängigen Analysemethoden zählt z.B. Text Mining, bei dem größere Textmengen auf analysierbare Informationen hin untersucht werden. Data Mining hingegen prüft einströmende Datenmengen auf Zusammenhänge, Gemeinsamkeiten und Regelmäßigkeiten, sodass hieraus relevante Informationen für das Unternehmen gewonnen werden können. Ein weiteres Element ist das sogenannte Process Mining, bei dem komplexe Geschäfts- und/oder Produktionsprozesse anhand ihrer erzeugten Daten untersucht und gegebenenfalls optimiert werden. Erste Berührungspunkte zum Thema Künstliche Intelligenz gibt es beim Machine Learning, bei dem Maschinen anhand von Daten automatisch Zusammenhänge identifizieren können und auf dieser Basis erneut Daten generieren, die zum Beispiel für strategische Unternehmensentscheidungen herangezogen werden können.