Erstellung relationaler Datenbanken Flashcards

1
Q

Welche Aktivitäten werden zum Entwurf von relationalen Datenbanken durchgeführt?

A
  • Entitäten identifizieren
  • Beziehungen festlegen
  • Primärschlüssel festlegen
  • Umwandlung in physikalisches Datenmodell
  • Attribute festlegen und normalisieren
  • Konsistenzbedingungen festlegen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Womit könnte man den Schritt “Entitäten identifizieren” vergleichen?

A
  • Identifikation der Klassen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Womit könnte man den Schritt “Beziehungen festlegen” vergleichen?

A
  • Modellierung von Beziehungen zwischen Klassen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was ist ein konzeptionelles Datenmodell?

A
  • zu Beginn des Datenbankentwurfs
  • beinhaltet alle relevanten Entitäten und deren Beziehungen
  • enthält keine datenbankspezifischen Informationen
  • idR. ein Netzwerk aus Entitäten
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Was ist ein physikalisches Datenmodell?

A
  • berücksichtigt alle Einschränkungen und Eigenschaften relationaler Datenbanken
  • Struktur entspricht der der Datenbank, konkrete Tabellenstruktur kann damit erstellt werden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was für Möglichkeiten gibt es Vererbungsbeziehungen im physikalischen Datenmodell abzubilden?

A
  • Single Table (per Class Hierarchy Strategy)
  • Joined Subclass Table
  • Table per Class
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was ist die Single Table (per Class Hierarchy Strategy)?

A
  • ganze Klassenhierarchie auf einer Tabelle abgebildet
  • (optional) mit Diskriminator kann zu jedem Datensatz der Typ (Name der Klasse) gespeichert werden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was sind die Vorteile von Single Table (per Class Hierarchy Strategy)?

A
  • schnell lesender u. schreibender Zugriff
  • effizienter Zugriff auf Beziehungen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Was sind die Nachtiele von Single Table (per Class Hierarchy Strategy)?

A
  • Performanceverluste bei komplexen Vererbungshierarchien
  • enthält eventuell viele NULL-Elemente: reservierter Speicherplatz wird damit nicht effizient genutzt
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Was ist Joined Subclass Table?

A
  • jede Klasse wird in eigener Tabelle gespeichert
  • Unterklassen enthalten Fremdschlüssel zu Datensätzen der Attribute ihrer Oberklasse
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was sind die Vorteile von Joined Subclass Table?

A
  • geringste Redundanz
  • hinzufügen von weiteren Unterklassen leichter möglich
  • Daten aus Oberklassen leicht mit Datenbankmitteln (FK, Join) ladbar
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was sind die Nachteile von Joined Subclass Table?

A
  • langsamste Abbildung von Vererbung
  • zum lesen und schreiben müssen immer mehrere Tabellen angefragt werden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was ist Table per Class?

A
  • jede Klasse bekommt eigene Tabelle
  • (nur konkrete, nicht abstrakte Klassen)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Was sind Vorteile von Table per Class?

A
  • effiziente Zugriffe auf Datenbank möglich
  • hinzufügen von weiteren Klassen leicht möglich
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Was sind Nachteile von Table per Class?

A
  • Beziehungen manchmal schwierig umzusetzen
  • falls Unterklasse nicht bekannt: Datensatz kann nicht gefunden werden
  • Auswertungen über gesamte Oberklasse benötigen Vielzahl von SQL-Befehlen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly