Was ist eine Dokumentdatenbank?

Eine Dokumentendatenbank ist eine Art von NoSQL-Datenbank, die Daten im JSON-Format (JavaScript Object Notation) speichert, verwaltet und abruft, anstatt in herkömmlichen festen Tabellen. Diese „Dokumente“ können jeweils eine eigene Struktur haben – im Gegensatz zu relationalen Datenbanken, die starre Tabellen mit Zeilen und Spalten verwenden.

Diese Flexibilität macht Dokumentdatenbanken zur idealen Wahl für den Umgang mit halbstrukturierten oder unstrukturierten Daten, wie KI-generierten Anwendungen oder Sensordaten – Fälle, in denen herkömmliche Schemas zu restriktiv wären. Sie sind besonders beliebt für Anwendungsfälle wie Content-Management, E-Commerce und Gaming.

Wichtigste Ergebnisse

Eine Dokumentdatenbank ist eine Art NoSQL-Datenbank, die Daten in flexiblen „Dokumenten“ speichert, die oft in Formaten wie JSON oder BSON vorliegen.

Dokumentdatenbanken sind bekannt für:

  • Flexible Datenmodelle: Jedes Dokument kann eine eigene Struktur haben. Das entwicklerfreundliche Design ordnet Objekte direkt dem Code zu.
  • Horizontale Skalierbarkeit: Dokumentendatenbanken sind für die horizontale Skalierung ausgelegt und lassen sich problemlos an das Wachstum anpassen.
  • Umfangreiche Abfragemöglichkeiten: Eine leistungsstarke Abfragesprache ermöglicht komplexes Filtern, Sortieren und Aggregieren von Daten.
  • Vielfältige Anwendungsfälle: Dokumentdatenbanken eignen sich ideal für unstrukturierte oder semistrukturierte Daten und haben eine Reihe von Anwendungsfällen, z. B. Content-Management-Systeme, Nutzerprofile, Gesundheitsakten und E-Commerce-Produktkataloge.

Wie funktioniert eine Dokumentdatenbank?

Eine Dokumentdatenbank ist wie ein intelligenter digitaler Aktenschrank. Die Daten werden in Sammlungen (Ordner) gruppiert, die jeweils in sich geschlossene Dokumente (Dateien) für eine einzelne Entität wie einen Kunden oder ein Produkt enthalten.

Im Gegensatz zu einer starren relationalen Tabelle kann jedes Dokument eine eigene Struktur haben. So können Sie beispielsweise einem einzelnen Produkt in Ihrem E-Commerce-Katalog das Feld „sustainability_rating“ hinzufügen, ohne das Schema für alle anderen Artikel zu ändern.

Dokument 1:

{

"id": 1,

"product_name": "blue shirt",

"product_category": "shirt",

"qty": 76,

"sustainability_rating": "moderate"

}


Dokument 2:

{

"id": 2,

"product_name": "green pants",

"product_category": "pants",

"qty": 44

}


Dokument 1:

{

"id": 1,

"product_name": "blue shirt",

"product_category": "shirt",

"qty": 76,

"sustainability_rating": "moderate"

}


Dokument 2:

{

"id": 2,

"product_name": "green pants",

"product_category": "pants",

"qty": 44

}


Dokumentdatenbanken eignen sich gut für Anwendungen, die Flexibilität, Skalierbarkeit und schnelle Entwicklung erfordern, wie KI-Anwendungen, Content-Management, E-Commerce und Gaming.

Ein einzelner Social-Media-Beitrag enthält beispielsweise semistrukturierte Daten – vorhersehbare Felder wie Nutzername, Zeitstempel und Anzahl der „Likes“ –, aber die Struktur ist flexibel. Ein Beitrag kann beispielsweise ein optionales Standort-Tag enthalten, während ein anderer eine Liste mit getaggten Nutzern hat. Außerdem kann der Beitrag unstrukturierte Daten enthalten, zum Beispiel ein Bild oder Video, den Freitext der Bildunterschrift und eine Reihe von Nutzerkommentaren.

Eine Dokumentdatenbank ist so konzipiert, dass sie all diese zusammengehörigen Informationen – vom strukturierten Nutzernamen bis hin zum unstrukturierten Bild und den Kommentaren – in einem zusammenhängenden „Dokument“ speichert. So können Entwickler sehr effizient mit realen Daten arbeiten, ohne sie erst in eine starre, vordefinierte Struktur zwingen zu müssen.

