alunablue - stock.adobe.com
On-Premises versus Cloud Data Warehouses: Vor- und Nachteile
Data Warehouses werden zunehmend in der Cloud bereitgestellt. Doch sowohl lokale als auch Cloud-Data-Warehouses haben Vor- und Nachteile, die hier erläutert werden.
Data Warehouses werden von Unternehmen aller Größenordnungen zur Aufnahme, Speicherung und Verarbeitung großer Datenmengen für Business-Intelligence- und Analyseanwendungen eingesetzt. Sie wurden in den 1990er Jahren entwickelt und sind eine ausgereifte Mainstream-Technologie. Heutzutage ist eine der wichtigsten Entscheidungen für ein Unternehmen, das ein Data Warehouse einrichten möchte, die Frage, ob es On-Premises oder in der Cloud betrieben werden soll.
Wie auch bei anderen IT-Systemen bietet ein Data Warehouse in der Cloud verschiedene Vorteile gegenüber einer Installation vor Ort – zum Beispiel eine einfache Skalierbarkeit, mehr Flexibilität und weniger Routinearbeit für Datenbankadministratoren (DBAs). Jedes Unternehmen hat jedoch seine eigenen Anforderungen und Prioritäten, so dass vor der Planung einer Data-Warehouse-Installation Cloud- und On-Premises-Optionen verglichen werden sollte. Lassen Sie uns daher die beiden Ansätze und ihre Vor- und Nachteile genauer betrachten.
Klassische versus Cloud-Data-Warehouse-Architekturen
Eine qualitativ hochwertige Datenverarbeitungsumgebung – einschließlich Server, Betriebssystem, Speicher und Datenbank – ist entscheidend für den Erfolg jeder Anwendung, die viele Daten verwendet. Das gilt definitiv auch für Data Warehousing: Um die beste Data-Warehouse-Plattform für ihr Unternehmen auszuwählen, müssen IT- und Datenmanagementteams komplette Systemumgebungen bewerten, nicht nur die Datenbanksoftware, die das Herzstück bildet.
Eine traditionelle Data-Warehouse-Architektur besteht aus den folgenden drei Ebenen:
- Eine untere Ebene mit einem Datenbankserver, der das Data Warehouse selbst beherbergt.
- Eine mittlere Ebene, auf der die Daten für die Analyse verarbeitet werden, in der Regel durch eine analytische Online-Verarbeitungsmaschine.
- Eine obere Schicht, die als Präsentationsschicht und Frontend-Schnittstelle für BI- und Analyse-Tools dient.
Ein Enterprise Data Warehouse speichert Daten aus allen Geschäftsbereichen eines Unternehmens in einer einzigen, zentralisierten Plattform. Data Marts hingegen sind kleinere Warehousing-Systeme, die Teilmengen von Daten für bestimmte Abteilungen, Geschäftsbereiche oder Benutzergruppen enthalten. Beide sind häufig in einer Data-Warehouse-Architektur enthalten, und im Folgenden werden die beiden primären Methoden für den Aufbau eines Data Warehouse beschrieben – eine Entscheidung, die oft kurz als Inmon versus Kimball bezeichnet wird:
- Top-down-Ansatz. Diese von dem Informatiker, Autor und Anbieter Bill Inmon entwickelte Methode beginnt mit dem Data Warehouse des Unternehmens und verwendet dann die darin gespeicherten Datensätze, um verschiedene Data Marts einzurichten.
- Bottom-up-Ansatz. Der Berater Ralph Kimball drehte die Dinge um und entwickelte diese alternative Methode, bei der separate Data Marts erstellt und dann zu einem Enterprise Data Warehouse integriert werden.
Unter Verwendung dieser traditionellen Konzepte ermöglicht die Cloud den Data-Warehouse-Anbietern die Anpassung der zugrunde liegenden Hardware- und Softwarearchitekturen an die unterschiedlichen Verarbeitungsanforderungen. Im Folgenden sind einige bekannte Beispiele für Cloud-Data-Warehouse-Angebote in alphabetischer Reihenfolge aufgeführt.
Autonomes Data Warehouse
Das Data-Warehouse-System von Oracle für Analysedaten in der Cloud basiert auf Oracle Database und der Oracle Exadata-Computing-Plattform. Das System ist als gemeinsam genutzte oder dedizierte Infrastruktur verfügbar und kann über den Cloud@Customer-Service von Oracle auch On-Premises installiert werden. Die gemeinsam genutzte Infrastrukturoption von Oracle ist ein eher traditioneller Cloud-Service, während die dedizierte Variante den Kunden eine vollständig private Umgebung in der Public Cloud mit eigenen Rechen-, Speicher-, Netzwerk- und Datenbankressourcen bietet.
Azure Synapse Analytics
Der Cloud-Analysedienst von Microsoft bietet serverlose und dedizierte Ressourcenmodelle und verwendet eine verteilte SQL-Verarbeitungs-Engine namens Synapse SQL zur Ausführung von Data-Warehouse-Abfragen. Außerdem umfasst er Apache Spark als Big-Data-Analyse-Engine und Azure Data Lake Storage Gen2 als Datenspeicher. Die Plattform basiert auf einer Scale-Out-Architektur für massiv parallele Verarbeitung (MPP), die Arbeitslasten auf mehrere Knoten verteilt und Rechenressourcen von der Speicherung trennt, so dass die Kunden beide unabhängig voneinander skalieren können.
Google BigQuery
Google BigQuery ist ein serverloses Cloud Data Warehouse mit einer SQL-basierten, verteilten MPP-Analyse-Engine, die den Großteil der Daten in Tabellen speichert. Jede Tabellenspalte wird separat gespeichert, wodurch BigQuery in der Lage ist, einzelne Spalten über einen gesamten Datensatz hinweg effizienter zu scannen als herkömmliche zeilenbasierte Speicher. BigQuery verwendet sowohl Partitionierung als auch Clustering, um einen leistungsstarken Datenzugriff zu ermöglichen. Es unterstützt auch Multi-Cloud-Data-Warehouse-Implementierungen und umfasst Engines für maschinelles Lernen, prädiktive Modellierung und Geodatenanalyse.
Amazon Redshift
Amazon Redshift von AWS verwendet Cluster zur Bereitstellung eines oder mehrerer Rechenknoten für die Ausführung von Analyseanwendungen in Data Warehouses, operativen Datenbanken und Data Lakes. AWS bietet eine serverlose Option, ein Modul für maschinelles Lernen und eine native Integration mit einer Vielzahl seiner anderen Cloud-Services, einschließlich BI-, Datenintegrations- und Big-Data-Verarbeitungs-Tools. Wie BigQuery speichert Redshift jede Tabellenspalte separat; außerdem bietet es eine automatische Tabellenoptimierungsfunktion, um die Abfragegeschwindigkeit in Clustern durch Verbesserung des physischen Layouts von Datensätzen zu erhöhen.
Snowflake
Im Gegensatz zu den meisten seiner Konkurrenten wurde das Data-Warehouse-System von Snowflake für den Einsatz auf den Plattformen AWS, Azure und Google Cloud entwickelt. Snowflake beschreibt seine Verarbeitungsumgebung als eine hybride Shared-Disk/Shared-Nothing-Architektur. Das Produkt nutzt ein zentrales Repository zur gemeinsamen Nutzung von Daten in der gesamten Umgebung und mehrere MPP-Computing-Cluster zur Trennung von Arbeitslasten, wobei jeder Knoten in einem Cluster einen Teil eines Datensatzes lokal speichert. Snowflake wird als vollständig verwalteter Service bereitgestellt und unterstützt auch Data Lake-, Data Engineering und Data Science Workloads.
Vor- und Nachteile von Cloud- gegenüber lokalen Data Warehouses
Eine große Herausforderung für lokale Data Warehouses ist die Notwendigkeit, eine Hardware- und Software-Computing-Umgebung bereitzustellen, die den Anforderungen der Datenarchitektur und -verarbeitung des Unternehmens entspricht. Das Hardware-Support-Team, die Systemadministratoren und die Datenbankadministratoren arbeiten mit dem Anbieter der Data-Warehouse-Software zusammen, um die Umgebung aufzubauen, die in der Regel komplex ist und ein eigenes Team für die Verwaltung und den Support erfordert. Darüber hinaus kann die Skalierung lokaler Systeme, um der ständig wachsenden Datenspeicherung und Arbeitslast gerecht zu werden, kostspielig und zeitaufwendig sein.
Aber auch Cloud-Data-Warehouses können Unternehmen vor einige Herausforderungen stellen und Änderungen der IT-Prozesse erfordern. Im Folgenden finden Sie weitere Einzelheiten zu den Vor- und Nachteilen der beiden Ansätze in einigen Schlüsselbereichen.
1. Kosten
Es liegt auf der Hand, dass die Kosten für die Bereitstellung und den Support eines Data-Warehouse-Systems in einem Rechenzentrum vor Ort in der Regel wesentlich höher sind als die Kosten für die Anmietung eines Systems bei einem Cloud-Anbieter mit nutzungsabhängigen Zahlungen. Dies gilt insbesondere für eine DWaaS-Umgebung (Data Warehouse as a Service), die vollständig vom Anbieter verwaltet wird. Für Unternehmen, die bereits in bestehende Rechenzentren investiert haben, ist der Vergleich zwischen Cloud- und On-Premises-Kosten jedoch nicht so einfach.
Das ursprüngliche Verkaufsargument für Cloud-Plattformen war die Möglichkeit, IT-Kosten zu senken. Unternehmen, die Anwendungen in der Cloud implementieren, haben jedoch schnell erkannt, dass Kosteneinsparungen nicht immer zu den Vorteilen gehören. Unternehmen müssen zwar keine Server und Software für Cloud-Data-Warehouse-Systeme kaufen, aber die Kosten für die Nutzung von Rechen-, Speicher- und Festplattenressourcen eines Cloud-Anbieters können sich summieren, vor allem, wenn die Data-Warehouse-Arbeitslast unerwartet steigt.
Natürlich sind die Systemkosten nicht die einzigen Ausgaben, die IT-Teams berücksichtigen müssen, wenn sie lokale und Cloud-Plattformen vergleichen. Auch die Arbeitskosten, die für die Unterstützung der Umgebungen erforderlich sind, müssen mit einkalkuliert werden. Bei lokalen Umgebungen umfasst dies den administrativen Support für die Computerhardware, das Betriebssystem, den Festplattenspeicher und die Datenbank. Auch bei Cloud-Data-Warehouses entfallen die Support-Kosten nicht vollständig; selbst in einer DWaaS-Umgebung müssen die DBAs beispielsweise noch administrative Aufgaben erledigen. Aber diese Kosten sind in der Regel in der Cloud viel geringer.
Außerdem gibt es weitere Kosten, die oft übersehen werden. Unternehmen, die Data Warehouses in der Public Cloud bereitstellen, haben keine direkten Kosten für Zertifizierungen zur Einhaltung gesetzlicher Vorschriften, für Umweltkontrollen im Rechenzentrum, für den Energieverbrauch, für Hochverfügbarkeits- und Disaster-Recovery-Konfigurationen sowie für Systemverbesserungen zu tragen. Diese Elemente sind in den Kosten für den Cloud-Service enthalten, und einige können zu höheren Nutzungsgebühren für ein Unternehmen führen, aber der Anbieter zahlt die Rechnung für sie.
2. Neue Merkmale und Funktionen
Der Markt für Cloud-Data-Warehouses ist hart umkämpft, was alle Anbieter dazu zwingt, ihr Funktionsangebot zu maximieren. Kontinuierliche Innovation und die Integration neuer Funktionen, um sich von den Konkurrenzprodukten abzuheben, sind ein absolutes Muss. Folglich können die Nutzer von Cloud Data Warehouses die Vorteile eines ständigen Stroms neuer Merkmale und Funktionen nutzen.
Da Cloud-Anbieter die Verantwortung für das gesamte Data-Warehouse-System übernehmen, können ihre Kunden außerdem von Verbesserungen profitieren, die von der zugrunde liegenden Datenverarbeitungsinfrastruktur bis zur Data-Warehouse-Software selbst reichen. Die Aktualisierung von Systemen und die Bereitstellung neuer Softwareversionen ist für lokale Benutzer, die ihre eigenen Umgebungen verwalten, komplizierter. Außerdem sind neue Funktionen in lokaler Data-Warehouse-Software möglicherweise nicht so schnell verfügbar wie in Cloud-Diensten, die von den Anbietern laufend aktualisiert werden können.
Ein weiterer potenzieller Vorteil der Cloud: Zur Ergänzung ihrer Data-Warehouse-Kernfunktionen für grundlegende BI- und Berichtsanwendungen bieten die oben genannten Top-Cloud-Anbieter und andere Wettbewerber alle zusätzlichen Technologien und Funktionen an, die Data Lakes, maschinelles Lernen, Big-Data-Analysen, die Entwicklung von Datenpipelines und andere Funktionen für erweiterte Analyseanwendungen unterstützen.
3. Skalierbarkeit
Die Skalierbarkeit des Systems unterstützt IT-Teams bei der Bewältigung des wachsenden Verarbeitungsaufkommens. Wenn sich die Leistungsoptimierung und die Aktualisierung von Softwarekonfigurationen nicht mehr positiv auf den Systemdurchsatz auswirken, wird die Erweiterung von Festplatten-, Speicher- und Rechenkapazität erforderlich. Skalierbarkeit ist auch für Data Warehouses wichtig, um das Datenwachstum zu bewältigen, wenn neue Quellsysteme hinzugefügt werden.
Die Skalierung einer lokalen Data-Warehouse-Plattform kann jedoch zu einer echten Herausforderung werden. Wenn der Server die Kapazität hat, CPU oder Speicher zu erhöhen, muss ein Systemadministrator das Gehäuse öffnen und Komponenten ersetzen oder hinzufügen. Bei Servern, für die keine zusätzliche Kapazität verfügbar ist, muss die Hardware auf ein größeres System aufgerüstet werden. Geclusterte Umgebungen bieten eine horizontale Skalierung, die das Hinzufügen weiterer Server ermöglicht, aber die Kosten für Hardware, Software und Verwaltung können schnell zu hoch werden.
Eines der wichtigsten Verkaufsargumente für Cloud-Plattformen ist ihre einfache Skalierbarkeit. Amazon Redshift-Benutzer können beispielsweise schnell Knoten zu ihrer Umgebung hinzufügen, um eine bessere Leistung und mehr Speicherplatz zu erhalten. Die Autonomous Database von Oracle geht noch einen Schritt weiter und bietet eine Autoscaling-Funktion, mit der die Rechen- oder Speicherressourcen automatisch erhöht werden können. AWS und Snowflake bieten ähnliche Funktionen zur Skalierung der Gleichzeitigkeit, mit denen die Clusterkapazität automatisch erhöht werden kann, wenn die Arbeitslasten steigen.
4. Leistungsüberwachung und -abstimmung
Um die Leistung eines Data Warehouses zu optimieren, müssen IT-Teams bei lokalen Plattformen häufig separate Tools zur Überwachung von Hardware, Betriebssystem und Datenbank verwenden. Da Cloud-Anbieter in der Lage sind, ihre Leistungsüberwachungs-Tools und Berater-Dienstprogramme an ihre Data-Warehouse-Infrastruktur anzupassen, liefern die Tools oft umfassendere Informationen als lokal installierte Tools.
Zusätzlich zu den Standardherausforderungen bei der Leistungsoptimierung von Datenbanken bieten Cloud-Plattformen jedoch eine weitere Dimension bei der Leistungsüberwachung und Fehlerbehebung. Die Übertragung von Daten in und aus einem Cloud-Data-Warehouse-System kann eine Herausforderung darstellen, insbesondere bei großen Datenmengen und engen Zeitvorgaben. Außerdem sind Unternehmen, die Data Warehouses auf Cloud-Plattformen implementieren, nicht vollständig für die Leistung verantwortlich. Wenn die Systemleistung fragwürdig ist und eine Skalierung keine Option ist oder das Problem nicht behebt, muss ein Unternehmen mit seinem Cloud-Anbieter zusammenarbeiten, um die Ursache zu ermitteln.
Schlimmer noch: Wenn die Ressourcen übermäßig ausgelastet sind, können Cloud-Data-Warehouse-Systeme Ihre Workloads willkürlich stoppen. In jeder Datenbankumgebung, ob vor Ort oder in der Cloud, genügen bereits einige wenige, falsch eingestellte Abfragen, um den Ressourcenverbrauch in die Höhe zu treiben. Ein anhaltender Anstieg der Cloud-Ressourcennutzung kann jedoch dazu führen, dass Ihr Unternehmen gezwungen ist, ein Upgrade auf eine höhere Leistungsstufe durchzuführen.
5. Kontrolle der Verwaltung
In On-Premises-Umgebungen hat die IT-Abteilung die vollständige Kontrolle über ihre Computersysteme und trägt die volle Verantwortung dafür. Bei Cloud Data Warehouses teilt sie diese Verantwortung mit dem Anbieter. Insbesondere in einer vollständig verwalteten DWaaS-Umgebung geben Sie einen Teil der Verantwortung für die Verwaltung der Data-Warehouse-Plattform ab.
Einige IT-Abteilungen werden dies als Vorteil betrachten, andere als Risiko, aber die meisten werden es wahrscheinlich als eine Kombination aus Risiko und Nutzen sehen. Alle führenden Cloud-Data-Warehouse-Anbieter bieten Service-Level-Vereinbarungen an, die eine prozentuale Mindestbetriebszeit garantieren, was die Bedenken hinsichtlich eines Kontrollverlusts über die Systeme verringern dürfte.
6. Sicherheit
Ebenso sind Unternehmen, die Data Warehouses On-Premises einsetzen, für die Sicherung der gesamten Umgebung verantwortlich – von der Hardware-Infrastruktur bis hin zum Software-Stack. In der Cloud wird die Verantwortung für die Sicherheit jedoch mit dem Anbieter geteilt. Es ist wichtig zu verstehen, dass Ihr Unternehmen die Verantwortung für die Sicherheit nicht zu 100 Prozent an den Anbieter abgibt. Im Rahmen des Modells der geteilten Verantwortung für die Cloud-Sicherheit muss sich der Kunde immer noch um einige Aspekte der Sicherung einer Data-Warehouse-Umgebung kümmern.
Wie die Verantwortlichkeiten aufgeteilt werden, kann von Anbieter zu Anbieter variieren. Es hängt auch davon ab, ob ein Unternehmen eine verwaltete DWaaS-Umgebung oder eine IaaS-Umgebung nutzt, bei der der Anbieter in der Regel nur für die Sicherung der zugrunde liegenden IT-Infrastruktur verantwortlich ist. Im Allgemeinen behält das IT-Team jedoch die Verantwortung für Aufgaben wie Datensicherheit, Datenklassifizierung, Zugriffskontrolle und Endgerätesicherheit.
Standardmäßige bewährte Sicherheitspraktiken gelten sowohl für lokale als auch für Cloud-Plattformen, aber Unternehmen, die Cloud-Data-Warehouse-Systeme nutzen, können die Kosten für die Sicherung ihrer Umgebungen mit dem Anbieter teilen. Ein weiteres Plus ist die Möglichkeit, die Sicherheitsfunktionen des Anbieters zu nutzen. Cloud-Anbieter haben ein offensichtliches Interesse daran, die Sicherheit ihrer Plattformen zu gewährleisten, und sie investieren viel Geld, um dies zu erreichen.
7. Auditing und Compliance
Wie bereits erwähnt, besteht einer der Vorteile eines Cloud Data Warehouse darin, dass der Anbieter die Verantwortung für die zugrunde liegende Architektur übernimmt. Dies kann jedoch eine Herausforderung für Unternehmen darstellen, die branchenspezifische oder gesetzliche Compliance-Vorschriften sowie interne Standards einhalten müssen.
Ähnlich wie bei der Sicherheit liegt die Verantwortung für die Einhaltung der Vorschriften beim Kunden und dem Cloud-Anbieter. Der Anbieter stellt in der Regel Compliance-Berichte und Bescheinigungen von Drittanbietern für HIPAA, EU-DSGVO und andere Compliance-Regelungen zur Verfügung. Ein Unternehmen muss jedoch mit dem Anbieter zusammenarbeiten, um die erforderlichen Nachweise zu sammeln, um zu überprüfen, ob ein Data-Warehouse-System den geltenden Rahmenbestimmungen entspricht, und zwar auf der Grundlage der spezifischen Prüfungsanforderungen des Unternehmens.
Obwohl die Nutzung der Cloud die Suche nach den benötigten Nachweisen zeitaufwendiger machen kann, sollte die Weitergabe einiger der Kosten für die Einhaltung gesetzlicher Vorschriften an Ihren Cloud-Anbieter die Unannehmlichkeiten aufwiegen.