Eine Cloud-Datenbank ist eine Datenbank , die typischerweise auf einer Cloud-Computing- Plattform läuft und deren Zugriff als Dienst bereitgestellt wird. Es gibt zwei gängige Bereitstellungsmodelle: Benutzer können Datenbanken selbstständig in der Cloud betreiben, indem sie ein virtuelles Maschinenimage verwenden, oder sie erwerben Zugriff auf einen Datenbankdienst, der von einem Cloud-Datenbankanbieter bereitgestellt wird. Cloud-Datenbanken können entweder ein relationales SQL- oder ein NoSQL- Datenmodell verwenden .
Datenbankdienste gewährleisten Skalierbarkeit und Hochverfügbarkeit und machen gleichzeitig den zugrunde liegenden Software-Stack für die Benutzer transparent. [ 1 ]
Bereitstellungsmodelle
Es gibt zwei Hauptmethoden, um eine Datenbank auf einer Cloud-Plattform zu betreiben:
- Virtuelles Maschinenabbild
- Cloud-Plattformen ermöglichen es Nutzern, virtuelle Maschineninstanzen für eine begrenzte Zeit zu erwerben, auf denen eine Datenbank ausgeführt werden kann. Nutzer können ihr eigenes Maschinenimage mit installierter Datenbank hochladen oder vorgefertigte Maschinenimages verwenden, die eine optimierte Datenbankinstallation enthalten. [ 2 ]
- Datenbank-als-Dienstleistung (DBaaS)
- Beim Database-as-a-Service-Modell (DBaaS) zahlen Nutzer einem Cloud-Anbieter für Datenbankdienste und Rechenressourcen. Dadurch kann der operative Aufwand für die Entwicklung und Verwaltung von Datenbanken reduziert werden. [ 2 ] Nutzern werden Tools zur Erstellung und Verwaltung von Datenbankinstanzen sowie zur Verwaltung von Datenbankbenutzern bereitgestellt. Einige Cloud-Anbieter bieten auch Tools zur Verwaltung von Datenbankstrukturen und -daten an. [ 3 ] Viele Cloud-Anbieter bieten sowohl relationale (z. B. Amazon RDS , SQL Server) als auch NoSQL-Datenbanken (z. B. MongoDB , Amazon DynamoDB ) an. [ 3 ] DBaaS ist eine Form von Software-as-a-Service (SaaS).
Architektur und gemeinsame Merkmale
- Die meisten Datenbankdienste bieten webbasierte Konsolen an, mit denen Endbenutzer Datenbankinstanzen bereitstellen und konfigurieren können.
- Datenbankdienste umfassen standardmäßig eine Datenbankverwaltungskomponente, die die zugrunde liegenden Datenbankinstanzen mithilfe einer Service-API verwaltet. Die API steht Endbenutzern zur Verfügung und ermöglicht ihnen die Durchführung von Wartungs- und Skalierungsvorgängen an ihren Datenbankinstanzen.
- Der zugrundeliegende Software-Stack umfasst typischerweise das Betriebssystem, die Datenbank und Drittanbietersoftware zur Datenbankverwaltung. Der Dienstanbieter ist für die Installation, das Patchen und Aktualisieren des Software-Stacks sowie für die Gewährleistung des allgemeinen Betriebs und der Leistungsfähigkeit der Datenbank verantwortlich.
- Die Skalierbarkeitsfunktionen unterscheiden sich je nach Anbieter – einige bieten automatische Skalierung an, andere ermöglichen es Benutzern, Ressourcen über eine API zu skalieren, skalieren aber nicht automatisch. [ 2 ]
- Dienstanbieter verpflichten sich typischerweise zu einem definierten Niveau hoher Verfügbarkeit (z. B. 99,9 % oder 99,99 %). Dies wird durch Techniken wie Datenreplikation und automatisches Failover auf Standby-Instanzen erreicht. [ 4 ]
Datenmodell
Die Konzeption und Entwicklung typischer Systeme nutzen häufig Datenmanagement und relationale Datenbanken als zentrale Bausteine. Komplexe SQL-Abfragen funktionieren gut mit den strengen Beziehungen, die relationale Datenbanken vorgeben. Die Technologie relationaler Datenbanken war jedoch ursprünglich nicht für den Einsatz in verteilten Systemen konzipiert. Diese Einschränkung wurde durch Verbesserungen im Clustering-Bereich behoben, obwohl einige grundlegende Operationen – wie die Datensynchronisation – weiterhin komplexe und aufwändige Protokolle erfordern. [ 5 ]
Moderne relationale Datenbanken können auf datenintensiven Systemen eine geringe Leistung aufweisen. Daher hat sich das NoSQL- Paradigma in Datenbankmanagementsystemen für Cloud-basierte Systeme etabliert. [ 6 ] NoSQL-Speicher benötigen keine festen Tabellenschemata, und Join-Operationen werden in der Regel vermieden. NoSQL-Datenbanken bieten nachweislich effiziente horizontale Skalierbarkeit, hohe Leistung und einfache Integration in Cloud-Anwendungen. [ 7 ] Darüber hinaus werden Datenmodelle, die auf vereinfachten Relay-Algorithmen basieren, in datenintensiven Cloud-Mapping-Anwendungen speziell für virtuelle Frameworks eingesetzt. [ 8 ]
Es ist außerdem wichtig, zwischen relationalen (SQL) und nicht-relationalen (NoSQL) Cloud-Datenbanken zu unterscheiden. [ 9 ]
- SQL-Datenbanken
- SQL-Datenbanken können je nach Anbieter entweder auf virtuellen Maschinen oder als Managed Service in der Cloud betrieben werden. Während die vertikale Skalierung von SQL-Datenbanken im Allgemeinen einfach ist, stellt die horizontale Skalierbarkeit eine größere Herausforderung dar.
- NoSQL-Datenbanken
- NoSQL-Datenbanken sind für hohe Lese-/Schreiblasten ausgelegt und lassen sich problemlos skalieren [ 10 ] , wodurch sie sich gut für Cloud-Umgebungen eignen. Viele moderne Anwendungen basieren jedoch auf einem relationalen (SQL-)Datenmodell, sodass die Einführung von NoSQL-Datenbanken oft erhebliche Änderungen am Anwendungscode erfordert [ 11 ] .
- Einige SQL-Datenbanken haben NoSQL-Funktionen entwickelt, darunter JSON , binäres JSON (z. B. BSON oder ähnliche Varianten) und Key-Value-Speicher-Datentypen.
- Multi-Modell-Datenbanken vereinen relationale und nicht-relationale Funktionen und bieten Benutzern und Anwendungen eine standardisierte SQL-Schnittstelle. Native Multi-Modell-Datenbanken unterstützen mehrere Datenmodelle mit einem einzigen Kern und erleichtern so deren Einsatz in SQL-basierten Anwendungen.
Anbieter
Die folgende Tabelle listet namhafte Datenbankanbieter auf, die Cloud-Datenbankdienste anbieten, klassifiziert nach Bereitstellungsmodell – Maschinenabbild oder Datenbank als Dienst – und nach Datenmodell (SQL oder NoSQL).
| Bereitstellung virtueller Maschinen | Datenbank als Dienstleistung | |
|---|---|---|
| SQL-Datenmodell |
| |
| NoSQL-Datenmodell |
|
|
Siehe auch
Referenzen
- ^ Hwang, G.; Fu, S. (Mai 2016). „Nachweis der Verletzung von Vertrauen und Verantwortlichkeit in Cloud-Datenbanksystemen“. 16. IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid) 2016. S. 425–433 . doi : 10.1109/CCGrid.2016.27 . ISBN 978-1-5090-2453-7. S2CID 18373753 .
- ^ a b c Chao, Lee (2014). Cloud-Datenbankentwicklung und -management . Boca Raton: Taylor & Francis. ISBN 978-1-4665-6506-7OCLC 857081580 .
- ^ a b McHaney, Roger (2021). Cloud-Technologien: Ein Überblick über Cloud-Computing-Technologien für Manager . Hoboken, NJ. ISBN 978-1-119-76951-4OCLC 1196822611 .
{{cite book}}CS1 Wartung: Standort des fehlenden Herausgebers ( Link ) - ^ Sakr, Sherif (Juni 2014). „Cloud-basierte Datenbanken: Technologien, Herausforderungen und Chancen“ . Cluster Computing . 17 (2): 487–502 . doi : 10.1007/s10586-013-0290-7 . ISSN 1386-7857 . S2CID 254370104 .
- ^ A. Anjomshoaa und A. Tjoa, „Wie das Cloud-Computing-Paradigma die Zukunft der Informationsverarbeitung in Unternehmen prägen könnte“ , Proceedings der 13. Internationalen Konferenz über Informationsintegration und webbasierte Anwendungen und Dienste - iiWAS'11, S. 7-10, 2011.
- ^ S. Cass, „Designing for the Cloud“, MIT Technology Review, 2009. [Online]. Verfügbar unter: https://www.technologyreview.com/s/414090/designing-for-the-cloud/ . Abgerufen am 4. Oktober 2016.
- ^ " NoSQL ", Wikipedia, 2016. Abgerufen am 04.10.2016.
- ^ Modi, A (2017). „Live-Migration virtueller Maschinen mit ihrem lokalen persistenten Speicher in einer datenintensiven Cloud“. International Journal of High Performance Computing and Networking . 10 (1) 83213: 134. doi : 10.1504/IJHPCN.2017.083213 .
- ^ https://docs.microsoft.com/en-us/azure/architecture/data-guide/big-data/non-relational-data Artikel in „Microsoft Azure“
- ^ Agrawal, Rakesh; et al. (2008). „Der Claremont-Bericht zur Datenbankforschung“ (PDF) . SIGMOD Record . 37 (3): 9–19 . CiteSeerX 10.1.1.211.5963 . doi : 10.1145/1462571.1462573 . ISSN 0163-5808 . S2CID 666280 .
- ^ Ken North, " SQL, NoSQL or SomeSQL? ", Dr. Dobb's, abgerufen am 9. November 2011.
- ^ Stellen Sie Ihre Datenbankanwendungen und -projekte in der Cloud bereit , IBM.com, abgerufen am 1. September 2011.
- ^ Chris Kanaracus, " Ingres führt Cloud-Datenbankangebote ein ", InfoWorld , abgerufen am 28.08.2011.
- ^ „ Amazon Web Services kündigt zwei neue Datenbankdienste an – AWS Database Migration Service und Amazon RDS für MariaDB.“ (Archiviert am 1. Juni 2017 in der Wayback Machine , Amazon-Pressemitteilungen, abgerufen am 17. November 2015)
- ^ „ MariaDB Enterprise Cluster + MariaDB MaxScale“, archiviert am 04.12.2016 in der Wayback Machine , Microsoft Azure, abgerufen am 17.11.2015
- ^ „ MySQL auf Amazon EC2 mit EBS (Elastic Block Store) ausführen“ , Amazon Web Services, abgerufen am 20.11.2011
- ^ Swoyer, Stephen. „NuoDB: Eine Datenbank für die Cloud.“ TDWI. 13. November 2012. Abgerufen am 26. November 2012.
- ^ Amazon Machine Images - Oracle Database 11g Release 2 (11.2.0.1) Enterprise Edition - 64 Bit Archiviert am 16.10.2011 bei der Wayback Machine , Amazon Web Services, abgerufen am 09.11.2011.
- ^ " Oracle Database in the Cloud ", Oracle.com, abgerufen am 9. November 2011.
- ^ Chris Kanaracus, „ EnterpriseDB führt neue Cloud-Option für PostgreSQL-Datenbanken ein “, PCWorld , abgerufen am 28.08.2011
- ^ "AWS | SAP HANA" . Amazon Web Services, Inc. Abgerufen am 7. Juli 2016 .
- ^ „SAP-Lösungen“ . Microsoft Azure . Abgerufen am 7. Juli 2016 .
- ^ „SAP HANA Enterprise Cloud“ . hana.sap.com . Archiviert vom Original am 15.08.2016.
- ^ „Clustrix tritt dem Rackspace-Partnerprogramm bei“ . Yahoo! Finance . Archiviert vom Original am 14.04.2016.
- ^ Tony Baer, " Cockroach DB stellt eine serverlose Ebene vor ", ZDNet.com , abgerufen am 13.12.2021.
- ^ a b EnterpriseDB#cite note-10
- ^ „Cloud SQL – MySQL Relational Database Service“ . Abgerufen am 28.11.2016 .
- ^ " Ankündigung des Heroku PostgreSQL Database Add-ons ", Heroku Blog, abgerufen am 9. November 2011.
- ^ Noel Yuhanna, SQL Azure Raises The Bar On Cloud Databases , Forrester, Abgerufen am 9. November 2011.
- ^ Pethuru, Raj (31.03.2014). Handbuch der Forschung zu Cloud-Infrastrukturen für Big-Data-Analysen . IGI Global. ISBN 9781466658653Die
- ^ Klint Finley, „7 Cloud-basierte Datenbankdienste“, archiviert am 9. November 2011 in der Wayback Machine , ReadWriteWeb , abgerufen am 9. November 2011.
- ^ " Cassandra in der Cloud einrichten " , archiviert am 13.11.2015 in der Wayback Machine , Cassandra Wiki, abgerufen am 10.11.2011.
- ^ „Google Cloud Platform Blog: Klicken Sie hier, um Apache Cassandra auf Google Compute Engine bereitzustellen“ . Abgerufen am 28.11.2016 .
- ^ " [1] Archiviert am 11.04.2019 in der Wayback Machine
- ^ " Clusterpoint Database Virtual Box VM Installationsanleitung (Veralteter Link , archiviert am 10.03.2015 bei archive.today ), Clusterpoint, abgerufen am 08.03.2015.
- ^ " Amazon Machine Images, CouchDB 0.10.x 32 Bit Ubuntu ", Amazon Web Services, abgerufen am 10.11.2011.
- ^ „CouchDB Cloud Hosting auf der Google Cloud Platform“ . Abgerufen am 28.11.2016 .
- ^ " Amazon Machine Image, Hadoop AMI ", Amazon Web Services, abgerufen am 10.11.2011.
- ^ „Cloud Dataproc: Managed Spark & Managed Hadoop Service“ . Abgerufen am 28.11.2016 .
- ^ [" http://www.rackspace.com/blog/cloud-big-data-platform-limited-availability/ Hadoop at Rackspace] Archiviert am 2. März 2014 in der Wayback Machine ", Rackspace Big Data Platforms, abgerufen am 24. Februar 2014.
- ^ „MarkLogic Developer 8 (HVM) auf AWS Marketplace“ . aws.amazon.com . Abgerufen am 31.03.2016 .
- ^ marklogic.com. „Flexible Deployment“ (PDF) . Abgerufen am 28.11.2016 .
- ^ „MongoDB auf Amazon EC2 installieren – MongoDB-Handbuch“ . mongodb-documentation.readthedocs.io . Abgerufen am 1. April 2026 .
- ^ „Produktionshinweise für selbstverwaltete Bereitstellungen – Datenbankhandbuch – MongoDB-Dokumentation“ . www.mongodb.com . Abgerufen am 1. April 2026 .
- ^ " Neo4J in der Cloud , archiviert am 25.09.2011 in der Wayback Machine ", Neo4J Wiki, abgerufen am 10.11.2011.
- ^ " Ankündigung von Neo4J auf Windows Azure ", Neo4J Blog, abgerufen am 10.11.2011.
- ^ a b Adrian Bridgwater, " ScyllaDBs Echtzeit-NoSQL-Datenbank wird von 'Super-App' genutzt ", Computerworld , abgerufen am 27.12.2012.
- ^ Andrew Brust, " Cloudant Makes NoSQL as a Service Bigger ", ZDNet , abgerufen am 22.05.2012.
- ^ „DataStax Astra DB: DataStax Managed Services powered by Apache Cassandra“ . DataStax . Abgerufen am 7. März 2022 .
- ^ „Bigtable: Scalable NoSQL Database Service“ . Abgerufen am 28.11.2016 .
- ^ „Datastore: NoSQL Schemaless Database“ . Abgerufen am 28.11.2016 .
- ^ „MongoDB Atlas: Hosted MongoDB as a Service“ . Abgerufen am 30.08.2016 .
- ^ „NoSQL-Datenbank-Cloud-Service“ . Oracle Cloud . Abgerufen am 29.11.2017 .