Wichtige Funktionen einer Dokumentdatenbank

Dokumentdatenbanken zeichnen sich durch eine Reihe einzigartiger architektonischer Merkmale aus, die moderne Entwicklungsmuster und Dateneffizienz unterstützen.

Dokumente werden in Sammlungen gruppiert, ähnlich wie Tabellen in relationalen Datenbanken. Im Gegensatz zu Tabellen müssen jedoch nicht alle Dokumente in Sammlungen dieselbe Struktur haben, was mehr Flexibilität bietet. Nehmen wir zum Beispiel Dokumente, in denen der Name und die E-Mail-Adresse eines Kunden gespeichert sind, aber unterschiedliche Zahlungsarten. In einem Dokument können Kreditkartendaten gespeichert sein, in einem anderen die Bankleitzahl und Kontonummer eines Girokontos.

Jedes Dokument hat nicht nur seine eigene Struktur, sondern das Format kann sich auch ändern, wenn Informationen hinzugefügt werden. Mit anderen Worten: Nicht nur die Werte, sondern auch die Struktur der Daten kann sich ändern. Das ist ein grundlegender Unterschied zu einer relationalen Datenbank, in der alle Zeilen einer Tabelle den gleichen vordefinierten Spalten entsprechen müssen und sich nur die Werte ändern. Ein dynamisches Schema ist besonders leistungsstark beim Vibe-Coding, bei dem ein einzelner Prompt, der neue Geschäftsanforderungen ausdrückt, eine Änderung an einem Datenmodell widerspiegeln kann.

Dokumentdatenbanken ermöglichen es Ihnen, direkt in den Feldern eines Dokuments zu suchen, wobei Indizes schnelle Abfragen ermöglichen. So können Sie beispielsweise schnell einen Nutzer anhand seiner E‑Mail-Adresse finden oder Bestellungen über einem bestimmten Preis abrufen.

Dokumentendatenbanken sind so konzipiert, dass sie einfach erweitert werden können, indem nahtlos weitere Server oder Cluster mit wenig bis gar keiner Ausfallzeit hinzugefügt werden. Diese Skalierbarkeit macht sie ideal für Anwendungen mit wachsendem oder unvorhersehbarem Datenbedarf.

Wichtige Anwendungsfälle für Dokumentdatenbanken

Dokumentdatenbanken werden häufig für Anwendungen eingesetzt, bei denen Flexibilität, Skalierbarkeit und Geschwindigkeit entscheidend sind. Hier einige gängige Anwendungsfälle:

  • Content-Management-Systeme (CMS): Verwaltung verschiedener Inhalte, von Blogposts bis hin zu Produktbeschreibungen, um eine effiziente Bereitstellung und Aktualisierung von Inhalten zu gewährleisten
  • E-Commerce-Plattformen: Leistungsstarke Onlineshops mit komplexen Produktkatalogen, Nutzerkonten und Echtzeittransaktionen
  • Mobile Apps und Webanwendungen: Schnelle und responsive Anwendungen entwickeln, die auf allen Geräten eine nahtlose Nutzererfahrung bieten
  • Spieleentwicklung: Sie können fesselnde Spiele entwickeln, indem Sie Spielerdaten, Spielstände und Bestenlisten verwalten
  • Anwendungen im Gesundheitswesen: Vertrauliche Patientendaten sicher speichern und verwalten, um eine effiziente und präzise Gesundheitsversorgung zu ermöglichen
  • KI-basierte Anwendungen: KI mit einem Datenmodell unterstützen, das sich schnell weiterentwickeln und mit sich ändernden KI-Prompts Schritt halten kann

Dokument-, Schlüssel/Wert-Paar- und relationale Datenbanken im Vergleich

Dokumentdatenbanken, relationale Datenbanken und Schlüssel/Wert-Speicher verwalten zwar alle Daten, aber mit unterschiedlichen Prioritäten in Bezug auf Struktur, Flexibilität und Geschwindigkeit.

Feature

Dokumentdatenbank

Schlüssel/Wert-Speicher

Relationale Datenbanken

Datenformat

Umfangreiche, strukturierte Dokumente

Einfache Schlüssel/Wert-Paare

Tabellarisch (Zeilen und Spalten)

Flexibilität

Hoch; jedes Dokument kann unterschiedlich sein

Hoch; die Anzahl der Spalten kann von Zeile zu Zeile variieren

