Die großen Cloud-Provider bieten eine breite Palette von DBaaS-Optionen an, darunter relationale Datenbankmanagementsysteme (RDBMs) sowie nicht-relationale oder NoSQL-Datenbanken wie etwa Dokumenten- und Spaltenspeicher.
Um den richtigen DBaaS-Anbieter für Ihr Unternehmen zu finden, müssen Sie unter anderem bestimmen, welche Datenbanktechnologien für Ihre Anwendung am besten geeignet sind, und dann natürlich sicherstellen, dass Ihr Anbieter diese Technologie auch unterstützt. Die erste Hälfte des Prozesses kann sehr komplex sein, da es keine universelle DBaaS von der Stange gibt, die für alle Ihre Anwendungen gleichermaßen gut geeignet ist. Kompromisse und Zugeständnisse sind grundsätzlich beteiligt und manchmal können diese sehr subtil sein. Nachfolgend werden einige bestimmte Faktoren genannt, die Sie berücksichtigen sollten.
Passt eher ein primärer oder doch besser ein zusätzlicher Datenspeicher zu meiner Anwendung?
Primäre Datenspeicher sind solche, die flexible Datenmodelle anbieten; sie schließen relationale Datenbanken und dokumentbasierte Datenspeicher ein. Sie unterstützen in der Regel allgemeine Abfragesprachen (wie etwa die verschiedenen SQL-Implementierungen) und allgemeine Datenmodellierungstools. Die meisten wurden mit Fokus auf die Wahrung der Datenintegrität entwickelt. Sie sind flexibel und stellen eine solide Wahl für die Verwendung mit einem Großteil der Anwendungen dar. Beispiele für primäre Datenspeicher sind u. a. MySQL, MongoDB und PostgreSQL
.
Hilfsdatenspeicher hingegen erfüllen in der Regel einige spezielle Aufgaben gut, sind aber keine ausgeprägten Allzwecktools für den universellen Einsatz. Sie bieten möglicherweise eingeschränkte Datenmodelle oder begrenzte Abfragefunktionen, tun sich aber in einem bestimmten Bereich als die leistungsfähigsten ihrer Klasse hervor. Beispiele für diesen Typ sind u. a. Redis, etcd, Elasticsearch und JanusGraph. Wenn eine Datenbank dieses Typs perfekt zu den Anforderungen Ihrer Anwendung passt, können Sie mit einem Hilfsdatenspeicher hervorragende Ergebnisse erzielen. Bleiben Sie andernfalls bei einem primären Datenspeicher.
Passt die der Datenbank zugrunde liegende Architektur zu meinen Anforderungen?
Es ist überaus wichtig, eine Datenbanksteuerkomponente (Engine) auszuwählen, die nicht nur gut zu den aktuellen Anforderungen Ihrer Anwendung passt, sondern durch Skalierbarkeit an zukünftige Anforderungen angepasst werden kann. Verteilte Systeme sind schwieriger zu erstellen, zu verwalten und zu warten als Systeme mit einem einzigen Knoten, und ihre unbegrenzte horizontale Skalierbarkeit kann auf Kosten der verfügbaren Funktionen oder der Leistung gehen
.
Erbringt die Datenbank beim Testen eine gute Leistung?
Ohne Tests in der Praxis ist es oft nicht möglich, genau zu verstehen, wie die Funktionen und das Leistungsspektrum einer Datenbank mit den Anforderungen Ihrer Anwendung ineinandergreifen. Da es so einfach (und erschwinglich) ist, auf einem DBaaS-Angebot aufzubauen, sollte ein wichtiger Teil des Auswahlverfahrens die Erstellung und Erkundung eines Prototyps sein. Auf diese Weise können Sie die Antwortzeiten bewerten, wenn Ihre Anwendung echte Anforderungen an die Datenbank sendet, und ihre Leistung beobachten, wenn sie mit der Mischung aus Operationen und der Menge an Datenverkehr konfrontiert wird, der sie in Ihrer Produktionsumgebung begegnen wird.
Was hat der Cloud-Provider sonst noch zu bieten?
Da DBaaS-Angebote in der Regel in eine vollständige Cloud-Plattform integriert werden können, ist es auch wichtig, die ganzheitlichen Angebote der Anbieter zu vergleichen, die über die Merkmale und Funktionen der Datenbank selbst hinausgehen.
Lesen Sie diesen Blogbeitrag, um zu erfahren, wie Sie eine Datenbank für Ihre Anwendung auswählen.