Dokumenten-orientierte Datenbanken // deutsch
Summary
TLDRIn diesem Video geht es um dokumentenorientierte Datenbanken, die sich durch die Speicherung von Dokumenten, wie JSON-Objekten, auszeichnen. Diese Datenbanken ermöglichen die Speicherung von unstrukturierten oder halbstrukturierten Daten ohne feste Schemas und unterstützen keine JOIN-Operationen zwischen Dokumenten. Im Gegensatz zu relationalen Datenbanken, die auf SQL basieren, sind dokumentenorientierte Datenbanken flexibler und skalierbarer, was sie ideal für moderne Anwendungen macht. Beispiele für solche Systeme sind MongoDB und CouchDB.
Takeaways
- 📚 Die heutige Vorlesung konzentriert sich auf dokumentenorientierte Datenbanken.
- 🔑 In Schlüssel-Wert-Datenbanken wird nur der Schlüssel indiziert, nicht der Wert.
- 🔍 Dokumentenorientierte Datenbanken ermöglichen die Durchsuchung von Werten und sind besser für komplexe Abfragen geeignet.
- 💾 Dokumentenorientierte Datenbanken speichern Daten in Form von Dokumenten, normalerweise JSON- oder XML-Objekten.
- 📝 Es gibt keine Beziehungen zwischen den Dokumenten in dokumentenorientierten Datenbanken, sie sind in sich geschlossen.
- 🌐 Dokumentenorientierte Datenbanken sind gut in der Lage, horizontal zu skalieren.
- 🔑 MongoDB ist ein bekanntes Beispiel für eine dokumentenorientierte Datenbank, die ein eindeutiges Feld (ObjectId) als Schlüssel verwendet.
- 🔍 Felder in dokumentenorientierten Datenbanken sind durchsuchbar und indizierbar, ähnlich wie in Schlüssel-Wert-Datenbanken.
- 🚫 Dokumentenorientierte Datenbanken benötigen keine Foreign Keys, da die Dokumente selbständig sind.
- 🔄 Einige dokumentenorientierte Datenbanken unterstützen Transaktionen, wie MongoDB seit Version 4.0.
- 📅 Die nächste Vorlesung wird sich mit Graphen-Datenbanken befassen.
Q & A
Was sind dokumentenorientierte Datenbanken?
-Dokumentenorientierte Datenbanken speichern Daten in Form von Dokumenten, die oft JSON- oder XML-Objekte sind. Sie sind in der Regel selbstschließend und enthalten keine Beziehungen zu anderen Dokumenten.
Wie unterscheidet sich eine dokumentenorientierte Datenbank von einer relationalen Datenbank?
-In einer dokumentenorientierten Datenbank werden Datenstrukturen gespeichert, ohne dass es Beziehungen zwischen den Dokumenten gibt. Im Gegensatz dazu verwenden relationale Datenbanken Tabellen mit festen Schemas und Beziehungen zwischen ihnen.
Was bedeutet 'schimmerlos speichern' in Bezug auf Datenbanken?
-Schimmerlos speichern bedeutet, dass jeder Datensatz eine andere Form haben kann, da die Struktur der Datensätze nicht 100% gleich ist und kleine Unterschiede in der Struktur auftreten können.
Was ist der Hauptvorteil von dokumentenorientierten Datenbanken gegenüber relationalen Datenbanken?
-Dokumentenorientierte Datenbanken sind besser geeignet für das Speichern von unstrukturierten oder halbstrukturierten Daten und ermöglichen es, Datensätze mit unterschiedlichen Feldern zu speichern, was in relationalen Datenbanken schwieriger zu verwalten ist.
Wie werden die Felder in dokumentenorientierten Datenbanken bezeichnet?
-In dokumentenorientierten Datenbanken werden die Felder oft als 'Felder' oder 'Eigenschaften' bezeichnet, da sie in JSON- oder XML-Objekten organisiert sind, anstatt wie in relationalen Datenbanken in Spalten.
Was ist die Bedeutung von 'Indexierung' in dokumentenorientierten Datenbanken?
-Indexierung in dokumentenorientierten Datenbanken ermöglicht die Durchsuchbarkeit von Feldern, ähnlich wie bei Schlüssel-Wert-Datenbanken. Es ermöglicht schnelle Abfragen und Suche nach Werten innerhalb der Dokumente.
Welche bekannte dokumentenorientierte Datenbank wurde im Skript erwähnt?
-MongoDB ist eine bekannte dokumentenorientierte Datenbank, die im Skript erwähnt wurde.
Was ist der Unterschied zwischen der 'ObjectID' in MongoDB und anderen Feldern?
-Die 'ObjectID' in MongoDB ist ein eindeutiger Schlüssel, der jedem Dokument zugeordnet ist und als Primärschlüssel fungiert. Im Gegensatz dazu sind andere Felder in MongoDB durchsuchbar und indexierbar, aber sie fungieren nicht als eindeutige Identifikation für das Dokument.
Wie skalieren dokumentenorientierte Datenbanken?
-Dokumentenorientierte Datenbanken skalieren gut, insbesondere horizontal, was bedeutet, dass sie durch Hinzufügen von mehr Servern oder Knoten vergrößert werden können, um die Last zu verteilen.
Was bedeuten die Abkürzungen 'NoSQL' und 'NewSQL'?
-NoSQL steht für 'Not Only SQL' und bezeichnet eine Gruppe von Datenbanken, die nicht auf SQL basieren. NewSQL hingegen bezieht sich auf eine neue Generation von Datenbanken, die versuchen, die Vorteile von relationalen und NoSQL-Datenbanken zu kombinieren.
Was wird am nächsten Tag im Skript thematisiert?
-Am nächsten Tag wird im Skript das Thema 'Graphen-Datenbanken' behandelt, einschließlich einer Erklärung, was sie sind und was sie können.
Outlines
😀 Einführung in dokumentenorientierte Datenbanken
Der erste Absatz des Videos skizziert die Besonderheiten von dokumentenorientierten Datenbanken. Es wird erklärt, dass diese Art von Datenbank Systeme spezielle Anforderungen an die Datenspeicherung erfüllen, insbesondere wenn es um die Speicherung von komplexen Datenstrukturen geht. Die Erklärung beginnt mit einem Rückblick auf gestrige Diskussionen über spalten- und wertorientierte Systeme und stellt dann die Eigenschaften von White-Cullum-Datenbanken, die als spezielle Form von Key-Value-Datenbanken betrachtet werden, dar. Der Schwerpunkt liegt auf der Tatsache, dass in solchen Systemen nur der Schlüssel indiziert wird, nicht jedoch die Werte. Die Diskussion führt dann zu den Herausforderungen, die auftreten, wenn komplexe Abfragen erforderlich sind, die nicht nur auf dem Schlüssel, sondern auch auf den Werten basieren. Als Lösung wird die Verwendung einer klassischen SQL-basierten relationalen Datenbank vorgeschlagen, wobei jedoch die Herausforderungen bei der Speicherung von unstrukturierten oder variabel strukturierten Daten in solchen Systemen hervorgehoben werden. Die Vorteile von dokumentenorientierten Datenbanken werden betont, insbesondere ihre Fähigkeit, Objektstrukturen zu speichern, ohne Beziehungen zwischen den Dokumenten zu erfordern. Die Besonderheiten von MongoDB als bekanntestem Beispiel für eine dokumentenorientierte Datenbank werden kurz erwähnt, einschließlich der Möglichkeit, Objekte in Objekte zu verschachteln und die Fähigkeit, Felder indexierbar und durchsuchbar zu machen.
😀 NoSQL-Datenbanken und zukünftige Themen
Der zweite Absatz des Videos schließt mit einer Zusammenfassung des heutigen Themas und einer Vorschau auf zukünftige Diskussionen. Es wird betont, dass die bisher besprochenen Datenbanken, obwohl sie nicht SQL verwenden, immer noch als NoSQL-Datenbanken betrachtet werden, was das Akronym 'Not Only SQL' verdeutlicht. Der Sprecher kündigt an, dass das nächste Video sich mit Graph-Datenbanken befassen wird, die eine weitere Art von NoSQL-Datenbank darstellen. Der Abschnitt endet mit einer Dankesaussage an die Zuschauer, einer Aufforderung zur Interaktion durch das Liken des Videos und zur Abonnement des Kanals, sowie einem Hinweis auf die Aktivierung der Glocke, um über neue Videos benachrichtigt zu werden. Der Sprecher wünscht den Zuschauern einen schönen Tag und eine gute Gesundheit und kündigt die nächste Sendung an.
Mindmap
Keywords
💡Dokumenten-orientierte Datenbanken
💡Schlüssel-Wert-Datenbanken
💡Relationale Datenbanken
💡JSON-Objekte
💡Objekt-ID
💡Indexierung
💡Horizontale Skalierung
💡Transaktionen
💡NoSQL
💡Graf-Datenbanken
Highlights
Dokumente orientierte Datenbanken sind spezialisiert auf die Speicherung von Dokumenten, wie JSON-Objekte.
In dokumenten orientierten Datenbanken gibt es keine Beziehungen zwischen den Dokumenten, sie sind in sich geschlossen.
Dokumente in solchen Datenbanken können komplexe Datenstrukturen enthalten, wie JSON-Objekte in JSON-Objekten.
Es gibt keine native Unterstützung für JOIN-Operationen in dokumenten orientierten Datenbanken.
Dokumente orientierte Datenbanken sind gut in der horizontalen Skalierung.
MongoDB ist ein bekanntes Beispiel für eine dokumenten orientierte Datenbank.
MongoDB verwendet eine eindeutige ObjectId als Schlüssel für Dokumente.
Felder in MongoDB werden oft als Eigenschaften oder Felder bezeichnet.
MongoDB unterstützt die Indizierung von Feldern, um die Durchsuchbarkeit zu erhöhen.
Dokumente orientierte Datenbanken sind in der Regel nicht transaktionsorientiert, da Dokumente als Einheiten behandelt werden.
MongoDB unterstützt seit Version 4.0 Multi-Document ACID-Transaktionen.
NOSQL bedeutet 'Not Only SQL' und beinhaltet Datenbanken, die nicht nur SQL verwenden.
Die nächste Sitzung wird sich mit Graph-Datenbanken und deren Funktionsweise beschäftigen.
Die Präsentation betont die Flexibilität von dokumenten orientierten Datenbanken im Vergleich zu relationalen Datenbanken.
Dokumente orientierte Datenbanken sind ideal für Anwendungen, die semi-strukturierte oder unstrukturierte Daten speichern müssen.
Es wird erläutert, wie man in Anwendungen Beziehungen zwischen Dokumenten nachbilden kann, indem man IDs als Referenzen speichert.
Die Vorteile der dokumenten orientierten Datenbanken bei der Speicherung von variabel strukturierten Daten werden diskutiert.
Transcripts
hay que sera uns mit calmund mit white
cullum datenbanken beschäftigt und heute
gucken wir uns dokumenten orientierte
datenbanken an
gestern haben wir ja festgestellt dass
spaltenorientierte systeme also die
cullum datenbanken sehr sehr speziell
sind und dass die white können
datenbanken letztlich nichts anderes
sind als eine spezialform der key value
datenbank wir hatten gesagt eine white
cullum datenbank ist im prinzip nichts
anderes als eine zweidimensionale key
value datenbank und bei den key value
datenbanken und auch bei den white
callum datenbanken war die essenz das
ist im grunde genommen nur einen index
gibt es gibt nur einen wert oder eben
den über den ich datensätze abfragen
kann über die ich die ermitteln kann
über die ich die suchen kann
und das ist eben der ki und der wert
unterscheidet sich im jeweiligen typ ob
der eben eher atomar gelagert ist dass
man eher bei einer key value datenbank
ob das eher ein komplexerer typ ist dass
man eher bei einer weit cullum datenbank
aber wir hatten auch gesagt die trennung
ist hier relativ unscharf denn auch
diverse datenbanken können durchaus mit
komplexen typen wie objekten und airways
hantieren der springende punkt dabei ist
die werte werden nicht indexiert und es
wird immer nur der key indexiert aber
die frage ist natürlich jetzt was wenn
man das braucht also was ist wenn ich
zum beispiel komplexe abfragen habe die
eben nicht nur auf einer idee abzielen
sondern wo ich wirklich die werte
durchsuchen will wo ich ab fragen im
hinblick auf die werte ausführen möchte
und da ist natürlich eine mögliche idee
wie man dieses problem lösen könnte dass
man eine klassische sql basierte
relationale datenbank einsetzt aber das
problem bei denen ist häufig zumindest
das thema behaftet sind gewünscht ist
eben häufig dass man die daten
schimmerlos speichern kann also
schimmerlos bedeutet ja dass jeder
datensatz eine andere form haben kann
weil ich zum beispiel unterschiedliche
felder in den einzelnen datensätzen drin
habe weil die sich in ihrer struktur
nicht 100 prozentig gleichen sondern ein
bisschen geringfügig anders gelagert
sind und so weiter und das wird eben
sehr sehr schwer das in der relationalen
datenbank sozusagen zu erledigen und
dafür ist eine schamlose datenbank sehr
viel besser geeignet und genau da setzen
die sogenannten dokumenten orientierten
datenbanken an
eine dokumenten orientierte datenbank
speichert wie der name schon nahelegt
eben dokumente und mit einem dokument
ist in diesem fall in der regel ein
jason objekt gespeichert gemeint kann
natürlich auch ein xml objekt oder sowas
sein aber im prinzip eine solche
datenstruktur das heißt diese
datenbanken speichern objekt strukturen
ganz ganz wichtig dabei ist es gibt
keine beziehungen zwischen diesen
dokumenten das heißt es werden keine
joints oder ähnliches ausgeführt sondern
die dokumente sind sozusagen surf
contest die sind in sich geschlossen
die haben keine abhängigkeiten nach
außen die können natürlich unter
dokumente enthalten das liegt bei jason
ja auch nahe weil ich jason in oder weil
in jason objekte in objekte
verschachteln kann insofern das geht
schon
aber ich habe eben keine beziehung von
einem dokument also von einem jason
objekt auf ein gänzlich anderes jason
objekt und natürlich kann ich relationen
sozusagen künstlich nachbilden in dem
ich an einem jason objekt eine id eines
anderen objektes sozusagen als referenz
eintragen aber diese idee hat eben
keinerlei relevanz für die datenbank das
ist etwas was ich auf anwendungsebene
auswerten müsste und was ich dann eben
in einer anfrage explizit sozusagen
abfragen muss das bekannteste dokumenten
orientierte datenbanksystem dürfte
vermutlich db seien auch hier ist
es wieder so wie bei den key value
datenbanken dass man zunächst mal einen
eindeutigen key hat das ist ein manko db
die sogenannte objet id aber ich habe
eben zusätzlich felder beziehungsweise
spalten offensiven tb nicht
spalten heißen weil es ja in den
objekten er keine spalten gibt hier
spricht man tatsächlich eher von feldern
oder von eigenschaften oder das
besondere in monk und db speziellen oder
in dokumenten orientierten datenbanken
im allgemeinen ist eben dass diese
felder index ihr war sind dass sie
durchsuchbar sind und so weiter genauso
wie auch die key value datenbanken
skalieren auch die dokumenten
orientierten datenbanken sehr sehr gut
insbesondere auch horizontal hier spielt
natürlich auch das schaden wieder eine
große rolle und hier kommt natürlich
sehr hilfreich zum tragen dass es eben
dieses konzept von foreign relations und
eben den jeans und ähnlichem gar nicht
erst gibt deswegen sind auch die asset
kriterien häufig kein thema in einer
dokumenten orientierten datenbank weil
die dokumente an sich als elf konnten
sind das heißt per definition habe ich
eigentlich keine vorgänge die eben
mehrere dokumente gleichzeitig in einer
transaktion sozusagen betreffen aber
manchmal wäre das natürlich schon
praktisch weswegen diese dokumenten
orientierten datenbanken zumindest
einige von denen über kurz oder lang
doch auf die idee kommen zumindest
transaktionen zu unterstützen
london gb kann beispielsweise multi doch
jemand transactions seit der version 4.0
allerdings wiederum nur wenn ich das
ganze im carling betreiber viele denken
wenn sie den begriff bombardie b hören
oder wenn sie den namen mango db höheren
automatisch an sql das ganze greift aber
ein bisschen zu kurz denn alles was wir
diese woche bislang gesehen haben war no
sql neue sql heißt nämlich nicht kein
sql sondern es ist eine akronym steht
für not only sql das heißt alle diese
datenbanken die wir bisher hatten sei es
die value sei es weit kam sein
die cullum datenbanken oder seien es
jetzt eben heute die dokumenten
orientierten daten dank daten machen die
arbeiten ja alle nicht mit sql und
insofern sind das alles eben noch sql
datenbanken und ein spezieller typ von
no sql-datenbank fehlt uns noch den
werden wir uns morgen angucken da
beschäftigen wir uns nämlich morgen mal
mit den sogenannten graf datenbanken und
was sie mit denen machen können wie
gesagt das schauen wir uns dann morgen
an
für heute möchte ich mich bedanken dass
wir wieder mit dabei gewesen sein ich
hoffe euch hat das video gefallen
wenn ja würde ich mich sehr freuen wenn
ihr einen daumen nach oben da last und
falls ihr den kanal noch nicht abonniert
hat aber gerne öfter solche videos sehen
wollt abonniert doch den kanal denkt
dann daran die glocke zu aktivieren
damit ihr von youtube auch über neue
videos benachrichtigt werden
und ansonsten wünsche ich euch einen
schönen mittwoch passt gut auf euch auch
bleibt gesund und dann bis morgen
Weitere ähnliche Videos ansehen
5.0 / 5 (0 votes)