Kalawin - stock.adobe.com

AWS-Datenbankservices: RDS, DynamoDB, Neptune, QLDB und Co.

Amazon Web Services (AWS) ist einer der führenden Cloud-Anbieter. In der Amazon-Cloud stehen dabei auch verschiedene Datenbankdienste zur Verfügung.

Amazon Web Services (AWS) bietet verschiedene Datenbankdienste an. Dazu gehören Amazon Relational Database Service (RDS), DynamoDB, ElastiCache, Neptune, Amazon Redshift, Amazon QLDB und Amazon DocumentDB.

Amazon RDS: Datenbanken auf MariaDB- oder MySQL-Basis

Wenn Datenbanken in AWS gebucht werden sollen, setzen viele Profis auf den Relational Database Service (RDS). Hierbei handelt es sich um eine Cloud-Dienst, der es ermöglicht, relationale Datenbanken in der Cloud zu erstellen.

Die Verwaltung erfolgt über die Verwaltungskonsole in AWS. Als Datenbank-Engines stehen Amazon Aurora, MySQL, PostgreSQL, MariaDB, Oracle und Microsoft SQL Server zur Verfügung.

Abbildung 1: Über Amazon RDS erstellen Administratoren Datenbanken auf Basis von MySQL, PostgreSQL, Oracle oder Microsoft SQL Server.
Abbildung 1: Über Amazon RDS erstellen Administratoren Datenbanken auf Basis von MySQL, PostgreSQL, Oracle oder Microsoft SQL Server.

Wurde die gewünschte Engine ausgewählt, stehen noch verschiedene Auswahlmöglichkeiten zur Verfügung, wie die Version der Datenbank, die Größe, Berechtigungen, Kennwörter und mehr.

Abbildung 2: Die Auswahl an Datenbankversionen ist umfangreich.
Abbildung 2: Die Auswahl an Datenbankversionen ist umfangreich.

Vor der Verwendung wird die Datenbank konfiguriert, erstellt und gestartet. Die Verwaltung erfolgt anschließend über die AWS Management Console. Auf diesem Weg lassen sich mehrere Datenbanken parallel bereitstellen, auch mit unterschiedlichen Engines.

Amazon DocumentDB: MongoDB in der Cloud

Die relativ neue Datenbank DocumentDB kann MongoDB-Workloads in der Amazon-Cloud darstellen. Der Dienst nutzt halbstrukturierte Daten und kann diese für andere Cloud-Dienste bereitstellen, auch in AWS.

Entwickler können mit Amazon DocumentDB Anwendungen einbinden, die normalerweise nur MongoDB unterstützen. Die APIs für den Zugriff sind mit MongoDB ebenfalls identisch. Daten in Amazon DocumentDB können automatisiert in S3 gesichert werden. Mit dem AWS Database Migration Service (DMS) lassen sich Daten aus anderen Datenbanken in DocumentDB einbinden.

Abbildung 3: Die Einstellungsoptionen für Amazon DocumentDB-Cluster.
Abbildung 3: Die Einstellungsoptionen für Amazon DocumentDB-Cluster.

Datenbanken für Big Data in AWS

Für Big-Data-Anwendungen werden häufig spezielle Datenbanksysteme benötigt. Hierzu stellt Amazon ebenfalls Datenbanklösungen zur Verfügung. DynamoDB kann als NoSQL-Datenbank in AWS gebucht werden.

In diesem Zusammenhang ist auch Amazon RedShift interessant. Hierbei handelt es sich um einen verwalteten Data-Warehouse-Dienst, der wiederum seine Daten aus den anderen AWS-Systemen erhalten kann, aber auch von außerhalb der Amazon-Cloud.

Abbildung 4: Data Warehouses lassen sich über Amazon Redshift auch in der Cloud bereitstellen.
Abbildung 4: Data Warehouses lassen sich über Amazon Redshift auch in der Cloud bereitstellen.

In-Memory-Datenspeicher Amazon ElastiCache