Eingeschränkt; vordefiniertes Schema

Abfragen

Erweitert, einschließlich verschachtelter Felder

Nach Primär- oder Sekundärindex für optimale Leistung

Erweiterte, komplexe Abfragen mit JOINs

Optimal für

Schnelle Entwicklung und sich weiterentwickelnde Datenmodelle

Einfache Datenstrukturen und schnelle Suchvorgänge

Strikte Datenkonsistenz und Abfragen über mehrere Tabellen hinweg

Feature

Dokumentdatenbank

Schlüssel/Wert-Speicher

Relationale Datenbanken

Datenformat

Umfangreiche, strukturierte Dokumente

Einfache Schlüssel/Wert-Paare

Tabellarisch (Zeilen und Spalten)

Flexibilität

Hoch; jedes Dokument kann unterschiedlich sein

Hoch; die Anzahl der Spalten kann von Zeile zu Zeile variieren

Eingeschränkt; vordefiniertes Schema

Abfragen

Erweitert, einschließlich verschachtelter Felder

Nach Primär- oder Sekundärindex für optimale Leistung

Erweiterte, komplexe Abfragen mit JOINs

Optimal für

Schnelle Entwicklung und sich weiterentwickelnde Datenmodelle

Einfache Datenstrukturen und schnelle Suchvorgänge

Strikte Datenkonsistenz und Abfragen über mehrere Tabellen hinweg

Dokumentdatenbanken im Vergleich zu relationalen Datenbanken

Dokumentdatenbanken eignen sich hervorragend für dynamische Umgebungen wie E-Commerce-Plattformen oder mobile Apps, in denen sich Daten schnell ändern oder unterschiedliche Formen annehmen. Sie eignen sich für Datasets aus verschiedenen Quellen oder mit unterschiedlichen Schemas.

Relationale Datenbanken eignen sich dagegen ideal für traditionelle Anwendungen wie Finanzsysteme oder Inventarverwaltung, bei denen Konsistenz und Struktur unerlässlich sind. Im Finanzdienstleistungssektor beispielsweise sorgen streng eingehaltene Schema dafür, dass jedes Kundenkonto genau die Datentypen verwendet, die für die Governance erforderlich sind.

Überlegungen zur Wahl zwischen den beiden Optionen:

  • Struktur: Relationale Datenbanken erzwingen strenge Schemas, während Dokumentdatenbanken es Datensätzen ermöglichen, eine jeweils eigene Struktur zu nutzen.
  • Beziehungen: Relationale Datenbanken verwenden JOIN-Operationen, um Tabellen zu verbinden, während Dokumentdatenbanken verwandte Daten oft in ein einzelnes Dokument einbetten, um den Zugriff zu beschleunigen.
  • Skalierbarkeit: Relationale Datenbanken lassen sich einfach vertikal skalieren, indem einem einzelnen Server mehr Ressourcen hinzugefügt werden. Für die horizontale Skalierung sind jedoch komplexe Mechanismen erforderlich. Dokumentendatenbanken sind für die horizontale Skalierung über mehrere Server hinweg konzipiert.
  • Flexibilität: Dokumentdatenbanken passen sich mühelos an sich ändernde Datenmodelle an, während bei relationalen Datenbanken ein erheblicher Aufwand erforderlich ist, um Schemas zu ändern.

Große, komplexe Anwendungen wie Videospiele können auf Dokumenten- und relationalen Datenbanken basieren, wobei jede Datenbank unterschiedliche Teile der Daten speichert.

Dokumentdatenbanken im Vergleich zu Schlüssel/Wert-Speichern

Sowohl Dokumentdatenbanken als auch Schlüssel/Wert-Speicher sind NoSQL-Datenbanken, aber sie dienen unterschiedlichen Zwecken, basierend auf der Art, wie sie Daten verarbeiten.

Dokumentdatenbanken: Dokumentdatenbanken gehen über das das Schlüssel-Wert-Konzept hinaus. Dokumente können verschachtelte Daten enthalten. Dokumentdatenbanken bieten mehr Flexibilität bei der Indexierung dieser Daten, um leistungsstarke Abfragen zu den Werten verschachtelter Daten zu ermöglichen. Diese Struktur ermöglicht es Dokumentdatenbanken, verschiedene Datasets zu verwalten und erweiterte Abfragen zu unterstützen.

