Einführung in NoSQL-Datenbanken

ICT-Module Bildungszentrum Zürichsee
9 Aug 202209:03

Summary

TLDRDas Skript diskutiert neue Trends in der Datenbank-Technologie, insbesondere NoSQL-Datenbanken im Vergleich zu relationalen Systemen. Es hebt die Vorteile von NoSQL hervor, wie die Verwaltung unstrukturierter Daten und die Flexibilität im Datenmodell. MongoDB wird als Beispiel für eine NoSQL-Datenbank vorgestellt, die Dokumente speichert und skaliert. Es wird auch auf ihre verschiedenen Bereitstellungstypen eingegangen: Standalone, Replikat und Sharding für unterschiedliche Anwendungsfälle.

Takeaways

  • 🌐 Neue Datenbanktypen auf dem Markt sind z.B. PULS, Kino Caches, Objekt-Datenbanken, Dokumentenspeicher, Graphen und Multimedia-Datenbanken.
  • 💾 Risikobeispiel für Anbieter von neuen NoSQL-Datenbanken sind große Softwaredienstleister wie Microsoft und Oracle.
  • 🔍 NoSQL-Datenbanken speichern Daten oft als Schlüsselwörter, Dokumente, Graphen, Objekte und nicht in Tabellen.
  • 📚 Typische Anwendungen von NoSQL-Datenbanken sind z.B. Lagerverwaltung und Analysedatenbanken, die flexible Strukturen benötigen.
  • 📊 Die Unterscheidung zwischen relationalen und NoSQL-Datenbankmanagementsystemen liegt in der Art der Datenspeicherung und -strukturierung.
  • 📈 Relationale Datenbanken eignen sich, wenn Daten strukturiert sind und sich kaum ändern werden.
  • 🔑 Relationale Datenbanken verwenden ein Datenmodell, bei dem Daten in Tabellen gespeichert und in Beziehung stehen.
  • 🔄 NoSQL-Datenbanken ermöglichen eine flexiblere Datenspeicherung in verschiedenen Formaten, ohne Notwendigkeit einer Anpassung der Datenbankstruktur.
  • 📊 NoSQL-Datenbanken unterstützen horizontale Skalierung, im Gegensatz zu relationalen Datenbanken, die nur vertikal skaliert werden können.
  • 🌟 MongoDB ist ein Beispiel für eine NoSQL-Datenbank, die Daten in Dokumenten speichert und über ein dynamisches Schema verfügt.
  • 🔑 MongoDB ist sowohl in einer kostenlosen Community Edition für Entwickler als auch in einer kostenpflichtigen Enterprise Edition erhältlich.

