Cloud-Datenbank

Von traditionellen Datenbanken, die auf virtuellen Maschinen (VMs) in der Cloud ausgeführt werden, bis hin zu vollständig verwalteten NoSQL-DBaaS (Database-as-a-Service) – Clouddatenbanken verändern die Anwendungsentwicklung.

Was ist eine Clouddatenbank?

Eine „Cloud-Datenbank“ kann zwei verschiedene Formen haben: eine traditionelle Datenbank bzw. eine NoSQL-Datenbank, die in einer virtuellen Cloud-Maschine ausgeführt wird (eine Public-, Private- oder Hybrid-Cloud-Plattform), oder ein vollständig verwaltetes Datenbank-as-a-Service-Angebot (DBaaS) eines Cloud-Anbieters. Der Betrieb Ihrer eigenen, selbst verwalteten Datenbank in einer Cloudumgebung unterscheidet sich eigentlich nicht vom Betrieb einer herkömmlichen Datenbank. Cloud-DBaaS-Angebote sind hingegen das natürliche Datenbank-Äquivalent zu Software-as-a-Service (SaaS): Sie zahlen nach Bedarf und nur für das, was Sie nutzen, und überlassen dem System alle Details der Bereitstellung und Skalierung entsprechend der Nachfrage und zur Leistungsoptimierung.

Optionen für Clouddatenbanken

Traditional database running on cloud virtual machine (VM)

Fully managed database-as-a-service

Meistens (und auch auf dieser Seite) bezieht sich der Begriff „Clouddatenbank“ auf eine cloudbasierte Datenbank-as-a-Service-Lösung.

Warum eine Clouddatenbank/DBaaS-Lösung verwenden?

Die wichtigsten Vorteile von Cloud-Datenbanken sind, dass diese von überall aus zugreifbar, vom ersten Tag an skalierbar und auf Zuverlässigkeit und Leistung ausgelegt sind.

Einfacher Zugriff und Agilität

Native Cloud-Datenbanken werden immer beliebter – ganz egal, ob ein Team bereits Software mit einer Cloudinfrastruktur entwickelt oder Legacy-Anwendungen in die Cloud migriert.

Moderne Database-as-a-Service-Plattformen ermöglichen über einheitliche APIs und Treiber einen einfachen (aber kontrollierten) Zugriff von Cloud- und Nicht-Cloud-Systemen und vereinfachen so den Zugriff auf wichtige Ressourcen. Insbesondere Microservice-Architekturen profitieren von zentralisierten und leicht zugänglichen Datenbankressourcen, da viele Anwendungen auf Daten zugreifen und diese gemeinsam nutzen müssen.

Während in vielen Fällen Cloud-SQL-Datenbanken zum Einsatz kommen, verbessert die Flexibilität moderner Cloud-NoSQL-Datenbanken die Agilität im Datenmanagement und in der Softwareentwicklung dramatisch. Es gibt keine Ausfallzeiten für Systemupgrades, die Neuausrichtung von Clustern oder die Bereitstellung von schnellerer Hardware oder gar Änderungen an Schemata und Strukturen.

Wenn Sie mit NoSQL eine fehlende Kontrolle der Datenqualität fürchten, sollten Sie sich ansehen, wie MongoDB strukturelle Garantien bietet, ohne die ultimative Flexibilität des Dokumentmodells zu opfern.

Skalierbarkeit und Leistung

Der wahre Test eines Datenmanagementsystems ist dessen Leistung und Anpassungsfähigkeit in Situationen mit hoher Last.

Unabhängig davon, welche Datenbanktechnologie für Sie am besten geeignet ist, sind Cloud-Datenbank-Services in der Regel so konzipiert, dass sie automatisch entsprechend dem Datenwachstum skalieren* und so eine konsistente Leistung gewährleisten. Wenn eine automatische Anpassung nicht möglich ist, sollten Ihnen eine gute Datenbank-as-a-Service-Lösung dieses automatisch mitteilen, sodass Sie Ihre Indizes und Zugriffsmuster optimieren können, um Ihre Leistungsziele zu erreichen.

