Datenbank Teil1
Datenbank Theorie
Datenbank Theorie
-
- 1 / 51
-
Cartes-fiches
Drei Wirtschaftliche Produktionsfaktoren
•Arbeit(Mensch
•Kapital(Geldmittel, Sachmittel)
•Boden ( Umwelt, Natur)
•neu --> Wissen/Information
Ziele der Datenbankeinsatzes
Daten werden persistent gespeichert (für längere Zeit)
Datenelemente werden zentral festgelegt ( Zentrale Organisationspflege)
Datenelemente werden zentral verwalten
Keine Mehrfachspeicherung von Daten --> nur an einem definierten Ort (Goldige Regel)
Gewährleistung der Datenkonsistenz -->
Keine unkontrollierten Benutzerzugriffe ( Datenintegrität, Datenschutz, Validierung)
Der Benutzer muss sich nicht mit der "inneren" Organisation der Daten befassen
Überschaubare "innere" Struktur der Daten
System ist flexibel und ausbaubar
Automatische Integritätskontrollen
Datenzugriff aus den unterschiedlichsten Applikationen
Individuelle DB-Abfragen sind sehr schnell und flexibel realisierbar (Queries)
Spezifische Datensichten für verschiedene Bedürfnisse
Effiziente Schnittstellenbildung zu weiteren Applikationen
Bessere Portabilität der Daten
Zentrale Datensicherung
Korrekte Abbildung der "Business Rules"
Keine unkontrollierten Transaktionen
Zwei edle Ziele der Datenbanken?
•Daten von den Programmen strikt getrennt
•Keine Mehrfachspeicherung von Daten
Gründe für den Einsatz einer Datenbank
•Mehrere Benutzer greifen gleichzeitig auf Daten.
•Die Daten haben einen gewissen Anspruch auf Menge und Struktur (Ab ca. 100 Adressen sollte man schon Datenbank verwenden)
•Datengruppen stehen untereinander in Beziehung
•Daten können in verschiedene logische Gruppen eingeteilt werden
•Es müssen Regeln strikt eingehalten werden ( Datentypen, Feldlängen, Uniqueness, Datenabhängigkeiten usw.) z.B UBS Konto nur dann eröffnen wenn man Minimum halbe Millionen hat)
•Grosse Datenmengen müssen schnell durchsucht werden können
•Sicherheit muss gewährleistet sein (Zugriff, Logging, Datenverteilung)
•Die Verwaltung der Daten ist komplex ( im Zusammenhang)
•Die Basisdaten müssen Regelmassig auf bestimmte Weise ausgewertet werden (Auswertungslisten, Berichte usw.)
•Die Basisdaten müssen konsolidiert werden (Buchhaltung, Controlling)
Aufbau eines Datenbanksystems
•Datenbankmanagementsystem --> dafür da das richtige Daten in Nutzdaten gefunden werden
•Datenbasis = Data Dictionarary (DD) + Nutzdaten ( Metadaten--> das finden, hier steht wo was ist)
Grundlegende Beziehungen
•1:1 Beziehung
•1:n Beziehung
•m:n Beziehung ( Immer mit Zwischentabelle lösen)
Kardialität
•Es ist die Mengeneigenschaft einer Beziehung
Beziehungen
Bei Beziehungen immer Vorwärtsfrag und Rückwärtsfrage stellen
Problemlösung, wenn ein Name mehrere Nummer und mehrere Name ein Nummer
Datenbanksystem DBS
•Eine Datenbank mit einheitlichen ( Ordnungs-) Regeln, die von einer spezialisierten Software, dem DBMS, verwaltet werden
•Datenbanksystem = Datenbasis + Datenbankmanagementsystem(DBMS)
Datenbasis
•Sind die eigentlichen Nutzdaten(Anwenderdaten) und das Data Dictionary
Data Dictionary(Metadaten)
•Sind die Daten, die die Datenbasis (z.B. Tabellenstrukturen, Datentypen, Beziehungen, Verwendungen, Bedeutungen, Bedingungen usw.) definieren und beschreiben
Datenbankmanagementsystem (DBMS)
•Spezialisierte Software die es erlaubt, die Datenbasis effizient und möglichst konsistenzerhaltend zu verwalten
•Das DBMS stellt viele Funktionen von sich aus zur Verfügung (typisch: MySQL, Oracle, MS-SQL, DB2, Sybase, Informix usw.)
Arten von Datenbanken
•Hierarchische Datenbank
oDaten werden immer von Oben her verlinkt (alt)
•Netzwerkdatenbank
oMessdaten ; Vorteil : keine Redundante Daten (alt)
•Relationale Datenbank
oGleichartige Objekt in eine Tabelle, dann haben alle die gleichen Attribute (neu)
Schema
•Eine Repräsentation einer Struktur von Daten.
Null-Schema-Architektur
Beschreibt die physikalische Datenstruktur auf dem Speichermedium
Internal Schema
Die Beschreibung der physikalischen Datenstruktur (auf dem Speichermedium).
Nachteil
Änderungen der Datenstruktur bedingten eine Programmänderung
Änderungen des Programms bedingten oft eine Anpassung der Datenstruktur
External Schema
Eine Beschreibung der Struktur der Daten, so wie sie der Benutzer sieht (benutzergerecht).
Hinweis: Änderungen am interne/externe Schema hatten immer auch Programmänderungen zur Folge
Conceptual Schema
Eine Beschreibung der Struktur der Daten, die vom physikalischen Speicherformat und vom externen Präsentationsformat unabhängig ist.
Relationale Modelle
Repräsentierte das conceptional schema im 3-Schema-Architekturmodell
Daten werden durch mehrere Tabellen repräsentiert
Die Struktur wird durch Relation gebildet, die mit mehrfach verwendeten Fremdschlüsseln aufgebaut werden.
Logical Design:
Was soll das System tun?
Logical Function Design:
Funktionsorienteiert
Logical Data Design:
Datenorientiert
Physical Design:
Wie soll das getan werden?
Design für ein Single System
Grosse Abhängigkeit der Datenstruktur
Keine Möglichkeit den Datenbasis anderen Programmen zur Verfügung zu stellen
Nicht schnell genug, um Shared-Data-System zu realisieren
Design für ein Shared System
Schwieriger zu entwickeln als Single System
Erfordert eine breite Sicht über alle Anforderungen
Segmentierung des Systems, das einzeln behandelt werden kann
Gesamtsicht muss gewahrt sein
Dateiorientiertes Design
-Daten, Syntax und die Struktur sind hier die fundamentale Basis.
-Konzentriert auf
Data Entitäten
Eigenschaften ( Attributs)
Beziehungen (Relations)
-Fragt zuerst nach Daten, die zu Erfüllung der Hauptfunktion benöigt werden.
-Argument: Wenn man die Daten kennt mit denen es zu tun, ist es einfach umzusetzen.
-Kann von verschiedenen, getrennten Funktionen genutzt werden, ohne dass eine Schnittstelle zur Verfügung stehen muss
Information
Daten in einem logischen Zusammenhang, die letztlich für den Empfänger eine Aussage/Wissen darstellen.
Metadaten
Definition von Daten und Struktur
Information Modeling
Kann als Weg zur Entwicklung von Informationssystemen und auch deren Implementation betrachtet werden.
Die Informationen sind Repräsentationen von:
1. Dingen (entities)
2. Eigenschaften der Dinge (attributes)
3. Beziehungen zwischen den Dingen (relationships)
Modell
Das Modell soll ein Abbild sein, wie die Dinge beschrieben werden und untereinander zusammenhängen
Komponenten der Informationsmodelle
IDEF1X-Diagramm
•Entitäten
•Eigenschaften
•Beziehungen
Entität
-Eine Entität ist ein(e) unterscheidbare(r), erkennbare(r) Person, Ort, Sache, Vorgang oder Begriff über welcher Informationen benötigt werden.
-Werden in Tabellen dargestellt
-Beinhaltet gleichartige Informationen
Instanz
-Eine Instanz ist das einzelne Auftreten eines Elementes einer Entität
-Jede einzelne Zeile entspricht einer Instanz
Attribut
Ein Attribut beschreibt eine Eigenschaft, die sich auf die Entität bezieht
Unabhängige Entität
Eine Entität, die unabhängig von einer anderen Entität bestehen kann (Kern-Entität)
Abhängige Entität
Eine Entität, die zu ihrer Existenz von einer anderen Entität (Parententity) abhängig ist.
Beziehungsentität
Eine Entität, welche durch die Primary Keys von zwei oder mehreren Entitäten eine „Beziehung“ zwischen diesen Entitäten schafft.
Primärschlüssel
Ein oder mehrere Attribute(als Gruppe), welche eine Instanz einer Entität eindeutig identifizieren.
Primärschlüssel-Attribut
Attribut, welches allein oder in Kombination mit weiteren Primärschlüssel-Attributen den Primärschlüssel bildet.
Primärschlüssel Regeln:
•Nicht sprechend
•Einfach
•Kurz
•Atomar
•Performant
•Statisch
•Eindeutig
•Unsigned int
•Muss sofort zugeteilt werden
•Nicht merkbar aber nicht schreibbar
•Schlüssel soll atomar sein (kein Attribute dazu mischen)
Schlüsselkandidat
Ein Attribut oder eine Gruppe von Attributen, welche als Primary Key gewählt werden könnten.