Kommentar von Boris Trofimov, Sigma Software Können Big-Data-Lösungen erschwinglich sein?

Autor / Redakteur: Boris Trofimov / Nico Litzel

Eine der größten Mythen ist nach wie vor, dass sich nur große Unternehmen Big-Data-Lösungen leisten können, dass sie nur für riesige Datenmengen geeignet sind und zudem ein Vermögen kosten. Das stimmt heute nicht mehr, denn die vergangenen Jahre waren von bedeutenden technologischen Entwicklungen geprägt.

Firmen zum Thema

Der Autor: Boris Trofimov ist Software-Architekt bei Sigma Software
Der Autor: Boris Trofimov ist Software-Architekt bei Sigma Software
(Bild: Sigma Software)

Die erste Revolution umfasst Reife und Qualität. Es ist kein Geheimnis, dass Big-Data-Technologien vor zehn Jahren mit Anstrengungen einhergingen, sodass sie funktionierten oder alle Teile auch zusammenarbeiten konnten.

Abbildung 1. Typische Stadien
Abbildung 1. Typische Stadien
(Bild: Boris Trofimov)

In der Vergangenheit gab es unzählige Geschichten von Entwicklern, die 80 Prozent ihrer Zeit damit vergeudeten, Pannen mit Spark, Hadoop, Kafka etc. zu beheben. Heutzutage sind diese Technologien zuverlässiger geworden, haben Kinderkrankheiten überwunden und gelernt, miteinander zu arbeiten.

Die Wahrscheinlichkeit, dass es zu Ausfällen in der Infrastruktur kommt, ist viel größer, als hier interne Fehler zu entdecken. Selbst Infrastrukturprobleme sind in den meisten Fällen kein allzu großes Problem mehr, da die meisten Big Data Frameworks nun fehlertolerant ausgelegt sind. Darüber hinaus bieten diese Technologien stabile, leistungsstarke und einfache Abstraktionen über Berechnungen und ermöglichen es so Entwicklern, sich auf die geschäftliche Seite der Entwicklung zu konzentrieren.

Die Vielfalt der Big-Data-Technologien

Die zweite Revolution findet gerade jetzt statt: Myriaden von Open-Source- und proprietären Technologien wurden in den vergangenen Jahren entwickelt – Apache Pino, Delta Lake, Hudi, Presto, Clickhouse, Snowflake, Upsolver, Serverless und viele mehr. Die kreative Energie und die Ideen von Tausenden von Entwicklern ermöglichten fantastische Lösungen.

Abbildung 2. Big-Data-Technologie-Stack
Abbildung 2. Big-Data-Technologie-Stack
(Bild: Boris Trofimov)

Sprechen wir über eine typische analytische Datenplattform (ADP). Sie besteht aus vier Hauptebenen:

  • Dashboards und Visualisierung – die „Fassade“ der ADP, die analytische Zusammenfassungen für Endbenutzer zugänglich macht.
  • Datenverarbeitung – Datenpipelines zur Validierung, Anreicherung und Konvertierung von Daten von einem Format in ein anderes.
  • Data Warehouse – ein Ort zur Aufbewahrung gut organisierter Daten – Rollups, Data Marts usw.
  • Data Lake – Ort, an dem sich reine Rohdaten befinden, eine Basis für das Data Warehouse.

Jede Ebene bietet Alternativen für jeden Bedarf und Geschmack. Die Hälfte dieser Technologien wurde dabei in den vergangenen fünf Jahren entwickelt.

Das Wichtige an ihnen ist, dass diese Technologien mit der Absicht entwickelt werden, miteinander kompatibel zu sein. Zum Beispiel könnte eine typische kostengünstige kleine ADP aus Apache Spark als Basis der Verarbeitungskomponenten, AWS S3 oder ähnlich als Data Lake, Clickhouse als Warehouse und OLAP für Abfragen mit niedriger Latenz und Grafana für ein nettes Dashboard bestehen (siehe Abb. 3).

Abbildung 3. Typische kostengünstige kleine ADP
Abbildung 3. Typische kostengünstige kleine ADP
(Bild: Boris Trofimov)

Komplexere ADPs können auf eine andere Art und Weise zusammengestellt werden. Beispielsweise kann die Einführung von Apache Hudi mit S3 als Data Warehouse einen viel größeren Umfang sicherstellen, während Clickhouse für den Zugriff auf aggregierte Daten mit geringer Latenz weiterhin zur Verfügung steht (siehe Abb. 4).

Abbildung 4. ADP in größerem Maßstab
Abbildung 4. ADP in größerem Maßstab
(Bild: Boris Trofimov)

Kosteneffizienz

Die dritte Revolution steht in Zusammenhang mit Clouds. Cloud-Dienste wurden zu einem echten Wendepunkt. Sie betrachten Big Data als eine gebrauchsfertige Plattform (Big Data-as-a-Service), die es Entwicklern ermöglicht, sich auf die Entwicklung von Funktionen zu konzentrieren, während hingegen die Cloud sich die Cloud um die Infrastruktur kümmern kann.

Abbildung 5 zeigt ein weiteres Beispiel für eine ADP, die die Leistungsfähigkeit der serverlosen Technologien nutzt – von der Speicher- über die Verarbeitungs- bis zur Präsentationsebene. Sie hat die gleichen Design-Ideen; die Technologien werden jedoch durch von AWS verwaltete Dienste ersetzt.

Abbildung 5. Typische kostengünstige serverlose ADP
Abbildung 5. Typische kostengünstige serverlose ADP
(Bild: Boris Trofimov)