Q & A

  • Was sind Beispiele für neue Datenbanktypen auf dem Markt?

    -Beispiele für neue Datenbanktypen sind Pulse, Kino Caches, Objekt-Datenbanken, Dokumentenspeicher, Graphen und Multimedia-Datenbanken.

  • Welche Risiken müssen bei der Auswahl eines neuen Datenbankanbieters berücksichtigt werden?

    -Bei der Auswahl eines neuen Datenbankanbieters müssen Risiken wie die Größe des Anbieters (große Softwaredienstleister wie Microsoft oder Oracle vs. kleinere Player) und die allgemeine Verfügbarkeit und Unterstützung berücksichtigt werden.

  • Wie werden Daten in NoSQL-Datenbanken im Vergleich zu relationalen Datenbanken gespeichert?

    -In NoSQL-Datenbanken werden Daten oft als Schlüsselwörter, Dokumente, Graphen, Objekte und nicht in Tabellen gespeichert, während relationale Datenbanken Daten in Tabellen mit Zeilen und Spalten speichern.

  • Welche Anwendungsbeispiel für NoSQL-Datenbanken wurden im Skript genannt?

    -Ein Anwendungsbeispiel für NoSQL-Datenbanken ist die Lagerverwaltung bei Chips, wo verschiedene Produkte mit unterschiedlichen Attributen verwaltet werden müssen.

  • Wann sind relationale Datenbanken am besten geeignet?

    -Relationale Datenbanken sind am besten geeignet, wenn die Daten strukturiert sind oder strukturierte gespeichert werden sollen und sich die Struktur kaum ändert.

  • Was ist der Hauptunterschied zwischen relationalen und NoSQL-Datenbankmanagementsystemen?

    -Der Hauptunterschied liegt im Datenmodell: Relationale Datenbanken verwenden ein Schema, in dem die Datenstruktur vorgegeben ist, während NoSQL-Datenbanken entweder unstrukturiert oder durch ein dynamisches Schema gespeichert werden können.

  • Wie wird die Speicherung von Daten in relationalen Datenbanken beschrieben?

    -In relationalen Datenbanken wird die Speicherung von Daten in Form von Tabellen mit Zeilen und Spalten erwartet, wobei Daten in Beziehung zueinander gespeichert werden können.

  • Was bedeuten die verschiedenen Normalisierungsstufen in relationalen Datenbanken?

    -Die verschiedenen Normalisierungsstufen in relationalen Datenbanken dienen dazu, Redundanzen oder Anomalien zu entfernen, um die Datenintegrität zu gewährleisten.

  • Wie können relationale Datenbanken skaliert werden?

    -Relationale Datenbanken können sowohl vertikal als auch horizontal skaliert werden, wobei die horizontale Skalierung in der Regel auf Anwendungsebene und durch Sharding realisiert wird.

  • Was sind die wichtigsten Eigenschaften von MongoDB, der NoSQL-Datenbank, die im Skript erwähnt wurde?

    -MongoDB ist eine NoSQL-Datenbank, die Daten in Dokumenten speichert und über ein dynamisches Schema verfügt. Sie unterstützt eine umfangreiche Abfragesprache, Aggregationsfunktionen und Transaktionen mit einzelnen oder mehreren Dokumenten.

  • Wie viele Ausführungen von MongoDB gibt es und was unterscheidet sie?

    -Es gibt zwei Ausführungen von MongoDB: Die Community Edition, die kostenlos und für Entwickler gedacht ist, und die Enterprise Edition, die auf der Community Edition aufbaut und zusätzliche Funktionen wie Speicherung im Speicher, Verschlüsselung von Daten und Systemen bietet.

Outlines

00:00

📊 Einführung in NoSQL-Datenbanken und deren Anwendungsbeispiele

Der erste Abschnitt beginnt mit einer Einführung in die Welt der NoSQL-Datenbanken. Es werden neue Arten von Datenbanken wie Puls, Kino-Caches, Objekt-Datenbanken, Dokumenten-Stores, Graphen und Multimedia-Datenbanken erwähnt. Der Text hebt hervor, dass verschiedene Anbieter wie Microsoft und Oracle diese Technologien integrieren, während kleinere Player wie Redis und MongoDB ebenfalls eine wichtige Rolle spielen. NoSQL-Datenbanken speichern Daten in unterschiedlichen Formaten wie Schlüssel-Wert-Paaren, Dokumenten oder Objekten, anstatt sie in Tabellen zu organisieren. Typische Anwendungsbeispiele umfassen Lagerverwaltungssysteme und Analyseplattformen, bei denen flexible Strukturen benötigt werden. Es wird betont, dass relationale und NoSQL-Datenbanken in verschiedenen Szenarien eingesetzt werden, je nach Datenstruktur und Anwendungsanforderungen.

05:02

🔍 Vergleich von relationalen und NoSQL-Datenbanken

Im zweiten Abschnitt wird ein detaillierter Vergleich zwischen relationalen und NoSQL-Datenbanken dargestellt. Relationale Datenbanken sind ideal, wenn Daten strukturiert sind und in Tabellenform gespeichert werden sollen. Sie ermöglichen es, Beziehungen zwischen den Daten abzubilden, wie z.B. bei einer Universitätsdatenbank mit Studenten, Kursen und Noten. NoSQL-Datenbanken hingegen lösen das Problem der Speicherung unstrukturierter oder dynamischer Daten, da sie flexible Schema-Strukturen bieten. Die Unterschiede in der Speicherung, Skalierung und Datenmodellierung werden ebenfalls beleuchtet. Während relationale Datenbanken typischerweise vertikal skaliert werden, können NoSQL-Datenbanken sowohl vertikal als auch horizontal skaliert werden, was sie besonders für Big Data-Anwendungen geeignet macht.

