KAD Flashcards

1
Q

ACID steht für?

A

A- Atomarität
C- Konsistenz
I- Isolation
D- Dauerhaftigkeit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Welche 4 v’s charakterisieren Big Data?

A

V- Volume (Menge der Daten)
V- Velocity (Geschwindigkeit mit der Daten ankommen)
V- Variety (Datenvielfalt)
V- Veracity (Datenqualität)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Welche arten von Datenspeicher/Gattung gibt es?

A
  • Relational
  • Spaltenorientiert
  • Graphenorientiert
  • Dokumentenorientert
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was besagt das CAP-Theorem?

A

Ein verteiltes System kann zwei Eigenschaften (Consistency, Availability, Partition Tolerance) gleichzeitig erfüllen jedoch nicht drei.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Was bedeutet Consistency?

A

Jede Operation ist nach außen hin atomar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was bedeutet Availability?

A

Ergebnis steht innerhalb einer

akzeptablen Antwortzeit zur Verfügung

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was bedeutet Partition Tolerance?

A

Ausfall eines Knotens führt nicht zum Ausfall des Gesamtsystems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wie kann eine höhere Verfügbarkeit bei relationalen DB erreicht werden?

A

Auflockern von ACID zu BASE.

Basically Available, Soft State, Eventual Consistent

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Wie kann eine Datenbank fragmentiert werden?

A
  • Horizontal

- Vertikal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Was wird unter Sharding verstanden?

A

Aufteilung der Daten in unabhängige Teile, die jeweils von einer
eigenen Serverinstanz verwaltet wird.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Vorteile von sharding?

A
  • Skalierbarkeit
  • Ausfallsicherheit
  • Geografische Verteilung
  • Rolling Upgrades
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Nachteil Sharding?

A
  • Zugriff über andere Kriterien als Aufteilungskriterien machen
    Aufwand unverhältnismäßig hoch
    -> Anfrage geht an alle Server
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Welche Partitionsstrategie gibt es?

A
  • Aufteilung durch Shard-Key
  • Erstellen von table hierachy
  • Identifikation von transaktions-intensiven Tabellen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Vorteile der Schemalosigkeit?

A

Unterstützung agiler Softwareentwicklung.
CI&CD
Agiles Datenbanksystem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Was sind Metadaten?

A

Daten über Daten

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Was ist ein Schema?

A

Metadaten über die Struktur.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Welche Form von Schemalosen Daten kennst du?

A
  • JSON

- XML

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Abkürzung NoSQL?

A

Not Only SQL

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

NoSQL-Datenbanken besitzen mehrere Merkmale, die sie von relationalen
Datenbanksystemen unterscheiden, welche?

A

– Verwendung REST
– BASE statt ACID
– Horizontale Skalierung, verteilte Datenhaltung
– Schemafreiheit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

In wie können NoSQL Datenbanken klassifiziert werden?

A

– Key-Value-Stores
– Dokumentenorientierte Datenbanken
– Graphdatenbanken
– Spaltenorientiert / Column Stores

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Was beschreibt das Design Pattern Polyglott?

A

Verwendung verschiedener Datenmodell (relational, spaltenorientiert,
dokumentenorientiert, etc)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Wie kann in einer MongoDB Aggregationen durchgeführt werden?

A
  • Aggregation Framework
  • Map-Reduce
  • Singel Purpose Aggregation Operations
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Aus welchen 3 Phasen besteht ein Map Reduce?

A
  1. Map
  2. Shuffle - Gruppierung der Keys
  3. Reduce
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Was sind die Ziele eines Replica Sets?