Schlüssel/Wert-Speicher: Solche Datenbanken verwenden eine einfache Struktur aus Schlüsseln und Werten. Jeder Schlüssel ist einmalig und verweist direkt auf seinen Wert. Diese Einfachheit macht Schlüssel/Wert-Speicher extrem schnell für Suchvorgänge, aber sie sind nicht ideal für die Verarbeitung komplexer oder hierarchischer Daten, da sie keine ausgefeilten Abfragesprachen verwenden.

Wann sollte welche Methode verwendet werden:

  • Wählen Sie Schlüssel/Wert-Speicher für einfache Datenstrukturen wie die Verwaltung von Nutzersitzungen oder das Caching, bei denen schnelle Suchvorgänge unerlässlich sind.
  • Wählen Sie eine Dokumentdatenbank für Anwendungen mit komplexen, verschachtelten Datenstrukturen aus.

FAQ zur Dokumentdatenbank

Firestore ist eine vollständig verwaltete, serverlose Dokumentendatenbank von Google Cloud für Unternehmen. Sie können Daten in flexiblen Dokumenten speichern und nahtlos in andere Google Cloud-Dienste einbinden, um so eine robuste, skalierbare Lösung erhalten.

Der Unterschied liegt in Struktur und Flexibilität. SQL-Datenbanken wie Cloud SQL oder Spanner verwenden starre Tabellen mit Zeilen und Spalten. Dokumentdatenbanken wie Firestore speichern Daten in flexiblen JSON-Dokumenten, sodass sich die Struktur weiterentwickeln kann, ohne das Schema zu schädigen.

Vorteile der Verwendung einer Dokumentdatenbank

Dokumentdatenbanken sind leistungsstarke Tools, die moderne Datenanforderungen erfüllen können. Hier sind einige der wichtigsten Vorteile:

Flexibilität

Aufgrund ihrer dynamischen Schemas können Dokumentdatenbanken für Anwendungen hilfreich sein, bei denen sich die Datenmodelle häufig ändern.

Leistung

Dank integrierter Indizierung und effizienter Datenzugriffsmuster sind Dokumentdatenbanken selbst bei Nutzung großer oder komplexer Datasets schnell.

Skalierbarkeit

Mit horizontaler Skalierung können Sie bei zunehmendem Datenvolumen weitere Server hinzufügen und so für eine gleichbleibende Leistung für wachsende Anwendungen sorgen. Dokumentdatenbanken können auch vertikal skaliert werden, indem jedem einzelnen Knoten Rechenleistung hinzugefügt wird.

Für Entwickler

Sie können JSON-Dokumente Objekten in der Datenbank zuordnen und dabei eine Syntax verwenden, die Entwicklern vertraut ist. Aktualisieren Sie die Dokumente direkt im Code.

Vielseitigkeit der Daten

Dokumentdatenbanken eignen sich hervorragend zum Speichern, Verwalten und Abfragen verschiedener Datentypen, einschließlich unstrukturierter und halbstrukturierter Informationen und Metadaten, die mit Dateien wie Bildern und Videos verknüpft sind.

Firestore als Dokumentendatenbank

Firestore ist eine vollständig verwaltete Dokumentendatenbank, die die Komplexität der Datenbankverwaltung reduziert. So können Sie das volle Potenzial von Google Cloud und seiner global skalierbaren Plattform nutzen.