Mindmap

Keywords

💡NoSQL-Datenbanken

NoSQL-Datenbanken sind Datenbanksysteme, die nicht auf relationalen Datenbanken basieren. Sie ermöglichen die flexible Speicherung von unstrukturierten oder semi-strukturierten Daten in verschiedenen Formaten wie Dokumenten, Grafen oder Schlüssel-Werte-Paaren. Im Video werden Beispiele wie MongoDB, Redis und andere genannt, die in Szenarien verwendet werden, in denen ein dynamisches Schema erforderlich ist.

💡Relationale Datenbanken

Relationale Datenbanken speichern Daten in Tabellen, die in Beziehung zueinander stehen. Sie eignen sich besonders gut für strukturierte Daten, bei denen sich die Datenstruktur selten ändert. Im Video wird ein Beispiel einer Universität genannt, bei der Studierende, Kurse und Noten in separaten Tabellen gespeichert werden, die miteinander verknüpft sind.

💡Dynamisches Schema

Ein dynamisches Schema erlaubt es, die Struktur der Daten flexibel zu gestalten, ohne an ein festes Schema gebunden zu sein. Dies ist ein Vorteil von NoSQL-Datenbanken, da es ermöglicht, Daten mit variierenden Attributen zu speichern. Im Video wird darauf eingegangen, dass solche Schemata bei experimentellen Anwendungen nützlich sind.

💡Dokumentenbasierte Datenbanken

Dokumentenbasierte Datenbanken wie MongoDB speichern Daten in Dokumenten, die JSON-ähnliche Formate haben. Diese bieten eine flexible Struktur und ermöglichen es, Daten mit unterschiedlichen Attributen in einem flexiblen Schema zu verwalten. Im Video wird MongoDB als Beispiel für eine dokumentenbasierte NoSQL-Datenbank genannt.

💡Grafdatenbanken

Grafdatenbanken speichern Daten in Knoten und Kanten, die die Beziehungen zwischen den Knoten darstellen. Sie sind besonders nützlich für Anwendungen, bei denen es auf die Abbildung von Beziehungen ankommt, wie z.B. bei sozialen Netzwerken. Im Video werden sie als eine von mehreren NoSQL-Varianten erwähnt.

💡Horizontale Skalierung

Horizontale Skalierung bezeichnet das Hinzufügen weiterer Server, um die Leistung einer Datenbank zu erhöhen. Im Gegensatz zur vertikalen Skalierung, bei der die Kapazität eines einzelnen Servers erhöht wird, ermöglicht die horizontale Skalierung eine verteilte Datenverarbeitung. NoSQL-Datenbanken wie MongoDB unterstützen sowohl horizontale als auch vertikale Skalierung, insbesondere bei Big Data-Anwendungen, wie im Video erwähnt.

💡Aggregation

Aggregation bezieht sich auf die Verarbeitung und Analyse von Daten aus verschiedenen Quellen, um bestimmte Erkenntnisse zu gewinnen. MongoDB bietet z.B. Aggregationsfunktionen, um Daten zu filtern, zu sortieren oder zusammenzufassen. Im Video wird erklärt, dass diese Funktion nützlich ist, um komplexe Datenabfragen durchzuführen.

💡Cluster

Ein Cluster besteht aus mehreren Servern (Knoten), die zusammenarbeiten, um Daten zu speichern und zu verarbeiten. Diese Architektur verbessert die Verfügbarkeit und Skalierbarkeit von Datenbanken. Im Video wird erläutert, dass MongoDB in einem Cluster eingerichtet werden kann, um hohe Leistung und Ausfallsicherheit zu gewährleisten.

💡Community Edition

Die Community Edition von MongoDB ist eine kostenlose Version der Datenbank, die für Entwickler und zum Sammeln von Erfahrungen in der Praxis gedacht ist. Sie wird im Video als eine von zwei Versionen von MongoDB erwähnt, wobei die Enterprise Edition zusätzliche Funktionen wie Verschlüsselung und In-Memory-Speicherung bietet.

💡Replikation