Es ist nicht nur in der Regel billiger, eine vollständig verwaltete Cloud-Datenbank zu nutzen als eine eigene zu pflegen, es erfordert auch weniger manuelle Arbeit, sodass Sie und Ihr Team sich auf die Bereitstellung von Mehrwert konzentrieren können.

Zuverlässigkeit und Disaster-Recovery

Es gibt keine schlimmere Situation als die Nichtverfügbarkeit einer geschäftskritischen Datenbank (vielleicht abgesehen vom Verlust aller Daten).

Cloud-Datenbanken werden in der Regel standardmäßig repliziert und gesichert, sodass kein einzelner Ausfallpunkt Ihre Anwendung offline bringen kann. Selbst katastrophale Vorfälle werden durch regelmäßige, automatisierte Backups und Disaster-Recovery-Funktionen abgemildert.

MongoDB Atlas, die MongoDB-Datenbank in der Cloud, wird automatisch in Echtzeit repliziert und gesichert, sodass eine Point-in-Time-Wiederherstellung möglich ist, was Ihnen ein zusätzliches Maß an Sicherheit bietet.

Native Cloud-Datenbanken werden immer beliebter – ganz egal, ob ein Team bereits Software mit einer Cloudinfrastruktur entwickelt oder Legacy-Anwendungen in die Cloud migriert.

Moderne Database-as-a-Service-Plattformen ermöglichen über einheitliche APIs und Treiber einen einfachen (aber kontrollierten) Zugriff von Cloud- und Nicht-Cloud-Systemen und vereinfachen so den Zugriff auf wichtige Ressourcen. Insbesondere Microservice-Architekturen profitieren von zentralisierten und leicht zugänglichen Datenbankressourcen, da viele Anwendungen auf Daten zugreifen und diese gemeinsam nutzen müssen.

Während in vielen Fällen Cloud-SQL-Datenbanken zum Einsatz kommen, verbessert die Flexibilität moderner Cloud-NoSQL-Datenbanken die Agilität im Datenmanagement und in der Softwareentwicklung dramatisch. Es gibt keine Ausfallzeiten für Systemupgrades, die Neuausrichtung von Clustern oder die Bereitstellung von schnellerer Hardware oder gar Änderungen an Schemata und Strukturen.

Wenn Sie mit NoSQL eine fehlende Kontrolle der Datenqualität fürchten, sollten Sie sich ansehen, wie MongoDB strukturelle Garantien bietet, ohne die ultimative Flexibilität des Dokumentmodells zu opfern.

Der wahre Test eines Datenmanagementsystems ist dessen Leistung und Anpassungsfähigkeit in Situationen mit hoher Last.

Unabhängig davon, welche Datenbanktechnologie für Sie am besten geeignet ist, sind Cloud-Datenbank-Services in der Regel so konzipiert, dass sie automatisch entsprechend dem Datenwachstum skalieren* und so eine konsistente Leistung gewährleisten. Wenn eine automatische Anpassung nicht möglich ist, sollten Ihnen eine gute Datenbank-as-a-Service-Lösung dieses automatisch mitteilen, sodass Sie Ihre Indizes und Zugriffsmuster optimieren können, um Ihre Leistungsziele zu erreichen.

Es ist nicht nur in der Regel billiger, eine vollständig verwaltete Cloud-Datenbank zu nutzen als eine eigene zu pflegen, es erfordert auch weniger manuelle Arbeit, sodass Sie und Ihr Team sich auf die Bereitstellung von Mehrwert konzentrieren können.

Es gibt keine schlimmere Situation als die Nichtverfügbarkeit einer geschäftskritischen Datenbank (vielleicht abgesehen vom Verlust aller Daten).

Cloud-Datenbanken werden in der Regel standardmäßig repliziert und gesichert, sodass kein einzelner Ausfallpunkt Ihre Anwendung offline bringen kann. Selbst katastrophale Vorfälle werden durch regelmäßige, automatisierte Backups und Disaster-Recovery-Funktionen abgemildert.