AWS ist hier nur ein Beispiel. Diese ADP könnte auch mithilfe eines jeden anderen Cloud-Providers aufgebaut werden.

Entwickler haben die Möglichkeit, bestimmte Technologien und einen gewissen Grad an Serverlosigkeit zu wählen. Je serverloser es ist, desto mehr kann man die Lösung individuell zusammenstellen. Andererseits bindet man sich stark an Hersteller. Lösungen, die auf einen bestimmten Cloud-Anbieter und serverlosen Stack festgelegt sind, können schnell auf den Markt kommen. Eine kluge Wahl zwischen serverlosen Technologien kann die Lösung kosteneffizient machen.

Diese Option ist jedoch für Start-ups nicht ganz so nützlich, da sie dazu neigen, typische 100.000-Dollar-Cloudbudgets zu nutzen und zwischen AWS, GCP und Azure hin und her zu springen. Das muss im Vorfeld geklärt werden, und stattdessen müssen mehr Cloud-agnostische Technologien vorgeschlagen werden.

Normalerweise unterscheiden Ingenieure die folgenden Kosten:

  • Entwicklungskosten
  • Unterhaltskosten
  • Änderungskosten

Sprechen wir sie der Reihe nach an.

Entwicklungskosten

Cloud-Technologien vereinfachen die Arbeit definitiv. Es gibt mehrere Bereiche, in denen sie sich positiv auswirken.

Zum einen sind Architektur- und Designentscheidungen zu nennen. Der serverlose Stack bietet eine Vielzahl von Mustern und wiederverwendbaren Komponenten, die eine solide und konsistente Grundlage für die Architektur der Lösung bilden.

Es gibt nur eine Sorge, die die Entwurfsphase verlangsamen könnte — Big-Data-Technologien sind von Natur aus verstreut, sodass entsprechende Lösungen unter Berücksichtigung möglicher Fehler und Ausfälle entworfen werden müssen, um Datenverfügbarkeit und -konsistenz gewährleisten zu können. Als Bonus erfordern die Lösungen weniger Aufwand, will man sie skalieren.

An zweiter Stelle sind Integration und durchgehende Tests zu nennen. Der serverlose Stack ermöglicht das Erstellen isolierter Sandboxen, das Abspielen, Testen und Beheben von Problemen und reduziert somit Entwicklungsschleifen und -zeit.

Ein weiterer Vorteil ist, dass die Cloud die Automatisierung des Bereitstellungsprozesses der Lösung erzwingt. Unnötig zu sagen, dass diese Eigenschaft ein obligatorisches Merkmal jedes erfolgreichen Teams ist.

Unterhaltskosten

Eines der Hauptziele, das Cloud-Anbieter angeblich lösen wollten, war der geringere Aufwand für die Überwachung und Aufrechterhaltung von Produktionsumgebungen. Sie versuchten, eine Art ideale Abstraktion zu schaffen, an der fast keine Entwickler beteiligt waren.

Die Realität sieht jedoch etwas anders aus. Was diese Idee betrifft, so erfordert die Wartung in der Regel noch einige Anstrengungen. Die nachstehende Tabelle hebt die wichtigsten hervor.

Tabelle Wartung
Tabelle Wartung
(Bild: Boris Trofimov)

Daneben hängt die Gesamtrechnung aber auch sehr stark von der Infrastruktur und den Lizenzkosten ab. Die Entwurfsphase ist äußerst wichtig, da sie die Möglichkeit bietet, bestimmte Technologien in Frage zu stellen und ihre Laufzeitkosten im Voraus abzuschätzen.

Änderungskosten

Eine weiterer wichtiger Punkt bei Big-Data-Technologien sind die Kosten des Wandels. Unsere Erfahrung zeigt, dass es keinen Unterschied zwischen Big Data und anderen Technologien gibt. Wenn die Lösung nicht überdimensioniert ist, dann sind die Kosten für eine Änderung völlig vergleichbar mit einem Non-Big-Data-Stack. Es gibt jedoch einen Vorteil, der mit Big Data einhergeht: Es ist selbstverständlich, dass Big-Data-Lösungen entkoppelt konzipiert werden. Richtig konzipierte Lösungen sehen nicht wie ein Monolith aus, sodass lokale Änderungen innerhalb kurzer Zeit dort vorgenommen werden können, wo sie erforderlich sind, – und das mit wenig Risiko, die Produktion zu beeinträchtigen.

Zusammenfassung

Zusammenfassend lässt sich sagen, dass Big Data unserer Meinung nach erschwinglich sein kann. Big Data schlägt Entwicklern neue Entwurfsmuster und -ansätze vor, die sie nutzen können, um jede beliebige analytische Datenplattform zusammenzustellen, die den strengsten Geschäftsanforderungen entspricht und gleichzeitig kostengünstig ist.

Big-Data-getriebene Lösungen könnten eine hervorragende Grundlage für schnell wachsende Start-ups sein, die flexibel sein, schnelle Änderungen anwenden und einen kurzen Time-to-Market haben möchten. Wenn Unternehmen größere Datenmengen verarbeiten müssen, können die Big-Data-Lösungen zusammen mit den Unternehmen wachsen

Big-Data-Technologien ermöglichen die Implementierung von Near-Real-Time-Analysen in kleinem oder großem Maßstab, während klassische Lösungen mit der Performance zu kämpfen haben.

Cloud-Anbieter haben Big Data auf die nächste Stufe gehoben und bieten zuverlässige, skalierbare und sofort einsetzbare Funktionen. Noch nie war es einfacher, kostengünstige ADPs. Steigern Sie Ihr Geschäft mit Big Data!

Artikelfiles und Artikellinks

(ID:47019163)