Replikation bezeichnet den Prozess, bei dem Daten auf mehrere Server kopiert werden, um die Verfügbarkeit zu erhöhen und Datenverluste zu vermeiden. MongoDB unterstützt die Replikation, indem es Daten über mehrere Knoten verteilt. Im Video wird die Replikation als eine der drei Betriebsarten von MongoDB beschrieben, die für hohe Verfügbarkeit sorgt.

Highlights

Neue Qualitäten auf dem Markt sind zum Beispiel Puls oder Kino Caches.

Objekt-Datenbanken, Dokumentenspeicher, Graphen und Multimedia-Datenbanken als Beispiele genannt.

Risiken bei der Auswahl von neuen Call-Datenbanken sind zu nennen.

Anbieter von neuen Call-Datenbanken sind große Software-Dienstleister wie Microsoft und Oracle.

Kleine Player im Markt sind 'Reddy's Mango' und 'Karl Spieß'.

Daten werden in neuen Call-Datenbanken als Schlüsselwörter, Dokumente, Graphen, Objekte und nicht als Tabellen gespeichert.

Typische Anwendungsbeispiel für neue Call-Datenbank ist Lagerverwaltung bei Chips mit unterschiedlichen Produkten und Attributen.

Analyse-Datenbanken ziehen Daten aus verschiedenen Quellen heran und benötigen flexible Strukturen.

Relationale Datenbankmanagementsysteme unterscheiden sich grundlegend vom NoSQL.

Relationale Datenbanken eignen sich, wenn Daten strukturiert sind und sich kaum ändern.

Speicherung von Daten in relationalen Datenbanken in Form von Tabellen mit Zeilen und Spalten.

Beispiel für eine universitäre Bank aus drei Tabellen: Student, Kurse, Noten.

Neue Call-Datenbanken lösen das Problem der Speicherung von unstrukturierten oder halbstrukturierten Daten.

Dynamisches Schema bei neuen Call-Datenbanken erlaubt Abweichungen vom vorgegebenen Schema.

Übersicht der wichtigsten Features von relationalen Datenbanken gegenüber NoSQL.

Relationale Datenbanken haben ein Datenmodell, bei dem Daten in Tabellen gespeichert und in Beziehung stehen.

Neue Call-Datenbanken speichern Daten in verschiedenen Formaten wie Dokumente, Graphen, Schlüssel-Wert-Paare.

Normalisierungsstufen in relationalen Datenbanken zur Vermeidung von Redundanzen und Anomalien.

Relationale Datenbanken können vertikal skaliert werden, NoSQL-Datenbanken sowohl vertikal als auch horizontal.

MongoDB als ausgewählte NoSQL-Datenbank speichert Daten in Dokumenten.

MongoDB hat eine umfangreiche Abfragesprache und unterstützt Aggregationsfunktionen.

MongoDB unterstützt Transaktionen mit einzelnen oder mehreren Dokumenten.

MongoDB kann in einem Cluster konfiguriert werden, der aus mindestens drei Knoten besteht.

MongoDB ist in zwei Ausführungen erhältlich: Community Edition (kostenlos) und Enterprise Edition mit zusätzlichen Funktionen.

Mögliche Plantypen bei MongoDB: Standalone, Replikat und Sharding für hohe Verfügbarkeit und Durchsatz.

Transcripts

play00:02

beginnen wir mit der ersten frage welche

play00:06

neues kultur- und beispiele es auf dem

play00:09

markt gibt beispiele von neues

play00:11

qualitäten sind zum beispiel puls oder

play00:15

kino caches dann objekt datenbanken

play00:19

dokument stores grafen und multimedia

play00:24

datenbank um ein paar beispiele hast du

play00:27

risiken musste zu nennen

play00:29

anbieter von neues call datenbanken sind

play00:33

integrierten große software

play00:35

dienstleister die

play00:37

microsoft mit ihren produkten oder

play00:40

oracle

play00:42

[Musik]

play00:44

perspektive eines und dann kleine

play00:48

playern in anführungsstrichen die

play00:50

reddy's mango die wie karl spiehs wie

play00:55

sie schon in der auflistung der neuesten

play00:59

feststellen konnten werden in der regel

play01:02

die daten ios call datenbanken als

play01:06

schlüsselwörter oder dokumente grafen