MongoDB Atlas, die MongoDB-Datenbank in der Cloud, wird automatisch in Echtzeit repliziert und gesichert, sodass eine Point-in-Time-Wiederherstellung möglich ist, was Ihnen ein zusätzliches Maß an Sicherheit bietet.

Häufige Anwendungsfälle für Cloud-Datenbanken

Clouddatenbanken eignen sich für die meisten Szenarien, in denen auch herkömmliche Datenbanken eingesetzt werden. Sie sind besonders beim Erstellen von Softwareprodukten hilfreich:

Are cloud-native

Require large volume of data

Need to handle high scale traffic

Are distributed geographically

Datenanwendungen, die die Vorteile der Zentralisierung wie die Modernisierung von Legacy-Anwendungen und die Analytik nutzen, sind ebenfalls fantastische Kandidaten für die Nutzung von Cloud-Datenbanken.

Bestimmte Anwendungsfälle sind offensichtliche Kandidaten für die Nutzung von Cloud-Datenbanken. Aber auch traditionellere Anwendungsfälle, wie die Online-Transaktionsverarbeitung in Echtzeit, Caching oder Data-Warehousing passen genauso gut zum Paradigma der vollständig verwalteten Lösungen.

Real-time transaction processing

Legacy database migration

Mobile application development

Internet of Things

Caching

Analytics

Überlegungen zu Clouddatenbanken

Unabhängig davon, ob Sie noch über die Eignung einer Clouddatenbank für Ihr Szenario nachdenken, oder ob Sie gerade dabei sind, das ideale Datenbank-as-a-Service-Angebot für Ihre Anforderungen auszuwählen – es gibt es ein paar wichtige Faktoren, die Sie berücksichtigen sollten:

Anbieter von Cloud-Datenbanken

Während einige Cloud-Datenbanken bei allen Anbietern von Public-Clouds verfügbar sind (MongoDB Atlas kann bei allen großen Anbietern von Public-Clouds ausgeführt werden), sind andere anbietergebunden (z. B. Cloud Bigtable bei Google oder RDS bei Amazon Web Services).

Wenn es bei Ihnen bestehende Ressourcen, Kompatibilitätsanforderungen oder vorhandene Geschäftsbeziehungen gibt, die die Wahl des Cloud-Anbieters festlegen, dann können Sie zwischen einer selbst verwalteten Datenbank auf Cloud-VMs oder Datenbank-as-a-Service-Produkten von oder bei diesem Cloud-Anbieter wählen.

Andere Strategien wie Multi-Cloud oder Hybrid-Cloud könnten erfordern, dass Sie mehrere Public- oder Private-Clouds nutzen – was Ihre Datenbankauswahl auf Produkte einschränken würde, die anbieterübergreifend und/oder on-premises funktionieren.

  • Plattform-Lock-in

  • Technologieanforderungen

  • Cloud-Anbieter-Strategie

Datenbanktechnologie

Vielleicht suchen Sie nach einem SQL-kompatiblen Angebot, um mit bestehenden Systemen, Prozessen oder Kompetenzen zu arbeiten. Oder Sie interessieren sich für ein NoSQL-Angebot, das auf die Anforderungen Ihres Systems zugeschnitten ist. Manchmal machen andere Entscheidungen im Technologie-Stack Ihres Teams, wie z. B. die Programmiersprache, die eine oder andere Datenbanktechnologie zu einer besseren Wahl. Sie sollten sich genau ansehen, ob ein bestimmter Anbieter oder eine bestimmte Plattform zu Ihrem Entwicklungsprozess passt.

  • Ist der Anbieter/die Plattform kompatibel?

  • Ist der Anbieter/die Plattform portabel?

  • Passt der Anbieter/die Plattform zu meinem Anwendungsfall?

Management-System

