DBMS BACKUP
DBMS BACKUP
DBMS BACKUP
Set of flashcards Details
Flashcards | 77 |
---|---|
Language | Deutsch |
Category | Computer Science |
Level | University |
Created / Updated | 24.06.2021 / 01.01.2023 |
Weblink |
https://card2brain.ch/box/20210624_dbms_backup
|
Embed |
<iframe src="https://card2brain.ch/box/20210624_dbms_backup/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Welche Mengenoperationen kennen wir bei der rel. Algebra?
∪ Vereinigung (union)
∩ Durchschnitt (Schnittmenge, intersect)
× Kartesisches Produkt
\ Differenz (Subtraktion, except)
Was ist das Ergebnis einer Operation?
Eine Relation. Diese ist dann das Endergebnis oder ein Zwischenschritt zu weiteren Operationen.
Was gehört zur relationalen Algebra?
- Relationen
- Operationen auf diese Relationen
- Mengenoperationen
- Relationsspezifische Operationen
Wie werden Beziehungen übertragen?
Beziehungs-Typ..Attribut ⊆ referenzierteTabelle.PS
Das Symbol «Teilmenge von» stellt sicher, dass nur Tupel referenziert werden, welche in der referenzierten
Tabelle existieren. Dies ist später bei Abfragen aus der Datenbank relevant, um Fehler zu vermeiden.
Wozu braucht man Fremdschlüssel?
- Fremdschlüssel referenzieren zwischen Tabellen.
- Dabei werden Tabellen durch ihre Primärschlüssel repräsentiert.
- Wird benötigt, um Konstrukte wie Beziehungen, Weak Entities, etc. zu übertragen.
Worauf basieren relationale Datenbanken?
Relationale Datenbanken basieren auf Tabellen (= Mengen von Tupeln).
Was ist mit Sichten eines ERM gemeint?
➢ Z.B. innerhalb eines Unternehmens können ERM aufgrund von verschiedenen User Stories entworfen werden (User Story des Verkaufs, User Story der Logistik).
➢ Diese führt zu verschiedenen «Sichten» auf das unternehmensweite ERM.
➢ Es kann nun Sinn machen diese Sichten zu integrieren.
➢ Andererseits kann es auch Sinn machen verschiedene ERM für ein Unternehmen zu erlauben, um die Komplexität einzelner ERM zu reduzieren.
Wie sollte man vorgehen, um ein ERM zu erstellen?
- Entitäts-Typen identifizieren.
- Beziehungs-Typen ergänzen.
- Attribute ergänzen; Prüfung auf Sinnhaftigkeit (nur was nötig ist und das so eindeutig wie möglich),
- Primärschlüssel festlegen (falls notwendig Schlüssel erstellen, z.B. eine ID).
- Kardinalitäten ergänzen.
- Nochmals durchgehen und auf Lücken, Dopplungen, Uneindeutigkeiten überprüfen.
- Neue Grafik erstellen (Version 2); Iterationen sind unvermeidlich und wichtig für die Qualität des ERM.
Was sind Generalisierungen und Spezialisierungen?
Zur Vereinfachung können Generalisierung und Spezialisierungen durchgeführt werden.
Generalisierung: Statt bei den Entitäts-Typen Buch und Schuhe jeweils noch die Attribute «Artikel#», «Name» und «Preis» anzufügen kann ein «Über-Entitäts-Typ» «Artikel» erstellt werden. Für Buch und Schuhe werden dann lediglich die weiteren relevanten Attribute hinzugefügt (siehe Bild).
Spezialisierung: Aufteilung eines allgemeineren Typs in verschiedene Untergruppen. Entitätstyp «Artikel» enthält alle Attribute und ist mit den Entitätstypen «Bücher» und «Schuhe» mittels Pfeil verbunden.
Was sind schwache Entitäten?
➢ Werden im doppeltem Rechteck und doppelter Raute dargestellt (manchmal wird der Schlüssel auch nur gestrichelt dargestellt).
➢ Schwache Entitäten können über die Beziehung zu einer «normalen» Entität eindeutig definiert werden.
➢ Im Beispiel hat der Raum zwar die RaumNr als Schlüssel; diese RaumNr kann aber öfter als einmal vorkommen. Erst durch die Beziehung zu einem Gebäude mit einer eindeutigen GebNr wird auch der Raum eindeutig definiert.
Was ist mit Rollen gemeint bei ERM?
Durch Rollen werden Rekursionen genauer erklärt.
Beispiel:
➢ Alleine der Entitäts-Typ «Mitarbeiter» und der Beziehungstyp «managed» sagt noch nicht viel aus.
➢ Welcher Mitarbeitet «managed» hier wenn?
➢ Durch die Rollen «Chef» und «Sklave» werden die Beziehungen klarer.
➢ «Mitarbeiter, Chef» «managed» «Mitarbeiter, Sklave». Es werden also Hierarchiestufen abgebildet.
➢ Rollen werden an die Verbindungslinien geschrieben
Welche beiden Kardinalitäten müssen wir kennen?
Chen Notation: 1:1, 1:n, n:1, n:m (immer max. Angaben)
min/max-Notation: (0,1), (0,*), (1,1), (1,*) oder auch (1,5)
Was ist ein ...
1. ein Schlüssel
2. Schlüsselkandidat
3. Primärschlüssel
4. Schlüsselattribut
5. Nicht-Schlüsselattribute
1. Schlüssel: Eine Menge von Attributen (also eines oder mehrere), die eine Entität eindeutig identifiziert.
2. Schlüsselkandidat: Ein möglicher Schlüssel mit minimaler Anzahl Attribute. Also wenn es einen Schlüssel mit 2 Attributen und einen Schlüssel mit drei Attributen gibt, dann ist der Schlüssel mit 2 Attributen der Schlüsselkandidat.
3. Primärschlüssel: Ist ein beliebig ausgewählter Schlüsselkandidat, der zur eindeutigen Identifizierung nun benutzt wird.
Besteht der Primärschlüssel aus mehreren Attributen (dies ist dann der Fall, wenn ein Attribut zur eindeutigen
Identifizierung nicht ausreicht), wird er als zusammengesetzter Primärschlüssel bezeichnet.
4. Schlüsselattribut: Ist ein Attribut, das Teil mindestens eines Schlüsselkandidaten ist.
5. Nicht-Schlüsselattribute sind alle anderen.
Wozu dienen Schlüssel beim ERM?
➢ Die Entitäten eines Entitäten-Typs müssen eindeutig benannt werden können.
➢ Hierzu dienen «Schlüssel».
➢ Diese bestehen aus einem oder mehreren Attributen.
➢ So kann das Attribut «Name» als Schlüssel genommen werden. «Thomas Müller» muss dann die Entität eindeutig beschreiben. Leider gibt es viele Thomas Müller.
➢ Oft macht es Sinn eine eindeutige ID zu vergeben und diese als Schlüssel zu verwenden
Was ist der Unterschied zwischen Beziehung und Beziehungstyp?
➢ Der Beziehungs-Typ steht grundsätzlich für die Beziehungen zwischen «Mitarbeiter» und «Projekt».
➢ Während eine Beziehung eine spezifische Verbindung zwischen z.B. Thomas Müller und Projekt X ist.
Was ist der Unterschied zwischen Entitäten und Entitätstypen?
➢ Entitäten sind einzelne «Einheiten», z.B. der Mitarbeiter Thomas Müller.
➢ Entitäts-Typen dagegen stehen für den Typ «Mitarbeiter».
Was muss bei den Attributen des ERM beachtet werden?
Ein Attribut sollte Atomar sein, also z.B. das Attribut "Name" würde den Vor- und Nachnamen inkludieren. Darum lieber zwei Attribute erstellen, einer für Vorname und einer für Nachname.
Was ist ein Pflichtenfeld?
➢ In einem Pflichtenheft werden Funktionalitäten und Absprachen für ein abgegrenztes Projekt festgehalten.
➢ Damit definiert dieses Dokument auch den Umfang eines Projekts für die beteiligten Partner.
➢ Bezogen auf den Bereich Datenbankmanagementsysteme geht es dabei hauptsächlich um die Frage, welche Daten auf welche Weise erfasst und abgelegt werden sollen um bestimmte Prozesse zielführend zu unterstützen.
➢ Änderungen am Pflichtenheft bedürfen der Zustimmung der beteiligten Partner.
Was gehört zur Anforderungsanalyse?
Am Anfang müssen zunächst die Anforderungen definiert werden.
➢ Dies kann durch Interviews, User Stories oder andere Methoden erfolgen.
➢ Wichtige Themen, die zu erfassen sind wären (je nach Gegenstand der Modellierung):
➢ Organisations-Einheiten (z.B. Abteilungen),
➢ Objekte (z.B. Mitarbeiter),
➢ Objektbeschreibung (Attribute),
➢ Beziehungen (zwischen Objekten),
➢ Beziehungsbeschreibung (Attribute),
➢ Prozesse und Use Cases (z.B. ein Buch ausleihen, einen Artikel verkaufen),
➢ Prozessbeschreibung (ausführlichere Beschreibung des Prozesses bzw. Use Cases).
Ziel sind klare Dokumentationen wie: ein Pflichtenheft, Backlog Item oder ähnliches.
Wie sollte man vorgehen, um eine Datenbank anzulegen?
1. Anforderungsanalyse.
2. Modellierung von Objekten und Verbindungen zwischen Objekten (ERM). Evaluierung des ERM.
3. Übertragung in Relationale Schemata (Von Grafik zu «Textform»)
4. Relationen und Tabellen – zweidimensionale Datenspeicherung. Weitere Optimierung.
5. Erstellung von Datenbank Schemata mit der Hilfe von DBMS und befüllen dieser Schemata mit Daten.
Wozu dienen Entity-Relationsship-Modelle?
➢ Beschreibung von Strukturen und Prozessen (z.B. in einem Unternehmen).
➢ Nachhaltige Datenspeicherung.
➢ Nachvollziehbare Datenmodelle für die Ablage der Daten.
➢ Möglichkeit Datenmodelle anzupassen, da wir wissen wie sie angelegt wurden.
➢ Abfragen auf Basis von Daten ausführen.