Wenn ich derzeit mit meinen Kunden eine neue Datenplattform konzipiere, ist eine der zentralen Entscheidungen, ob die Plattform on-premise oder in der Cloud betrieben werden soll. Manche Unternehmen wollen ihre Daten lieber selbst kontrollieren und nicht von den USA abhängig sein, aber nicht nur der isolationistische Kurs der USA unter Trump lässt Gründe gegen eine Cloud-Lösung finden. Bereits im Jahr 2022 beschrieb Andreessen Horowitz das Kostenparadox der Cloud-Anbieter mit dem Zitat: „You’re crazy if you don’t start in the cloud; you’re crazy if you stay on it“. Was bedeutet dies für die Gestaltung von Datenplattformen?
Die versteckten Kostenfallen der Cloud
Eines der größten Probleme bei der Nutzung von Cloud-Diensten sind die unerwarteten Kostensteigerungen. Viele Unternehmen berichten von erheblich höheren Ausgaben als geplant. Das liegt oft an intransparenten Preismodellen und versteckten Gebühren, die erst im Nachhinein sichtbar werden. Wie viel die Cloud wirklich kostet, kommt drauf an, wie oft sie genutzt wird. Die eigentlichen Kostentreiber sind häufig schwer zu ermitteln (vor allem, wenn Nutzer frei Queries auf der Datenplattform ausführen können, können die Verarbeitungskosten stark steigen). IIm Gegensatz dazu haben On-Premise-Lösungen oft eine vorhersehbarere Kostenstruktur. Allerdings muss man am Anfang auch oft mehr in Hardware und Software investieren. Die laufenden Betriebskosten wie Wartung und Stromverbrauch sind vorhersehbar, was die Budgetplanung erleichtert. Kostenvergleiche zeigen, dass On-Premise-Lösungen abhängig vom Anwendungsfall wirtschaftlich, aber je nach Nutzungsintensität auch kostspieliger als Cloud-Optionen sein können und umgekehrt. Der Wechsel in die Cloud reduziert administrative Aufgaben, die von Service-Providern automatisiert werden, und ermöglicht eine flexible Skalierung. Aber das heißt nicht, dass die Ausgaben sinken. Die Cloud-Umgebungen sind nämlich oft ziemlich komplex und für Unternehmen eine echte Herausforderung. Die gängigen Anbieter haben zwar Tools zur Kostenkalkulation im Angebot, aber oft gehen die Unternehmen bei ihren Berechnungen von zu wenigen benötigten Ressourcen aus. Und für die Nutzung unterschiedlicher Dienste (DBaaS, Compute, API Mngt, LBaaS) werden auch noch ganz verschiedene Faktoren zur Berechnung herangezogen. Manche Ressourcenarten verrechnen Traffic, andere beziehen sich eher auf die Anzahl von Anfragen über einen bestimmten Zeitraum. Wer da nicht genau hinschaut, kann ganz schön überrascht werden. Die Integration verschiedener Clouddienste und deren Verwaltung brauchen oft mehr Ressourcen und Know-how als gedacht. Wenn man die Ressourcen nicht genau im Auge behält, laufen die Kosten auch gerne aus dem Ruder.
Skalierbare Performance
In der Cloud ist es meiner Erfahrung nach zu einfach, etwas zuzuschalten. Eine neue Compute Node hier, mehr Speicher dort, es ist einfach, es ist super skalierbar und es gibt alle möglichen Werkzeuge, die es erlauben, Infrastruktur mit APIs und Code zu bauen. Das ist besonders wichtig für datenintensive Workloads und Anwendungen, die zeitweise eine hohe Performance erfordern, zum Beispiel beim hochskalieren für den Monatsabschluss. Man kann Ressourcen je nach Bedarf schnell und einfach anpassen, ohne in zusätzliche Hardware investieren zu müssen. Das ist super, um auf plötzliche Änderungen in der Nachfrage zu reagieren und Spitzenlasten effizient zu bewältigen. Die Cloud-Anbieter haben meistens automatische Skalierungsfunktionen oder zumindest die APIs, um das selbst zu programmieren und die Ressourcen dynamisch anzupassen.
Bei den klassischen OnPrem-Lösungen ist die Skalierbarkeit begrenzt durch die physische Hardware und die vorhandenen Ressourcen. Wenn ein Unternehmen mehr Kapazität braucht, muss es zusätzliche Hardware kaufen, installieren und konfigurieren. Und oft ist die IT so aufgestellt, dass ein Analyst (auch wenn er die Kosten tragen würde) nicht einfach die Leistung kurzfristig für seine Anwändungsfälle erhöhen kann.
IMHO ändert sich die Betrachtung einer On-Premise Datenplattform, wenn sie containerisiert ist. Containerisierte On-Premise-Datenplattformen nutzen Technologien wie Kubernetes, um Anwendungen in Containern zu verpacken und zu verwalten. Dadurch kann man die Plattform dynamisch skalieren, ähnlich wie in der Cloud (natürlich limitiert durch die Gesamtleistung des Container Clusters). Containerisierte Anwendungen kann man leicht zwischen verschiedenen Umgebungen verschieben, also sowohl On-Premise als auch in der Cloud, was hybride Umgebungen ermöglicht. Mit einem hybriden Cloud-Ansatz kann man die Vorteile von On-Premise- und Cloud-Infrastruktur nutzen. Containerisierte Workloads können easy zwischen On-Premise und Cloud-Umgebungen verschoben werden, was eine dynamische Skalierung ermöglicht. Das heißt, du kannst Ressourcen je nach Bedarf schnell hinzufügen oder entfernen, ohne dass du physische Hardware installieren musst. Das ist besonders praktisch, wenn sich die Nachfrage plötzlich ändert oder es zu Spitzenlasten kommt.
Wenn du On-Premise-Ressourcen und Cloud-Ressourcen kombinierst, kannst du als Unternehmen deine Kosten optimieren. Kritische und stabile Workloads können On-Premise betrieben werden, um die Kosten niedrig zu halten, während weniger kritische oder last-variable Workloads in die Cloud ausgelagert werden. So wird die Infrastruktur effizient genutzt und es entstehen weniger unnötige Kosten. Das Pay-as-you-go-Modell der Cloud Provider hilft dabei, die Betriebskosten flexibel zu gestalten und nur für tatsächlich genutzte Ressourcen zu zahlen.
Eine der größten Herausforderungen für eine hybride Datenplattform ist, dass sie mehr Komplexität mit sich bringt. Insbesondere die Integration und Synchronisierung von Daten zwischen On-Premise- und Cloud-Umgebungen kann komplex und fehleranfällig sein. Die Daten müssen konsistent und aktuell gehalten werden. Dafür brauchst du eine robuste Datenintegrationsstrategie. Das kann besonders schwierig sein, wenn man viele Daten verarbeiten muss. Es ist echt nicht so einfach, kurzfristig hoch zu skalieren, weil ja vor einer Analyse erst riesige Datenmengen vom eigenen Rechenzentrum in die Cloud übertragen werden müssen. Das ist eine echte Herausforderung. Eine Möglichkeit, die damit verbundenen Hürden zu reduzieren, kann es sein, die Daten bereits nahe am Entstehungsort zu verarbeiten bzw. in ein benötigtes Format zu bringen (Stichwort Stream Processing). So verringert sich die Notwendigkeit große Datenmengen über das Netzwerk zu übertragen.
Außerdem kann man mit Datenvirtualisierungstechnologien eine einheitliche Sicht auf verteilte Daten schaffen, ohne die Daten physisch zu verschieben. So wird der Zugriff auf die Daten erleichtert und die Datenkonsistenz verbessert. Gegebenenfalls in Kombination mit dedizierten Netzwerkverbindungen wie AWS Direct Connect oder Azure ExpressRoute, um eine schnelle und zuverlässige Datenübertragung zwischen dem Rechenzentrum und dem Cloud-Anbieter zu gewährleisten.
Die Macht über die eigenen Daten
Ein weiterer wichtiger Punkt ist, dass man die Kontrolle über die eigenen Daten behält. In einer Zeit, in der Datenschutz und Compliance immer wichtiger werden, ist es absolut unerlässlich, die Hoheit über die eigenen Daten zu behalten. Grade die Hyperscaler aus den USA können wegen der politischen Lage und der aktuellen Unsicherheit beim Transatlantic Data Privacy Framework zum Problem werden. Das TADPF beruht in den USA nur auf einem Dekret des Präsidenten, das jederzeit zurückgenommen werden kann, mit der Folge, dass Datentransfers aus Europa nicht mehr rechtssicher möglich wären.
Unabhängig davon nutzen Cloud-Anbieter Lock-in-Effekte, die einen Wechsel zu anderen Anbietern oder zurück in die eigene Infrastruktur erschweren. Wenn die eigenen Prozesse zum Beispiel auf Azure optimiert sind, wäre ein Wechsel zu einem anderen Anbieter so, als würde man die komplette Plattform neu gestalten. Dieser Aufwand gibt den Anbietern dann auch ein gutes Mittel, um die Preise später hochzuschrauben.
Wenn man sich die Datenplattform mal genauer ansieht, dann sieht man, dass die unternehmenseigenen Daten in Zukunft ein entscheidender Wettbewerbsvorteil sein werden – Stichwort KI. Generelle KI-Modelle wie GPT04 werden mit der Zeit austauschbar, aber die intelligente Nutzung der unternehmenseigenen Daten in Kombination mit den LLMs wird den entscheidenden Nutzen für Unternehmen ausmachen. Unternehmen, die hier Abhängigkeiten vermeiden können, können ihre IT-Strategie langfristig planen und anpassen. Das gibt mehr Spielraum und Unabhängigkeit,
Wenn wir eine Datenplattform aufbauen, sollten wir uns meiner Meinung nach auf offene Standards und Austauschbarkeit konzentrieren – egal ob Cloud oder On-Premise. Man kann das Ganze auch noch mit proprietären Technologien aufpeppen, wenn man damit einen klaren strategischen Vorteil hat. Bei der Konzeption einer Datenplattform verdienen auch nationale und europäische Anbieter wie Stackable, Exasol, KNIME, Stackit oder IONOS eine faire Chance.
Eine fundierte Entscheidung treffen
Der Aufbau einer Datenplattform ist ein komplexes Thema. Eine der grundlegenden Entscheidungen ist, ob die Plattform On-Premise, in der Cloud oder als hybride Lösung betrieben werden soll. Jede Option hat ihre Vor- und Nachteile, die von verschiedenen Faktoren abhängen. Es kommt auch darauf an, wofür man die Plattform genau nutzen will. Ist die Lösung sehr unternehmensspezifisch, kann eine Eigenentwicklung sinnvoll sein. Benutzt man sie nur für das Reporting kann eine SaaS Lösung die richtige Lösung sein. Ein hybrider Ansatz klingt nach den beider Welten, indem kritische Workloads On-Premise betrieben werden, während die Skalierung in die Cloud ausgelagert wird. Das ist dann flexibel, skalierbar und kosteneffizient – bringt aber auch Herausforderungen in Bezug auf die betriebliche Komplexität, die Datenintegration und die Netzwerkanbindung mit sich. Das können nur große Data Teams handhaben. Kleine Teams profitieren oft von leicht konfigurierbaren, automatisierten SaaS-Lösungen, weil sie nicht die Ressourcen haben, eine interne Plattform zu entwickeln und zu warten.
Leider gibt es keine klare Antwort – wie folgen wir den folgenden 6 Schritten zur idealen Datenplattform – aber ich denke, es gibt einige wichtige Prinzipien, die bei der Entscheidungsfindung helfen:
- Eine Datenplattform soll flexibel und skalierbar sein, nur so können Ressourcen effizient genutzt und schnell auf Änderungen bei der Nutzung reagiert werden. Das beinhaltet auch wie schnell sie sich an neue Technologien und Anforderungen anpassen lässt.
- Eine Datenplattform soll eine ausreichende Performance und Verfügbarkeit bei effektiver Nutzung der Ressourcen gewährleisten.
- Eine Datenplattform soll Datensicherheit bieten und Datenhoheit gewährleisten, insbesondere wenn sie einen Wettbewerbsvorteil bieten soll.
- Eine Datenplattform soll mit anderen Systemen und Technologien integrierbar sein und es ermöglichen einzelne Komponenten austauschbar zu gestalten.