play01:09

objekte und nicht als tabellen

play01:12

gespeichert typische anwendungsbeispiele

play01:15

von neues board datenbank sehen zum

play01:17

beispiel in lagerverwaltung bei chips

play01:20

bei denen zum beispiel

play01:22

unterschiedliche produkte mit

play01:24

unterschiedlichen attributen gemanagt

play01:27

verwaltet werden müssen und diese

play01:30

einfach eine flexible struktur erfolgen

play01:33

oder analysen datenbanken die daten aus

play01:37

verschiedenen quellen heranziehen und

play01:40

auch hier flexible strukturen zur

play01:42

streichung bestätigen

play01:44

in diesem modul rechtlich zumindest in

play01:47

der einführung zweite schiene datenbank

play01:50

managementsysteme unterscheiden nämlich

play01:53

das relationale datenbank

play01:55

managementsystem vom no sql grund dafür

play01:59

ist dass sie in der regel genau diese

play02:02

zwei technologien die in vier modulen

play02:06

demonstriert und deren grundlagen

play02:09

vermittelt bekommen und ein weiterer

play02:12

grund ist dass sie mit grösster

play02:14

wahrscheinlichkeit auch im lehrbetrieb

play02:16

mit relationalen respektive neues call

play02:19

datenbanken zu tun haben werden gehen

play02:23

wir der frage nach wann werden

play02:25

relationale datenbanken für beendet

play02:29

relationale datenbanken lohnen sich dann

play02:31

wenn ihre daten strukturiert sind oder

play02:36

strukturierte gespeichert werden sollen

play02:38

und vor anderen struktur sich kaum

play02:41

ändern wird und grundsätzlich die

play02:44

speicherung der daten eben in form von

play02:47

tabellen respektive zahlen spalten

play02:49

erwarten verloren sich relationale

play02:52

datenbanken wenn sie die daten in

play02:55

beziehung zueinander

play02:57

darstellen respektive ausgeben oder

play03:00

filtern möchten als beispiel soll eine

play03:04

uni gartenbank herangezogen werden

play03:06

welche jetzt im einfachsten fall aus

play03:09

drei tabellen besteht nämlich student

play03:12

kurse um noten und diese drei tabellen

play03:16

jeweils über eine kurse die in beziehung

play03:20

gesetzt werden daneben beiden neuesten

play03:22

daten

play03:24

jetzt werden sie das problem der

play03:27

speicher von unstrukturierten oder

play03:30

optimierten daten lösen möchten das

play03:33

heißt sie möchten sich nicht in das enge

play03:36

korsett des vorgegebenen schema pressen

play03:39

oder wenn sie einen client von einem

play03:44

stand schema im kochen möchten was bei

play03:47

experimentellen anwendung häufig der

play03:50

fall ist in diesem fall kommt ein

play03:53

dynamisch schema zum zug wo sie quasi

play03:56

vom schema vorgaben haben aber auch

play03:59

davon abweichen können zum abschluss

play04:02

eine überstellung der wichtigsten

play04:05

features von relationalen datenbanken

play04:07

gegenüber noch sql datenbanken zum einen

play04:11

eben das schema das bei der relationalen

play04:15

datenbank vorgibt in welcher struktur

play04:18

die daten gespeichert werden sollen da

play04:21

geht bei einer sql datenbank werden die

play04:24

daten entweder unstrukturiert oder durch

play04:27

ein dynamisches schemann als

play04:29

strukturiert gespeichert und sie können

play04:32

von diesem schema jederzeit abweichen

play04:35

dann bei den relationalen datenbanken

play04:38

gibt es ein datenmodell und wenn die

play04:42

daten in tabellen gespeichert werden und

play04:44

diese in beziehung stehen kann es sein

play04:46

dass wenn sie ein datums

play04:49

wertveränderung dass diese änderung

play04:52

einen einfluss auf daten in anderen

play04:56

tabellen haben kann dagegen bei neue

play04:59

skoda datenbanken werden die daten in

play05:02

verschiedenen formaten

play05:03

abhängig vom produkt gespeichert

play05:07

mögliche formate sind dokumente grafen

play05:11

schlüsselwerte paare oder sehr große