Ganz gleich, ob Sie eine einfache App entwickeln oder eine globale Plattform skalieren – die Funktionen von Firestore sind darauf ausgelegt, Ihre Arbeit zu beschleunigen, ohne Flexibilität und Leistung zu beeinträchtigen.

  • Serverlose Architektur zu bereitgestellten Preisen: Firestore ist serverlos, d. h., es muss keine Infrastruktur eingerichtet oder verwaltet werden. Die Lösung skaliert automatisch, um Ihre Datenlasten zu verarbeiten – von null bis zu Millionen gleichzeitiger Verbindungen. Und mit der Firestore Enterprise-Version profitieren Sie von den Vorteilen einer serverlosen Datenbank zu Preisen, die mit bereitgestellten Alternativen konkurrieren.
  • Erweiterte Abfragemöglichkeiten: Firestore unterstützt Hunderte von Operatoren, die zu komplexen Abfragepipelines zusammengesetzt werden können, einschließlich Volltextsuche (FTS). Damit können Sie mehr als nur einfache Dokumente suchen.
  • Unternehmensklasse: Bis zu 99,999 % Verfügbarkeit, ACID-konforme Transaktionen mit mehreren Dokumenten, vom Kunden verwaltete Verschlüsselungsschlüssel (CMEK), automatisierte Back-ups, Wiederherstellung zu einem bestimmten Zeitpunkt und mehr.
  • Einbindung von Google Cloud-Diensten: Sie können ganz einfach andere Google Cloud-Dienste wie Cloud Functions, Cloud Run und BigQuery einbinden. So lassen sich leistungsstarke Datenverarbeitungs- und Analysepipelines ohne komplexe Konfigurationen erstellen.
  • MongoDB-Kompatibilität: Sie können MongoDB -Treiber, ‑Tools und ‑Code verwenden, um eine direkte Verbindung zu Firestore herzustellen. So lassen sich vorhandene Anwendungen ganz einfach migrieren und neue Projekte mit vertrauten Mustern starten.
  • Echtzeit-Updates: Dank der direkten Einbindung in die Plattform können Sie Ihre Nutzer mit Live-Daten synchronisieren.
  • Globale Skalierbarkeit: Mit der horizontalen Skalierbarkeit von Firestore können Sie mühelos mit Ihrem Wachstum Schritt halten und Nutzern weltweit einen Zugriff mit niedriger Latenz bieten.
  • Entwicklerfreundlich: Sie können sich auf die Entwicklung innovativer Funktionen konzentrieren, ohne sich um die Infrastruktur oder Wartung kümmern zu müssen. Firestore ist ein vollständig verwalteter Dienst, der Ihnen schwierige Aufgaben abnimmt.
  • Bereit für generative KI: Mit unserer Google AI Studio-Integration können Sie einfache Text-Prompts in Sekundenschnelle in aktive, Firestore-basierte Anwendungen umwandeln. Nutzen Sie die Unterstützung für Remote-MCP, um Ihre bevorzugten KI-Agenten und Entwicklertools sicher und direkt mit Firestore zu verbinden. Mit der Firestore-Vektorsuche, LangChain und Llamaindex können Sie ganz einfach Anwendungen mit generativer KI erstellen. Sie können Firestore auch mit wenigen Klicks über schlüsselfertige Erweiterungen mit beliebten KI-Diensten verknüpfen. So können Sie beispielsweise eingebettete Inhalte automatisch generieren, Sprachen übersetzen oder Bilder klassifizieren.
  • Dauerhaft kostenlose Stufe: Firestore bietet eine großzügige kostenlose Stufe, die sich ideal für Start-ups oder kleinere Projekte eignet, die ohne Vorabkosten skalieren möchten.

Als Teil von Google Cloud und Firebase lässt sich Firestore einfach in Firebase Auth, BigQuery und viele andere Dienste einbinden. Von Tools für die Zusammenarbeit in Echtzeit über mobile Apps bis hin zu Unternehmensplattformen – Firestore bietet Ihnen alles, was Sie für Ihren Erfolg brauchen.

Legen Sie jetzt los – mit der kostenlosen Stufe für geringe Nutzung und den Vorteilen einer leistungsstarken, zuverlässigen und skalierbaren Dokumentdatenbank.

Meistern Sie Ihre geschäftlichen Herausforderungen mit Google Cloud

Neukunden erhalten ein Guthaben im Wert von 300 $ für Google Cloud.

Zusätzliche Ressourcen

  • Was ist eine relationale Datenbank?: Hier erfahren Sie mehr über die Grundlagen relationaler Datenbanken, einschließlich der Strukturierung von Daten in Zeilen und Spalten und wann sie für eine starke Konsistenz verwendet werden sollten.
  • Was ist eine NoSQL-Datenbank?: Lernen Sie die verschiedenen Arten von NoSQL-Datenbanken kennen, z. B. Schlüssel/Wert-, Dokument- und Wide-Column-Speicher, und erfahren Sie, wie diese mit unstrukturierten Daten umgehen
  • Erste Schritte mit Firestore: In dieser Anleitung erfahren Sie, wie Sie Ihre erste Firestore-Datenbank einrichten, Daten hinzufügen und skalierbare Anwendungen in Google Cloud entwickeln.

Gleich loslegen

Profitieren Sie von einem Guthaben in Höhe von 300 $ und mehr als 20 immer kostenlose Produkten, um Google Cloud kennenzulernen.

Google Cloud