Der Datenbankdienst ElastiCache bietet in AWS einen vollständig verwalteten In-Memory-Datenbankdienst. Diese Datenbanken werden vor allem dann benötigt, wenn die Reaktionszeit der Anwendungen unterhalb von Millisekunden liegen soll.

Der Dienst ermöglicht eine vollständig verwaltete Umgebung für Redis und Memcached. Redis ist eine NoSQL-Datenbank, bei Memcached kann ein Open-Source-Cache-Server erstellt werden. Beides dient für die Erstellung einer möglichst leistungsstarken Cache-Lösung oder als Sitzungsspeicher.

Da die Datenbanken vollständig verwaltet sind, müssen sich Entwickler oder Administratoren um keine Einstellungen der Server oder anderer Hardware kümmern, die relevant für die Leistung sind.

Abbildung 5: Erstellen eines ElastiCache-Clusters in der AWS-Konsole.
Abbildung 5: Erstellen eines ElastiCache-Clusters in der AWS-Konsole.

Graphdatenbanken in AWS: Neptune

Mit Neptune können in AWS auch Graphdatenbanken erstellt werden. Hierbei handelt es sich um eine spezielle NoSQL-Datenbank. Eine solche Datenbank nutzt Graphen, um miteinander vernetzte Daten zu verwalten. Hier werden spezielle Algorithmen verwendet, mit der sich die Daten leichter abfragen lassen. Die Struktur unterscheidet sich von den Strukturen einer relationalen Datenbank.

Dazu werden die Graphen in der Datenbank mit Knoten (Punkten) und Kanten (Linien, mit denen die Knoten verbunden sind) abgespeichert. In diesem Bereich wird vor allem mit Labeled Property Graph (LPG) und Resource Description Framework (RDF) gearbeitet. Diese beiden Diagrammmodelle werden auch in Neptune unterstützt.

Die Datenbanken werden oft zur Analyse im Big-Data-Bereich oder für Berechnungen im Bereich der sozialen Netzwerke genutzt. Auch für das Supply Chain Management (SCM) kommen diese Datenbanken häufig zum Einsatz. Vor allem, wenn es um vernetzte Daten geht, lassen sich Daten in Graphendatenbanken einfacher speichern als mit eher komplexen Strukturen. Die Relationen zwischen den Knoten lassen sich gewichten, was über die Kanten gesteuert wird. 

Amazon Quantum Ledger Database: Blockchain-Datenbank in der Cloud

Die Amazon Quantum Ledger Database (QLDB) stellt eine vollständig verwaltete Ledger-Datenbank dar. Es handelt sich hierbei um eine neue Art von Datenbank. Die Struktur entspricht der von Blockchain. Dabei ist klar definiert, welche Daten in der Vergangenheit der Blockchain erstellt wurden.

Mit der Datenbank lassen sich, wie bei einer herkömmlichen Blockchain, Daten so speichern, dass es eine umfassende und nicht änderbare Historie gibt. Dadurch sind die darin gespeicherten Daten fälschungssicher und sie lassen sich jederzeit nachverfolgen. Die Datenbank hat vor allem Smart-Contract-Umgebungen im Fokus und hilft dabei, Daten im Supply Chain Management zu speichern.

Da jederzeit klar ist, wann, welche Änderungen durchgeführt wurden, eignet sich die Datenbank dafür, Daten zu speichern, deren Unveränderbarkeit klar definiert sind. Die Datenbank befindet sich vollständig in der AWS-Cloud. Es werden keine dezentralen Strukturen genutzt, wie normalerweise bei der Blockchain-Technologie üblich.

Nächste Schritte

Amazon EC2 versus RDS: Was eignet sich besser für Oracle-Datenbanken?

Amazon Neptune: Graphdatenbank für KI-Anwendungen.

Die Funktionen der Cloud-NoSQL-Datenbank Amazon DynamoDB.

Erfahren Sie mehr über Cloud-Software

ComputerWeekly.de
Close