play05:15

datenfelder und wie ich schon vorher

play05:18

erwähnt muss die datenbank nicht

play05:21

angepasst werden sondern umgekehrt die

play05:24

daten bauen passt sich kann die natur

play05:26

der daten die daherkommen und

play05:28

gespeichert werden dann bei relationalen

play05:31

datenbanken gibt es verschiedene

play05:34

normalisierung stufen um

play05:37

redundanzen oder anomalien zu entfernen

play05:40

bei der us-soldaten banken legt der

play05:43

focus button daten und diese können den

play05:46

organisiert sein zu guter letzt können

play05:49

relationale datenbanken vertikal

play05:53

skaliert werden dagegen neues von

play05:55

datenbanken vertikal und horizontal

play05:58

und haben wir für dieses modul eine

play06:02

neues call datenbank ausgewählt das ist

play06:05

monti die eine der wichtigsten

play06:07

eigenschaften von die babys das

play06:10

sind die daten in dokumenten speichert

play06:13

und möchte ihnen einige eigenschaften

play06:16

von diesem produkt auf zählen zu meinen

play06:20

das dynamische schema es ist ein

play06:23

flexibles schema um mit abweichungen in

play06:26

velden das heißt finanzen attribute

play06:29

verlangt ferner wurde wie in eine

play06:33

umfangreiche abfragesprache um daten

play06:37

abzufragen in den jeglicher couleur und

play06:40

schattierung auf und enthält aggregation

play06:43

funktionen um daten nach wünschen und

play06:47

bedarf zu probieren und filter zu können

play06:50

zusätzlich unterstützt die

play06:53

transaktion ob es mit einzelnen oder

play06:56

mehreren dokumenten geschehen beide

play06:58

varianten werden unterstützt zudem kann

play07:02

man gut eingesetzt werden wenn sie hohe

play07:05

leistungen von einer datenbank warten

play07:07

einerseits durch die verschieden art von

play07:11

indexierung und den angebeteten modell

play07:13

kann ich ja hofe fügt bar in dem simon

play07:17

als cluster konfigurieren ein cluster

play07:21

besteht mindestens aus drei knoten und

play07:24

sich vertikal und horizontal

play07:28

skalieren vor allem wenn es um das thema

play07:31

big data geht mongodb ist in zwei

play07:34

ausführungen erhältlich die eine ist im

play07:38

community edition

play07:39

dies ist kostenlos und für entwickler

play07:43

gedacht welche praktische erfahrungen

play07:45

sammeln möchten wo die zweite edition

play07:48

ist die enterprise edition welche auch

play07:50

die community edition aufbaut und

play07:53

zusätzliche funktionen enthält wie sich

play07:56

die memory speicherung verschlüsselung

play07:58

von daten und systeme war ich komme zur

play08:02

letzten slide und schließe diese mieter

play08:04

frage ab welche die planen typen bei

play08:08

mango die in unterschieden werden es

play08:11

gibt drei stück davon zuerst mal die

play08:13

stand alone variante die installation

play08:16

fühlt sich arbeiten einen computer und

play08:19

ist für entwicklungs und versuch zwecke

play08:22

gedacht die zweite variante ist das

play08:24

replikat dabei dass sich um eine gruppe

play08:26

von prozessen oder selben die

play08:29

zusammenarbeiten und für eine hohe

play08:31

verfügbarkeit sorgen dabei werden daten

play08:35

kopien auf mehrere server verteilt

play08:37

mindestens drei um ein cluster zu bilden

play08:41

die letzte variante ist diese variante

play08:44

nur die daten für anwendungen verteilt

play08:46

gespeichert werden um einen hohen

play08:49

datendurchsatz mit großen datenmenge zu

play08:52

erzielen ich bin am ende der

play08:54

präsentation angekommen und wünsche

play08:56

ihnen viel erfolg bei ihren weiteren

play08:58

reise mit morgi

Rate This

5.0 / 5 (0 votes)

الوسوم ذات الصلة
DatenbankenNoSQLMarktTechnologieBeispielLagerverwaltungDatenstrukturMicrosoftOracleMongoDB
هل تحتاج إلى تلخيص باللغة الإنجليزية؟