A
  • Redundanz
  • Verfügbarkeit
  • Erhöhung Lese-Kapazität
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
``` Wleche CAP-Eigenschaften hat eine Relationale Datenbanksysteme DNS Bank/Finanz NoSQL Cloud? ```
``` Relationale Datenbanksysteme -> CA DNS -> AP Bank/Finanz -> CP NoSQL -> AP Cloud -> AP ```
26
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
27
Welche Read Preference Modes gibt es bei Replica Sets?
- Primary - PrimaryPreferred - Secondary - SecondaryPreferred - Nearest
28
Was ist der Primary Mode?
– Lesen beim Primary Node | – Falls dieser nicht verfügbar: Fehler oder Exception
29
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
30
Was ist Secondary Mode?
– Lesen beim Secondary Node – Falls keiner verfügbar: Fehler – Ebenfalls Verwendung: maxStalenessSeconds
31
Was ist SecondaryPreferred Mode?
– Lesen beim Secondary Node | – Falls keiner verfügbar: Lesen beim Primary Node
32
Was ist der Nearest Mode?
– Lesen beim Knoten mit Node geringer Latenzzeit | – Primary und Secondary Nodes werden gleich verwendet
33
Nenne alle Sharding verfahren bei der MongoDB?
- Ascending Shard Keys - Hash Based Sharding - Range Based Sharding - Location Shard Key - Manuel Sharding
34
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
35
Was sind HashShard Keys?
– Bildung von Chunks durch Verwendung einer Hashfunktion – „Zufällige“ Verteilung – Gute Verteilung der Daten und Anfragen
36
Was ist Range Based Sharding?
- Bildung von Chunks durch numerische Bereiche
37
Was sind Location Shard Keys?
– Verwendung IP, Adresse o.ä.
38
Wie nennt sich die Anfragesprache bei Noe4J?
Cypher.
39
Was versteht man unter der Bacon Numer?
Länge der kürzesten Kette von Schauspielern, die gemeinsam in einem Film mitspielen.
40
Was sind Eigenschaften der Time Series Database?
- Daten erscheinen Chronologisch - Append-Only - eine Zeile = eine Messung
41
Anforderungen an eine Time Series Datenbank?
- Skalierbarkeit (Big Data) - Hohe Schreibleistung - Analyse / Aggregierung der Daten
42
Was ist Complex Event Processing?
- Auswertung von Ereignisströmen zur Erkennung von voneinander abhängigen Ereignissen - Analyse von Echtzeitdaten.
43
Was ist OLTP (Online Transaction Processing)?
- Speicherung der Transaktion eines Geschäfts - Operative Tätigkeit eines Unternehmens - Zeilenorientierte Speicherung sinnvoll
44
Was ist OLAP (Online Analytical Prosessing)?
- Durchführung komplexer Analysevorhaben - Entscheidungsunterstützendes Analyseergebnis - Data Warehouse - spaltenorientierte Speicherung sinnvoll
45
Row vs. Colum | Hinzufügen eines Attributs
- RS: Verschieben jedes Tupels | - CS: Hinzufügen einer Datei
46
Row vs. Colum | Hinzufügen eines Tupels
- RS: Anhängen am Ende der Tabelle | - CS: Öffnen und Schreiben in jeder Datei
47
Row vs. Colum | Update eines Tupels
- RS: Ändern des Wertes | - CS: Öffnen, Suchen und Schreiben einer Datei
48
Row vs. Colum | Auslesen eines Tupels
- RS: Lesen des betreffenden Blocks | - CS: Lesen aller Dateien
49
Row vs. Colum | Auslesen vieler Datensätze
- RS: Lesen der gesamten Tabelle | - CS: Nur Lesen der Dateien für die relevanten Spalten
50
Welche Datenkompressionsverfahren gibt es?
- Dictionary Encoding - Sparse Encoding - Lauflängenkodierung - Delta Encoding - Bit-Vector Encoding - Präfix Encoding
51
Was ist Dictionary Encoding?
- Ersetzung häufig erscheinender Werte durch kürzere Symbole (index) Bundesland mappen auf 1 bis 17
52
Was ist Spares Encoding?
- Basierend auf Dictionary Encoding | - Weglassen des am häufigsten auftretenden Identifikator
53
Was ist Lauflängenkodierung?
- Bei Wiederholung eines Wertes wird Wertepaar (Wert und Wertanzahl) gespeichert - aaaa wird auf a[4] komprimiert
54
Was ist Delta Encoding?
- Unterschiede (deltas) zum vorherigen Attribut werden gespeichert - Speicherung der Position und auftreten
55
Was ist die Bit-Vector Encoding?
- Speicherung häufig auftretender Attribute durch Bit-Vektor
56
Was ist das Präfix Encoding?
- Häufig auftretende Präfixe werden nur einmal gespeichert
57
Wieso finden in spaltenorientierten Datenbanksystemen häufiger Kompressionsverfahren Anwendung?
- Jede Spalte kann anders komprimiert werden
58
Was bedeutet Materialisierung?
_ Zusammensetzung der selektierten Attribute zu Tupel
59
Was bedeutet Early Materialization?
- Bei Column Stores ist Dekomprimierung notwendig | -
60
Was bedeutet Late Materialization?
– Vermeidung der Tupelrekonstruktion so lange wie möglich | – Bit-Vektoren als Zwischenergebnisse in Column Stores
61
Was sind Eigeschaften der Hauptspeicherdatenbanken?
- Spezielle Indexstrukturen im Hauptspeicher - Mehrbenutzersynchronisation (Für Zugriffe weniger Zeit benötigen) - Verarbeitung einer ganzen Gruppe von Transaktionen: „group commit“ - Kompaktifizierung der Datenbank - Working Set (Bruchteil der Daten sind aktiv)
62
Was sind Memtables und SStables?
MemTables: Schreibzugriffe werden Hauptspeicher durchgeführt Sorted Data Files - Speicherung des Memtables (flush) - Daten werden in Sorted Files gespeichert - Immutable, nur zum lesen
63
Was versteht man unter Compaction?
- Datenbereinigung - Löschen veralteter und gelöschter Daten - wird im Hintergrund durchgeführt
64
Was macht der Bloom Filter?
- Probabilistische Methode - Prüft ob der Artikel im DataSet enthalten ist oder nicht. - Ziel nicht alle Sets durchlaufen müssen.
65
Wie funktioniert ein Bloom Filter?
– m-stelliger Bitvektor, anfangs mit 0 gefüllt – k Hash-Funktionen, Hashwerte entsprechen Position in Bitvektor – Ermittlung der k Hashwerte, wenn mind. eine 0 enthalten ist, ist Wert nicht im Filter enthalten
66
Was ist ein LSM-Tree (Log Structured Merge Tree)?
- Updates werden an neue Stelle (höhere Ebene) gespeichert - mergen der Daten in die Unteren ebenen durchführen - Merge läuft in O(n)
67
Wie funktioniert Cosistent Hasing für die Skalierung in NoSQL?
- Server erhalten Hashwert und werden zu Ring angeordnet - Datenobjekte erhalten ebenfalls Hashwerte - Zuordnung zu Server, dessen Hashwert im Uhrzeigersinn am nächsten liegt. -
68
Datenmodell für die Speicherstruktur von Neo4J
Labeled Property Graph Model. - Knoten haben ein oder mehrere Labels zur Beschreibung der Rolle eines Knotens - Knoten und Kanten haben Properties (key-value Paare)
69
Neo4j Graph Storage ?
- Joins werden quasi vorberechnet und in der Datenbank gespeichert - Objekte müssen nicht über Index gesucht werden - Eine Liste über die man Iterieren kann
70
Nenne die 5 Schichten des 5-Schichtenmodell eines DBMS?
1. Datei- und Externspeicherverwaltung 2. Pufferverwaltung 3. Record- und Indexmanager 4. Cursor Verwaltung 5. Query-Übersetzung und -Optimierung
71
Welche Schnittstellen gibt es zwischen den Schichten?
1. Geräteschnittstelle (Spuren, Zylinder) 2. Dateischnittstelle (Blöcke, Dateien) 3. Systempufferschnittstelle (Seiten, Segmente) 4. interne Satzschnittstelle (Sätze, B*-Bäume) 5. satzorientierte Schnittstelle (Sätze, Sets) 6. mengenorientierte Schnittstelle (Relationen, Sichten)
72
Was ist die Aufgabe der Externenspeicherverwaltung?
– Verwaltung externer Speichermedien – Verbergen von Geräteeigenschaften – Abbildung von physischen Blöcken auf externe Speicher, wie Magnetplatten - Blöcke sind Transfereinheit
73
Was ist der Mean Time To Failure (MTTF)?
Erwartungswert für die Zeit bis zum Ausfall einer Platte
74
Was ist der Mean Time to Repair (MTTR)?
Erwartungswert für die Zeit zur Ersetzung der Platte und der Rekonstruktion der Daten
75
Was ist der Mean Time to Data Loss (MTTDL)?
Erwartungswert für die Zeit bis zu einem nicht maskierbaren Fehler
76
Was versteht man unter PCTFREE?
Mindest-Angabe in Prozent, wie viel Platz in einem Block frei bleiben für Updates
77
Was versteht man unter PCTUSED?
Mindest-Angabe in Prozent, ab wann in einem Block wieder neue Tupel gespeichert werden
78
Welche Blockzuordnungsverfahren existieren?
- Statische Dateizuordnung - Dynamische Blockzuordnung - Dynamische Extent-Zuordnung
79
Wie funktioniert die statische Dateizuordnung?
– Fortlaufende Speicherung von Blöcken in zusammenhängenden Speicherbereich (benachbarte Zylinder einer Magnetplatte)
80
Wie funktioniert die dynamische Blockzuordnung?
– Beim Erzeugen von Blöcken wird Speicherplatz zugeordnet | – Adressierung eines Blocks in einer Blocktabelle
81
Wie funktioniert die dynamische Extent-Zuordnung?
– Verwendung einer Extent-Tabelle zum Ablegen der Startadresse und Anzahl der Blöcke pro Extent – Zuordnung von Extents zu Dateien durch DB-Administrator
82
Welches verfahren nutzt die direkte Seitenadressierung?
– Implizite Zuordnung zwischen Seiten eines Segments und Blöcken einer Datei – Verwendung in vielen DBMS
83
Welches verfahren nutzt die indirekte Seitenadressierung?
– Seitentabelle, die für jede Seite eines Segments einen Block zuweist – Bit-liste, die aktuelle Belegung beschreibt - hohe Flexibilität
84
Was ist die Aufgabe der Pufferverwaltung?
Ist zuständig alle Seiten die benötigt werden im Hauptspeicher zur Verfügung zu stellen.
85
Wie funktioniert das Auffinden einer Seite?
Suchverfahren 1. direkte Suche im Pufferrahmen 2. Indirekte Suche über Hilfsstrukturen (verkettete Liste, Hash-Tables)
86
Welche Seitenersetzungsverfahren gibt es?
- Demand-Fetching - Prefetching - FIFO - LFU (least Frequently Used) - LRU (Least Recently Used)
87
Was beschreibt das Zick-Zack Verfahren?
- Man erspart sich das erneute Laden der Seiten in den HS. | - Erst von links nach rechts dann rechts nach links
88
Was ist der Merger-Join?
- Vorrausetzung: Sortierte Eingaben - Lineare Aufwand - Kleinerer Index läuft weiter bis Werte gleich sind.
89
Wie funktioniert der Index-Join?
- Eine Seite ist als Indexstruktur (sortiert) organisiert. | - Suche über Indexbaum nach gleichen paaren.
90
Was ist die Selektivität?
Selektivität hilft bei der Abschätzung der Größe von Zwischenresultaten. Ergebnis ist in %
91
Was sind Materialized Views?
- Datenkopien - Schnellerer Zugriff auf lokale Kopien von Remote-Tabellen - Einmalige Berechnung von Aggregationen und mehrfache Wiederverwendung
92
Wie funktioniert ein Semijoin?
- Ergebnis enthält die Tupel einer Relation, die einen potenziellen Joinpartner haben
93
Was ist die pessimistische Synchronisation?
- Synchronisation mithilfe von Sperren
94
Was ist die optische Synchronisation?
- ohne Sperren