Haben Sie die Mitarbeiter und die Kompetenzen, um die richtige Datenbanktechnologie selbst zu verwalten? Wenn dies der Fall ist, können selbstverwaltete Datenbanken auf Cloud-VMs für Sie geeignet sein. Dennoch sollten Sie vollständig verwaltete DBaaS-Plattformen in Betracht ziehen. Diese nehmen Ihnen einen Großteil der Verwaltungsarbeit ab und Ihr Team wird für weitergehende Projekte frei.

  • VM vs. DBaaS

  • Leistung/SLAs

  • Skalierbarkeit/Wachstumsaufwand

  • Überwachung

Kostenmodell

Ein weiterer Vorteil von Cloud-Datenbanken ist die Umstellung auf nutzungs- oder verbrauchsabhängige Preise. Das bedeutet, dass Sie nicht im Voraus investieren müssen – noch bevor Sie wissen, wie hoch Ihr endgültiger Ressourcenbedarf sein wird. Stattdessen können Sie klein anfangen und nach Bedarf aufstocken.

  • VM-basiert, lizenzbasiert oder nutzungsbasiert

  • Anpassung des Preismodells an Ihr Geschäftsmodell

Datensicherheit

Die Kosten für Datenschutzverletzungen steigen ständig. Die Anforderungen der Gesetzgeber sind so hoch wie nie zuvor. Verwaltete Cloud-Datenbanken integrieren bewährte Methoden für eine mehrschichtige Sicherheit, halten Systeme automatisch auf dem neuesten Stand und nutzen eine umfassende Fachkompetenz, um die sichersten Konfigurationen zu implementieren. Warum sollten Sie alles selbst erledigen?

  • Zugriffssteuerung und Auditing

  • Verwaltete, mehrschichtige bewährte Sicherheitsverfahren

Extras

Die modernen DaaS-Angebote (Database-as-a-Service) aus der Cloud können viel mehr leisten, als nur die Datenbank selbst bereitzustellen. MongoDB Atlas umfasst beispielsweise SQL-kompatible Konnektoren, integrierte Diagramme und Graphen sowie Tools zum Erstellen von datengesteuerten Workflows mit Triggern und Serverless-Computing-Lösungen und vieles mehr.

  • Analyse

  • Konnektoren

  • Reporting

  • Auditing

  • Trigger und Verarbeitung

Während einige Cloud-Datenbanken bei allen Anbietern von Public-Clouds verfügbar sind (MongoDB Atlas kann bei allen großen Anbietern von Public-Clouds ausgeführt werden), sind andere anbietergebunden (z. B. Cloud Bigtable bei Google oder RDS bei Amazon Web Services).

Wenn es bei Ihnen bestehende Ressourcen, Kompatibilitätsanforderungen oder vorhandene Geschäftsbeziehungen gibt, die die Wahl des Cloud-Anbieters festlegen, dann können Sie zwischen einer selbst verwalteten Datenbank auf Cloud-VMs oder Datenbank-as-a-Service-Produkten von oder bei diesem Cloud-Anbieter wählen.

Andere Strategien wie Multi-Cloud oder Hybrid-Cloud könnten erfordern, dass Sie mehrere Public- oder Private-Clouds nutzen – was Ihre Datenbankauswahl auf Produkte einschränken würde, die anbieterübergreifend und/oder on-premises funktionieren.

  • Plattform-Lock-in

  • Technologieanforderungen

  • Cloud-Anbieter-Strategie

Vielleicht suchen Sie nach einem SQL-kompatiblen Angebot, um mit bestehenden Systemen, Prozessen oder Kompetenzen zu arbeiten. Oder Sie interessieren sich für ein NoSQL-Angebot, das auf die Anforderungen Ihres Systems zugeschnitten ist. Manchmal machen andere Entscheidungen im Technologie-Stack Ihres Teams, wie z. B. die Programmiersprache, die eine oder andere Datenbanktechnologie zu einer besseren Wahl. Sie sollten sich genau ansehen, ob ein bestimmter Anbieter oder eine bestimmte Plattform zu Ihrem Entwicklungsprozess passt.

  • Ist der Anbieter/die Plattform kompatibel?

  • Ist der Anbieter/die Plattform portabel?

  • Passt der Anbieter/die Plattform zu meinem Anwendungsfall?

Haben Sie die Mitarbeiter und die Kompetenzen, um die richtige Datenbanktechnologie selbst zu verwalten? Wenn dies der Fall ist, können selbstverwaltete Datenbanken auf Cloud-VMs für Sie geeignet sein. Dennoch sollten Sie vollständig verwaltete DBaaS-Plattformen in Betracht ziehen. Diese nehmen Ihnen einen Großteil der Verwaltungsarbeit ab und Ihr Team wird für weitergehende Projekte frei.

  • VM vs. DBaaS

  • Leistung/SLAs

  • Skalierbarkeit/Wachstumsaufwand

  • Überwachung

Ein weiterer Vorteil von Cloud-Datenbanken ist die Umstellung auf nutzungs- oder verbrauchsabhängige Preise. Das bedeutet, dass Sie nicht im Voraus investieren müssen – noch bevor Sie wissen, wie hoch Ihr endgültiger Ressourcenbedarf sein wird. Stattdessen können Sie klein anfangen und nach Bedarf aufstocken.

  • VM-basiert, lizenzbasiert oder nutzungsbasiert

  • Anpassung des Preismodells an Ihr Geschäftsmodell

Die Kosten für Datenschutzverletzungen steigen ständig. Die Anforderungen der Gesetzgeber sind so hoch wie nie zuvor. Verwaltete Cloud-Datenbanken integrieren bewährte Methoden für eine mehrschichtige Sicherheit, halten Systeme automatisch auf dem neuesten Stand und nutzen eine umfassende Fachkompetenz, um die sichersten Konfigurationen zu implementieren. Warum sollten Sie alles selbst erledigen?

  • Zugriffssteuerung und Auditing

  • Verwaltete, mehrschichtige bewährte Sicherheitsverfahren

Die modernen DaaS-Angebote (Database-as-a-Service) aus der Cloud können viel mehr leisten, als nur die Datenbank selbst bereitzustellen. MongoDB Atlas umfasst beispielsweise SQL-kompatible Konnektoren, integrierte Diagramme und Graphen sowie Tools zum Erstellen von datengesteuerten Workflows mit Triggern und Serverless-Computing-Lösungen und vieles mehr.

  • Analyse

  • Konnektoren

  • Reporting

  • Auditing

  • Trigger und Verarbeitung

MongoDB Atlas-Cloud-Datenbank

MongoDB kann bei jedem Cloud-Anbieter oder in einem lokalen Netzwerk als selbstverwalteter Datenbank-Cluster oder als virtuelle Maschine installiert und ausgeführt werden. Alternativ können Sie mit MongoDB Atlas, unserem Cloud-DBaas-Angebot (Database-as-a-Service) AWS, GCP oder Azure nutzen. Die DBaaS-Option bietet viele Vorteile:

Simplified management

Elastic autoscaling

Redundancy, backup, and restore

Charts

Connectors

Schema navigator

MongoDB Atlas ist Teil der umfassenderen Data-as-a-Service-Entwicklungsplattform (DaaS) von MongoDB. Die Lösung ist eine leistungsstarke und überzeugende Alternative zur Verwaltung Ihrer eigenen NoSQL-Datenbank oder herkömmlichen Datenbank und zum Einsatz eines von einem bestimmten Cloud-Anbieter verwalteten Angebots.

Bei einer Cloud-Datenbank stellt ein automatisiertes System den zugrunde liegenden Datenbank-Cluster für Sie bereit und verwaltet und skaliert diesen – anstatt dass Sie eine Datenbankinstanz installieren, konfigurieren und warten.

Vollständig verwaltete Datenbank-Services kümmern sich um die komplexe Erhaltung eines durchgängig verfügbaren, hochleistungsfähigen Clusters. Sie als Entwickler können einfach auf eine global verfügbare Ressource zugreifen.

Sie können den Cluster wie eine einzelne Datenbankinstanz behandeln, die durch ein transparentes, nutzungsbasiertes Preismodell gedeckt ist, sodass Sie sich nie Gedanken über zu viele oder zu wenige Ressourcen machen müssen.