Was ist eine Dokumentdatenbank?
Definition der Dokumentdatenbank
Eine Dokumentdatenbank ist eine nichtrelationale Datenbank, die dazu dient, Daten im Form von JSON-ähnlichen Dokumenten zu speichern und abzufragen. Mit Dokumentdatenbanken können Entwickler Daten einfacher in einer Datenbank speichern und abfragen, indem sie das gleiche Dokumentmodellformat wie in ihrem Anwendungscode verwenden. Aufgrund des flexiblen, semi-strukturierten und hierarchischen Aufbaus der Dokumente und Dokumentdatenbanken können sie entsprechend den Anforderungen der Anwendungen weiterentwickelt werden. Das Dokumentmodell eignet sich hervorragend für Anwendungsfälle wie Kataloge, Benutzerprofile und Content Management-Systeme, bei denen jedes Dokument einzigartig ist und im Laufe der Zeit weiterentwickelt wird. Dokumentdatenbanken ermöglichen eine flexible Indexierung, leistungsstarke Ad-hoc-Abfragen und Analysen zu Dokumentsammlungen.
Im folgenden Beispiel wird ein Buch durch ein JSON-ähnliches Dokument beschrieben.
[
{
"year" : 2013,
"title" : "Turn It Down, Or Else!",
"info" : {
"directors" : [ "Alice Smith", "Bob Jones"],
"release_date" : "2013-01-18T00:00:00Z",
"rating" : 6.2,
"genres" : ["Comedy", "Drama"],
"image_url" : "http://ia.media-imdb.com/images/N/O9ERWAU7FS797AJ7LU8HN09AMUP908RLlo5JF90EWR7LJKQ7@@._V1_SX400_.jpg",
"plot" : "A rock band plays their music at high volumes, annoying the neighbors.",
"actors" : ["David Matthewman", "Jonathan G. Neff"]
}
},
{
"year": 2015,
"title": "The Big New Movie",
"info": {
"plot": "Nothing happens at all.",
"rating": 0
}
}
]
Anwendungsfälle
Content-Management
Eine Dokumentendatenbank eignet sich ideal für Content Management-Anwendungen wie Blogs und Videoplattformen. Mit einer Dokumentendatenbank kann jede Entität, die die Anwendung verfolgt, als Einzeldokument gespeichert werden. Mit einer Dokumentdatenbank können Entwickler eine Anwendung intuitiver aktualisieren, wenn sich die Anforderungen ändern. Darüber hinaus müssen bei einer Änderung des Datenmodells nur die betroffenen Dokumente aktualisiert werden. Zum Durchführen der Änderungen ist weder ein Schema-Update erforderlich, noch muss ein Ausfall der Datenbank berücksichtigt werden.
Kataloge
Dokumentdatenbanken eignen sich zum effizienten und effektiven Speichern von Kataloginformationen. Beispielsweise besitzen verschiedene Produkte in einer E-Commerce-Anwendung in der Regel eine unterschiedliche Anzahl von Attributen. Die Verwaltung von Tausenden von Attributen in relationalen Datenbanken ist ineffizient, und die Leseleistung wird beeinträchtigt. Mithilfe einer Dokumentendatenbank können die Attribute jedes Produkts in einem einzigen Dokument beschrieben werden, um die Verwaltung zu vereinfachen und die Lesegeschwindigkeit zu erhöhen. Die Änderung der Eigenschaften eines Produkts hat keine Auswirkungen auf andere Produkte.
Dokumentdatenbanken in AWS
Amazon DocumentDB (mit MongoDB-Kompatibilität)
Amazon DocumentDB (mit MongoDB-Kompatibilität) ist ein schneller, skalierbarer, hochverfügbarer und vollständig verwalteter Dokumentdatenbankdienst, der MongoDB-Workloads unterstützt. Entwickler können denselben MongoDB-Anwendungscode, dieselben Treiber und Tools verwenden, um Workloads in Amazon DocumentDB auszuführen, zu verwalten und zu skalieren und die Leistung, Skalierbarkeit und Verfügbarkeit zu verbessern, ohne sich um die Verwaltung der zugrunde liegenden Infrastruktur kümmern zu müssen.
Erste Schritte mit Amazon DocumentDB noch heute.