KAD Flashcards
ACID steht für?
A- Atomarität
C- Konsistenz
I- Isolation
D- Dauerhaftigkeit
Welche 4 v’s charakterisieren Big Data?
V- Volume (Menge der Daten)
V- Velocity (Geschwindigkeit mit der Daten ankommen)
V- Variety (Datenvielfalt)
V- Veracity (Datenqualität)
Welche arten von Datenspeicher/Gattung gibt es?
- Relational
- Spaltenorientiert
- Graphenorientiert
- Dokumentenorientert
Was besagt das CAP-Theorem?
Ein verteiltes System kann zwei Eigenschaften (Consistency, Availability, Partition Tolerance) gleichzeitig erfüllen jedoch nicht drei.
Was bedeutet Consistency?
Jede Operation ist nach außen hin atomar.
Was bedeutet Availability?
Ergebnis steht innerhalb einer
akzeptablen Antwortzeit zur Verfügung
Was bedeutet Partition Tolerance?
Ausfall eines Knotens führt nicht zum Ausfall des Gesamtsystems.
Wie kann eine höhere Verfügbarkeit bei relationalen DB erreicht werden?
Auflockern von ACID zu BASE.
Basically Available, Soft State, Eventual Consistent
Wie kann eine Datenbank fragmentiert werden?
- Horizontal
- Vertikal
Was wird unter Sharding verstanden?
Aufteilung der Daten in unabhängige Teile, die jeweils von einer
eigenen Serverinstanz verwaltet wird.
Vorteile von sharding?
- Skalierbarkeit
- Ausfallsicherheit
- Geografische Verteilung
- Rolling Upgrades
Nachteil Sharding?
- Zugriff über andere Kriterien als Aufteilungskriterien machen
Aufwand unverhältnismäßig hoch
-> Anfrage geht an alle Server
Welche Partitionsstrategie gibt es?
- Aufteilung durch Shard-Key
- Erstellen von table hierachy
- Identifikation von transaktions-intensiven Tabellen
Vorteile der Schemalosigkeit?
Unterstützung agiler Softwareentwicklung.
CI&CD
Agiles Datenbanksystem
Was sind Metadaten?
Daten über Daten
Was ist ein Schema?
Metadaten über die Struktur.
Welche Form von Schemalosen Daten kennst du?
- JSON
- XML
Abkürzung NoSQL?
Not Only SQL
NoSQL-Datenbanken besitzen mehrere Merkmale, die sie von relationalen
Datenbanksystemen unterscheiden, welche?
– Verwendung REST
– BASE statt ACID
– Horizontale Skalierung, verteilte Datenhaltung
– Schemafreiheit
In wie können NoSQL Datenbanken klassifiziert werden?
– Key-Value-Stores
– Dokumentenorientierte Datenbanken
– Graphdatenbanken
– Spaltenorientiert / Column Stores
Was beschreibt das Design Pattern Polyglott?
Verwendung verschiedener Datenmodell (relational, spaltenorientiert,
dokumentenorientiert, etc)
Wie kann in einer MongoDB Aggregationen durchgeführt werden?
- Aggregation Framework
- Map-Reduce
- Singel Purpose Aggregation Operations
Aus welchen 3 Phasen besteht ein Map Reduce?
- Map
- Shuffle - Gruppierung der Keys
- Reduce
Was sind die Ziele eines Replica Sets?
- Redundanz
- Verfügbarkeit
- Erhöhung Lese-Kapazität
Wleche CAP-Eigenschaften hat eine Relationale Datenbanksysteme DNS Bank/Finanz NoSQL Cloud?
Relationale Datenbanksysteme -> CA DNS -> AP Bank/Finanz -> CP NoSQL -> AP Cloud -> AP
Welche drei arten von Referenzierungen gibt es in einer MongoDB?
- komplettes Dokument wird gespeichert.
- manuelle Referenz. Referenzierung durch _id-Feld
- DBRef. Referenzierung durch Collectionname und _id-Feld
Welche Read Preference Modes gibt es bei Replica Sets?
- Primary
- PrimaryPreferred
- Secondary
- SecondaryPreferred
- Nearest
Was ist der Primary Mode?
– Lesen beim Primary Node
– Falls dieser nicht verfügbar: Fehler oder Exception
Was ist der PrimaryPreferred Mode?
– Lesen beim Primary Node
– Falls dieser nicht verfügbar: Lesen bei Secondary Node
– Verzögerung beim Lesen > maxStalenessSeconds => Client wird nicht mehr verwendet
Was ist Secondary Mode?
– Lesen beim Secondary Node
– Falls keiner verfügbar: Fehler
– Ebenfalls Verwendung: maxStalenessSeconds
Was ist SecondaryPreferred Mode?
– Lesen beim Secondary Node
– Falls keiner verfügbar: Lesen beim Primary Node
Was ist der Nearest Mode?
– Lesen beim Knoten mit Node geringer Latenzzeit
– Primary und Secondary Nodes werden gleich verwendet
Nenne alle Sharding verfahren bei der MongoDB?
- Ascending Shard Keys
- Hash Based Sharding
- Range Based Sharding
- Location Shard Key
- Manuel Sharding
Was sind Ascending Shard Keys und ihre Eigenschaften?
– Verwendung von ObjectId, o.ä.
– Entspricht ungefähr Datum
Eigenschaften
– Neue Dokumente werden im gleichen Chunk
gespeichert
– D.h. alle Schreibzugriffe werden in gleichen
Shard durchgeführt
– Nur ein Shard wächst
Was sind HashShard Keys?
– Bildung von Chunks durch Verwendung einer Hashfunktion
– „Zufällige“ Verteilung
– Gute Verteilung der Daten und Anfragen
Was ist Range Based Sharding?
- Bildung von Chunks durch numerische Bereiche
Was sind Location Shard Keys?
– Verwendung IP, Adresse o.ä.