Gastbeitrag
Daten-Streaming als zukunftsweisendes Paradigma
Herausforderungen und Vorteile - Michael Drogalis, Principal Technologist, Office of the CTO bei Confluent
Seit Jahren werden Daten als neues Gold bezeichnet, weil sie einen immer weiter steigenden Geschäftswert haben. Ähnlich wie Gold sind Daten ein wertvolles Gut, denn sie können Unternehmen helfen, wichtige Erkenntnisse zu gewinnen, fundierte Entscheidungen zu treffen und so die Effizienz oder etwa die Kundenzufriedenheit zu steigern. Ohne diese Informationen kommt heute kaum noch ein Unternehmen aus. Das hat die Geschäftswelt längst verstanden. Die Herausforderungen für die meisten Unternehmen gestalten sich aber meist darin, dass diese Daten nicht für alle Applikationen zugänglich oder nutzbar sind, bzw. die Verflechtung der Datenendpunkte Innovationen nur schwer ermöglicht. Mit Daten-Streaming ist es möglich, diese Geflechte nicht nur zu entkoppeln, sondern Daten in Bewegung, also wenn sie entstehen und am wertvollsten sind, zu verarbeiten und für neue Applikationen vorzuhalten. Dieses Paradigma hält in immer mehr Unternehmen Einzug und ermöglicht diesen schnellere Entscheidungen, Innovationen und Geschäftsprozesse.
Um den Weg für Daten-Streaming in Organisationen zu ebnen, müssen zunächst Hindernisse beseitigt werden, die Entwickler daran hindern, das nötige Handwerkszeug für die Daten-Streaming-Technologie zu erwerben. Selbst für Organisationen mit viel Erfahrung in Daten- und Systemarchitektur kann dies eine Herausforderung sein. Entwickler, die mit traditionellen Datensystemen arbeiten, welche auf Batch-Verarbeitung angewiesen sind, können auf das zurückgreifen, was sie kennen: relationale Datenbanken, die Informationen als endliche Sätze speichern, und objektorientierte Programmierung. Um auf Daten-Streaming „umzuschulen“, müssen sie das Vertraute beiseite legen und einen völlig neuen Ansatz zulassen.
So meistert man die Daten-Streaming-Einführung
Sicherzustellen, dass alle Entwicklerteams bereit sind, Echtzeitdaten zu nutzen, erfordert strategische Planung und nicht zuletzt Zeit. Unternehmen stehen im Allgemeinen vor drei Herausforderungen bei der Einführung von Daten-Streaming-Technologien:
1. Völlig neue Technologie-Ansätze einführen.
2. Lernen, Probleme auf eine neue Art und Weise zu lösen.
3. Und gleichzeitig die zugrunde liegende Infrastruktur aufrechterhalten.
Die erste und dritte Herausforderung sind nicht neu. Die Sprachen, Toolkits und Plattformen, die Entwickler verwenden, ändern sich oft, und das Erlernen neuer Technologien ist eine unvermeidliche Notwendigkeit. Gleichzeitig prüfen Unternehmen immer, ob es kosteneffektiver ist, interne Infrastruktur-Betreiber einzustellen oder für verwaltete Dienste zu bezahlen. Die größere Herausforderung besteht darin, Entwicklern beizubringen, ihre Herangehensweise an die Problemlösung neu zu überdenken. Phänomene, bei denen eine neue Technologie Entwickler dazu bringt, darüber nachzudenken, wie sie Probleme lösen, geschehen um uns herum und oft mit guten Ergebnissen. React hat Entwickler aufgefordert, darüber nachzudenken, wie sie UIs erstellen, was zu dramatisch einfacheren und weniger fehlerhaften Frontend-Anwendungen führte. GraphQL hat Entwickler ermutigt, anders darüber nachzudenken, wie sie APIs entwickeln, was zu schlankeren und sichereren Schichten über Datensystemen führte. Kubernetes hat Entwickler gebeten, darüber nachzudenken, wie sie Infrastruktur verwalten, was zu einfacher zu verstehenden, deklarativen Umgebungsmodellen führte. Daten-Streaming ist nicht anders. In gewisser Weise vereinfacht es Probleme - aber es ist ein Ansatz, der vielen Entwicklern noch unbekannt ist, sodass es konsequentes Üben erfordert, um es zu beherrschen: Daten müssen als Events gedacht werden. Aus Batch-Verarbeitung muss Echtzeit-Verarbeitung werden.
Den Grundstein legen
Von der Berichtserstellung zur Performance von Marketingkampagnen bis hin zur Überwachung der IT-Sicherheit - das Warten auf Daten und Informationen ist in keiner Geschäftsfunktion oder -branche mehr nachhaltig. Oft werden die für diese Lösungen benötigten Daten zwar bereits in Echtzeit generiert - sie sind jedoch in isolierten Datenbanken und Systemen eingeschlossen. Wo viele Teams scheitern, ist die Aufrechterhaltung des traditionell zentralisierten Datenbesitzmodells. Wenn ein Unternehmen seine Daten-Streaming-Nutzung ausbaut und skalieren möchte, können die Entwicklerteams schnell an ihre Grenzen kommen, wenn sie Wochen oder sogar Monate benötigen, um neue Datenpipelines aufzubauen. Zudem haben sie meist viel zu wenig Zeit, zu lernen, mit der neuen Technologie zu arbeiten. Umso wichtiger ist es, dezentrale, domänengesteuerte Datenverwaltung von Anfang an in den Plan aufzunehmen. Dies bedeutet, dass domänenspezifischen Teams die Möglichkeit gegeben wird, Datenpipelines zu verwalten und zu besitzen, die auf einer gemeinsamen Daten-Streaming-Plattform verfügbar sind, während sich das zentrale Team auf die Bereitstellung von Plattformdiensten und die Kontrolle der Datenverwaltung konzentriert. Dieser Ansatz gibt Entwicklern viele Möglichkeiten, ihre Fähigkeiten zu testen und zu erweitern, während Echtzeitdaten zu einem echten Wettbewerbsvorteil für die gesamte Organisation werden.
Den Geschäftswert von Echtzeitdaten erkennen
Trotz der Implementierungsherausforderungen sind event-gesteuerte Architekturen und Echtzeit-Anwendungen immer häufiger im Einsatz, da sie die drei Prioritäten lösen, die jedem Geschäftsproblem zugrunde liegen: Kosten sparen, Geld verdienen und Risiken reduzieren. Um den vollen Wert von Echtzeitdaten auszuschöpfen, müssen Teams zusammenarbeiten und eine neue Herangehensweise an die Problemlösung zulassen - indem sie Geschäftsherausforderungen und ihre Lösungen als fortlaufende Ereignisketten behandeln. Das bedeutet oft, neue Geschäftsprozesse zu entwerfen (und alte zu überarbeiten), sowie die IT-Infrastruktur und das Datenbesitzmodell, die dies unterstützen.
In den letzten 10 Jahren haben wir gesehen, wie Unternehmen Daten in Echtzeit aufnehmen und verarbeiten, um kreative Lösungen für alltägliche Probleme zu entwickeln. Dienste wie Fahrgemeinschafts-Apps sowie Echtzeit-Peer-to-Peer-Zahlungen haben lang etablierte Lösungen verdrängt. Bevor diese Ideen zum Standard wurden, mussten die Entwickler, die diese Anwendungen erstellt haben, zuerst die Grundlagen des Daten-Streaming-Paradigmas verstehen und beherrschen lernen. Letztendlich hängt in jedem Unternehmen alles davon ab, ob Entwicklerteams das nötige Werkzeug und Unterstützung bekommen, die sie benötigen, um zu experimentieren, zu scheitern und nicht zuletzt, um erfolgreich voranzukommen und so Daten zu Gold machen.