Datenbanken. Teil 1: Überblick

Ähnliche Dokumente
Datenmodellierung VU Einführung SS 2015

Datenmodellierung VU Einführung SS 2016

Entwicklung der Datenbanksysteme

Datenbanken I. Karczewski Datenbanken I 1. Produkt (0,*) (0,*)

Einführung und Überblick

Datenbanken. Seminararbeit. Einführung in das wissenschaftliche Arbeiten

Anwendungsentwicklung Datenbanken Datenbankentwurf. Stefan Goebel

Datenbanken. Prof. Dr. Steffen Staab. Institut für Informatik ISWeb Information Systems & Semantic Web

Datenbanken. Einführung. Tobias Galliat. Sommersemester 2012

Datenbankmodelle und Datenbanksprachen

Wiederholung VU Datenmodellierung

Einführung in Datenbanken

Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt

D1: Relationale Datenstrukturen (14)

Datenbanken 1 Datenbanken SPO 2014 SPO 2007 Belegnummer Belegnummer

Datenbanken Grundlagen und Design

Datenbanken Datenbanken 1 Belegnummer Belegnummer

Datenbanken. Prof. Dr. Gerd Stumme Dipl.-Inform. Christoph Schmitz. FG Wissensverarbeitung FB Mathematik/Informatik

Datenbanken. Veranstalter: Prof. Norbert Fuhr. Mi., , LB 131 Do., , LB 107

Kapitel 1: Wiederholungsfragen Grundlagen DBS

Relationale Datenbanken Kursziele

Informationssysteme für Ingenieure

Datenbanken. Dateien und Datenbanken:

Kapitel 1 Grundlagen. Skript zur Vorlesung: Datenbanksysteme II Sommersemester Vorlesung: PD Dr. Peer Kröger

Datenbanken Unit 1: Einleitung

Datenbanken I - Einführung

Datenbanken als Grundlage für Informationssysteme

Sommersemester Vorlesung: Dr. Matthias Schubert

Rückblick: Datenbankentwurf

Das relationale Datenmodell

Angewandte Informatik Datenbank/Datenmodell 1

Einführung in Datenbanksysteme. Donald Kossmann Institut für Informationssysteme ETH Zürich

Datenbanken (WS 2015/2016)

- Gewinnung neuer Informationen durch Berechnungen - Einsatz graphischer Mittel zur Präsentation / Visualisierung von Datenreihen

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL

1. Einführung. Datenbanken Grundlagen

Das relationale Modell (Teil 1)

Datenbanken und Datenbanktypen Tag 1 : Kapitel 1. Christian Inauen. Lernziele. Entwicklung der Datenbanken.

Lehrplan. Datenbanken. Höhere Berufsfachschule für Automatisierungstechnik. Ministerium für Bildung

Relationale Datenbanken

In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen.

Datenbanken Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt:

Rückblick: Relationales Modell

Datenbankentwicklung

Einführung in die Informatik II

Matthias Schubert. Datenbanken. Theorie, Entwurf und Programmierung relationaler Datenbanken. 2., überarbeitete Auflage. Teubner

Grundlagen Datenbanken (GDB)

Theorie zur Übung 8 Datenbanken

Einführung. Kapitel 1 2 / 508

Datenbanken. Grundlagen

Datenbanken. Prof. Dr. Steffen Staab. Institut für Informatik ISWeb Information Systems & Semantic Web

Relationale Datenbanken Datenbankgrundlagen

Carl-Christian Kanne. Einführung in Datenbanken p.1/513

Datenbanken. Prof. Dr. Bernhard Schiefer.

3. Relationales Modell & Algebra

Redundanz: Dieselben Informationen werden doppelt gespeichert.

BERUFSPRAKTIKUM UND -VORBEREITUNG

PRG2 Folien Zicari Teil 1 Einführung in Datenbanken SS 2007

Grundlagen der Datenbanksysteme I

Datenbanken. Prof. Dr. Gerd Stumme Dr. Andreas Hotho Dipl.-Inform. Christoph Schmitz. FG Wissensverarbeitung FB Mathematik/Informatik

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

Datenbanken. Andreas Heß Hochschule Furtwangen

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

Datenbanken. Prof. Dr. Gerd Stumme Dr. Andreas Hotho Dipl.-Inform. Christoph Schmitz. Organisatorisches. Organisatorisches.

5. Relationale Entwurfstheorie

Grundlagen zu Datenbanken zu Beginn der Jgst. 13

SQL/Datenbanken Klausur: Basics

Software-Engineering und Datenbanken

NoSQL Datenbanken EIN ÜBERBLICK ÜBER NICHT-RELATIONALE DATENBANKEN UND DEREN POTENTIALE IM ALLGEMEINEN UND IN DER INDUSTRIE

Kapitel 1: Einführung 1.1 Datenbanken?

Datenorganisation: (Daten)Datei versus Datenbank

Gegenstand-Beziehungs Modell (ERM, Entity-Relationship Model)

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort... 13

Übersicht über Datenbanken

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort 13

anwendungen programmieren Datenbank entwerfen & Implementierung Analyse bis zur SQL- NoSQL-Datenbanken Uwe Klug Mit einer Einführung in 2.

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

ER-Modell, Normalisierung

Grundlagen der Datenbanksysteme I

Entity Relationship Modell (ERM) (Konzeptueller Datenbankentwurf)

Datenbanken. Prof. Dr. Steffen Staab. Organisatorisches. Organisatorisches. Vorlesung

Einleitung 19. Teil I Einführung in Datenbanksysteme 25. Kapitel 1 Wozu Datenbanksysteme da sind 27

Allgemeines zu Datenbanken

Medizininformatik Software Engineering

Datenbanken. Zusammenfassung. Datenbanksysteme

Entwurf von Relationalen Datenbanken (1) (mit dem Entity-Relationship-Modell)

Einführung in Datenbanksysteme +++ Datenbanken für Bioinformatiker

10. Datenbank Design 1

Entitätstypen, Attribute, Relationen und Entitäten

Partitionierungsstrategien für Data Vault

Normalisierung So wahr mir Codd helfe

10 Datenbanksysteme Datenbanken und Datenbanksysteme

Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung... 15

6 Implementierung komplexer Systeme. 6.2 Datenbank-Anbindung

Teil VI. Datenbanken

Transkript:

Datenbanken Teil 1: Überblick / 2015

Literatur zum Thema (1/2) Frank Geisler Datenbanken Grundlagen und Design 3. Auflage, 2009, mitp Verlag Heidelberg Alfons Kemper, André Eickler Datenbanksysteme Eine Einführung 7. Auflage, 2009, Oldenbourg Verlag München Edwin Schicker Datenbanken und SQL 3. Auflage, 2002, Teubner Verlag Stuttgart René Steiner Grundkurs Relationale Datenbanken. Auflage, 2009, Vieweg+Teubner Verlag Wiesbaden 2

Literatur zum Thema (2/2) E.F. Codd A Relational Model of Data for Large Shared Data Banks In: Communication of the ACM, V.13, No. 6, 1970, S. 377-387 M. Throll; O. Bartosch Einstieg in SQL Galileo Press, 2007,Bonn M. Schubert Datenbanken - Theorie, Entwurf und Programmierung relationaler Datenbanken Teubner Verlag, 2007 3

Überblick über die Veranstaltung Historische Entwicklung von Datenbanksystemen Unterschiedliche Realisationsentwürfe für Datenbanken Hierarchische Datenbanken Netzwerkdatenbanken Objektorientierte Datenbanken Architekturmodelle von Datenbanksystemen Das ER-Modell Normalformen Erstellen von Datenbanken Die Abfragesprache SQL 4

Warum Datenbanken? Informationen bestehen aus Daten Seit Beginn der Computerindustrie stark zunehmendes Informationsaufkommen Notwendigkeit diese Informationen (Daten) zu verarbeiten und zu speichern Industrielle Folgen Rasantes Wachstum in der Speichertechnologie Anfänglich wurden Daten lediglich in Dateien abgespeichert Problem der redundanten Speicherung von Daten Unterschiedlicher Zugriff auf unterschiedliche Daten 5

Kernforderungen Daten sollen nicht verloren gehen persistente Datenspeicherung Daten sollen unterschiedlich gruppiert/ sortiert werden Es muß unterschiedliche Suchzugriffe geben Robust gegen Änderungen des Datenbestandes Möglichst redundanzfreie Speicherung 6

Historisches (1/2) Anfangs Datenhaltung direkt im Dateisystem Große Anzahl von Dateien Hierarchische Struktur durch das Dateisystem vorgegeben Hoher Anteil redundanter Daten Versuch der Problemlösung 1959 durch die CODASYL Konferenz CODASYL = COnference on DAta SYstems Languages Ergebnis: Programmiersprache COBOL Entwicklung eines standardisierten Verfahrens zur Definition und Manipulation von Daten (DDL und DML) 7

Historisches (2/2) Heute: Hauptsächlich relationale Datenbanken in Gebrauch De facto Standard in der Industrie Aber: Weiterhin Betrieb vieler alter Datenbanken mit anderer Architektur Viele aktuelle Produkte aus dem Bereich relationaler Datenbanken sind kostenfrei erhältlich (MySQL, etc.) Datenbankentwurf folgt klar definierten Vorgehensweisen Abfragesprache ist mittlerweile (nahezu) standardisiert (SQL) Schnittstellen in allen gängigen Sprachen vorhanden 8

Lernziele Was sind die zentralen Probleme bei der Organisation von Daten? In welcher Weise können Datenbankmanagementsysteme Unternehmen darin unterstützen, ihre Daten besser zu organisieren? Welche Auswirkungen haben die einschlägigen Datenmodelle auf den Zugriff und die Verwendung von Daten Was versteht man unter einem relationalen Datenmodell? Welche Anforderungen stellt der Einsatz einer Datenbankumgebung an die Unternehmensführung? 9

Lernziele Welche neuen Werkzeuge und Techniken können den Zugriff auf Datenbanken erleichtern und zu einer effizienten Nutzung der gespeicherten Daten beitragen? Welche Bedeutung haben Richtlinien zur Verwendung der Daten und die Sicherstellung von Datenqualität beim Management von Unternehmensdaten? 10

Modellierung von Daten Abbildung nach Laudon: Wirtschaftsinformatik 11

Datenorganisation Abbildung nach Laudon: Wirtschaftsinformatik 12

Termininologie Datensatz Gruppe von inhaltlich zusammenhängenden Datenelementen, die verschiedene Eigenschaften desselben Phänomens beschreiben. Datei Zusammenfassung logisch zusammen-gehörender, gleichartiger Datensätze, in der Regel auf Massenspeicher abgelegt. Datenbank Eine zusammengehörende Gruppe von Dateien zwischen denen (logische) Abhängigkeiten bestehen. 13

Entitäten und Attribute Entität Eine Entität ist im Sinne von Datenbanken ein Gegenstand, etwa ein Ort, Ding oder Ereignis, über das Daten gespeichert und gepflegt werden sollen. Attribut Ein Attribut ist die kleinste Einheit zur Beschreibung spezielle Eigenschaften einer Entität Beispiel: Entität: Person Attribute: Name Vorname Alter 14

Getrennte Datenhaltung Kundendaten Mitarbeiterdaten Welcher Mitarbeiter ist für welchen Kunden zuständig? 15

Problem: getrennte Datenhaltung Kunden Firma Nachname Vorname Auftrag Bearbeiter BMW Müller Karl 208 Winter Maier AG Rehn Erich 405 Winter Mitarbeiter <privat> Schulze Eva 307 Sommer Personal-Nr Nachname Vorname Funktion 1 Klein Theodor Geschäftsführer 2 Groß Elvira Sekretariat 3 Winter Egon Vertrieb 4 Sommer Karin Vertrieb 5 Lanz Max Vertrieb Wer bearbeitet Auftrag 307? 16

Motivation für Datenbankverwaltungssysteme Typische Probleme bei Informationsverarbeitung ohne DBMS Redundanz und Inkonsistenz Beschränkte Zugriffsmöglichkeiten Probleme beim Mehrbenutzerbetrieb Verlust von Daten Integritätsverletzung Sicherheitsprobleme hohe Entwicklungskosten für Anwendungsprogramme 17

Auswirkung: mangelnde Flexibilität In Dateien organisierte Daten sind unflexibel gegenüber Auswertungen und Verknüpfungen, da ein gleichzeitiger Zugriff auf mehrere Attribute und eine entsprechende Auswertung der Datenelemente zeitaufwendige Such- und Sortierverfahren erfordert Als Folge davon ist der Datenaustausch zwischen verschiedenen Anwendungssystemen schwierig zu bewerkstelligen 18

Auswirkungen: Datenredundanz Identische Informationen werden an verschiedenen Stellen, unabhängig voneinander, abgespeichert Bei Änderungen müssen an mehrere Stellen die gleichen Daten geändert werden Änderungen führen zu Inkonsistenzen, falls an einer Stelle nicht geändert wird Unterschiedliche Schreibungen führen zu Inkonsistenzen oder falschen Ergebnisse bei Abfragen Frankfurt am Main Frankfurt / Main FFM, etc. 19

Auswirkungen: beschränkte Zugriffsmöglichkeiten Sollen getrennt und redundant gespeicherte Daten verknüpft werden ist dies kaum möglich: Logische Verknüpfung mit Informationen aus einer Datei mit solchen aus einer anderen Datei sind nur schwer möglich Informationen liegen zerstreut über mehrere Dateien vor Sehr problematische Recherche in den Datenbeständen Möglicherweise unvollständige Abfragen Probleme werden beim Vorliegen von Inkonsistenzen noch vermehrt 20

Auswirkungen: Problematischer Mehrbenutzerbetrieb Greifen mehrere Benutzer auf in unterschiedlichen Dateien (redundant!) abgelegte Informationen zu, kann dies äußerst unangenehme Folgen für die Datenkonsistenz haben. Gleichzeitiges Ändern in einem Datensatz durch mehrere Benutzer Unterschiedliche Änderungen an verschiedenen Stellen Änderungen von Namen Adresse Telefonnummer Etc. 21

Auswirkungen: Verlust von Daten Große Probleme bei Datenverlust, z.b. Versehentliches Löschen einer Datei Hardwarefehler Unbeabsichtigtes Überschreiben Wiederherstellung des ursprünglichen Zustands äußerst problematisch. Bei Durchführung periodischer Sicherungen noch möglich Bei Verlust (oder Beschädigung) einzelner Dateien (der oft zunächst unbemerkt bleibt) kaum noch durchführbar 22

Auswirkungen: Integritätsverletzung Beispiel Universität, Schule, BA Rhein Main Falls Prüfungsleistungen dezentral (redundant) erfaßt werden. Schwierige Prüfung, ob Regularien eingehalten wurden Sind alle Prüfungen zur Zulassung Bachelor/Diplom bereits abgelegt? Sind schon alle Klausuren geschrieben? Schwierige Auswertungen Welcher Notendurchschnitt liegt vor? Wieviele Klausuren wurden geschrieben? Welche Dozenten wurden eingesetzt? Etc. 23

Auswirkungen: Integritätsverletzung / Löschanomalie Wird ein Datensatz gelöscht, von dem weitere (in anderen Dateien!) abhängen, so kann auf diese u.u. nicht mehr zugegriffen werden. Dies kann auch bei einfachen Datenänderungen auftreten: Namensänderung Änderung der Kundennummer Umfirmierung Personal-Nr Nachname Vorname Funktion 1 Klein Theodor Geschäftsführer 2 Groß Elvira Sekretariat 3 Winter Egon Vertrieb 4 Sommer Winter Karin Vertrieb 5 Lanz Max Vertrieb 24

. Auswirkungen: Personal-Nr Nachname Vorname Funktion 1 Klein Theodor Geschäftsführer 2 Groß Elvira Sekretariat 3 Winter Egon Vertrieb 4 Winter Karin Vertrieb 5 Lanz Max Vertrieb Firma Nachname Vorname Auftrag Bearbeiter BMW Müller Karl 208 Winter Maier AG Rehn Erich 405 Winter <privat> Schulze Eva 307 Sommer 25

Auswirkungen: Sicherheitsprobleme Unterschiedliche Benutzerrechte sind nur schwer umzusetzen. Beispielsweise: Datenänderungen nur bestimmte Personen zu erlauben Löschen einzelner Daten restriktiv zu behandeln Schwierige Einschränkung der Sichtbarkeit von Daten Gehaltsdaten Familiäre Verhältnisse Persönliche Daten Telefonnummer E-Mail Etc. 26

Auswirkungen: hohe Entwicklungskosten Beispiel: Entwicklung einer neuen Applikation, die auf die Datenbank zugreifen soll: Die Programmierer müssen sich sehr genau in die Datenhaltung einarbeiten Datenverwaltung wird zum Problem, wo es nicht hingehört Die Datenhaltung wird automatisch zum Teil jeder Applikation, die auf die Daten zugreift, statt nur den Datenzugriff zu regeln. 27

Lösung: Datenabstraktion Bei Datenbanksystemen unterscheidet man drei Arten von Datenabstraktion Die physische Ebene Festlegung wie die Daten gespeichert werden i.d.r Speicherung auf einem sog. Hintergrundspeicher der meist als Festplattenspeicher realisiert ist Die logische Ebene Festlegung welche Daten abgespeichert werden Festlegung des logischen Datenbankschemas Die Sichten Stellen anwendungs-/anwenderspezifische Teilmengen von Informationen aus dem Datenbestand bereit Sind z.b. auf Benutzergruppen zugeschnitten 28

Abstraktionsebene eines Datenbanksystems Sicht1 Sicht2 Sicht3 Logische Ebene Physikalische Ebene 29

Datenmodellierung Ausschnitt au der realen Welt Konzeptuelles Schema (ER-Schema) Transformation Relationales Schema XML Schema Netzwerk Schema Objektorientiertes Schema 30

Realisierung eines Vorlesungsplanes Name Vorname Studiengang Vorlesung Dozent Raum Müller Karl Wirtschaftsinformatik Informatik Bitner 102 Maier Eva Wirtschaftsinformatik Mathematik Bauer 101 Strotz Florian Wirtschaft Mathematik Löb 104 Klein Klaus Wirtschaft Kostenfalle Amsel 103 Klein Gerhard Wirtschaftsinformatik Graphen Euler 105 Lutz Klein Wirtschaft Mathematik Löb 104 Probleme: Implizite Abhängigkeiten in der Tabelle (Vorlesung Studiengang) Redundanzen (Studiengang) Unvollständige Informationen (Adressen fehlen) 31

Problemfälle Herr Strotz wechselt in das Fach Wirtschaftsinformatik Name Vorname Studiengang Vorlesung Dozent Raum Müller Karl Wirtschaftsinformatik Informatik Bitner 102 Maier Eva Wirtschaftsinformatik Mathematik Bauer 101 Strotz Florian Wirtschaftsinformatik Mathematik Löb 104 Klein Klaus Wirtschaft Kostenfalle Amsel 103 Klein Gerhard Wirtschaftsinformatik Graphen Euler 105 Lutz Klein Wirtschaft Mathematik Löb 104 Das Ändern des Fachs führt zu Inkonsistenzen: Dozent Löb ist nicht in der Wirtschaftsinformatik tätig Raum 104 ist für Wirtschaft reserviert Stammdaten von Herrn Strotz müssen separat geändert werden 32

Problemfälle Name Vorname Studiengang Vorlesung Dozent Raum Müller Karl Wirtschaftsinformatik Informatik Bitner 102 Maier Eva Wirtschaftsinformatik Mathematik Bauer 101 Strotz Florian Wirtschaft Mathematik Löb 104 Klein Klaus Wirtschaft Kostenfalle Amsel 103 Klein Gerhard Wirtschaftsinformatik Graphen Euler 105 Lutz Klein Wirtschaft Mathematik Löb 104 Redundanzen führen zu Mehraufwand: Es muß an unterschiedlichen Stellen geändert werden Schreibfehler wirken sich fatal aus 33

Problemfälle Name Vorname Studiengang Vorlesung Dozent Raum Müller Karl Wirtschaftsinformatik Informatik Bitner 102 Maier Eva Wirtschaftsinformatik Mathematik Bauer 101 Strotz Florian Wirtschaft Mathematik Bauer 104 Klein Klaus Wirtschaft Kostenfalle Amsel 103 Klein Gerhard Wirtschaftsinfomatik Graphen Euler 105 Lutz Klein Wirtschaft Mathematik Lob 104 Schreibfehler führen zu unvorhersehbaren Abfrageergebnissen Dozent Bauer ist nicht für Herrn Klein zuständig Der Student Klein geht bei Abfragen verloren 34

Was tun? Zur Vermeidung dieser Schwierigkeiten ist es notwendige klare Regeln zur Erstellung von Datenbanken zu haben, die eine konsistente Datenhaltung ermöglichen Erste Schritte: Datenabstraktion Datenstrukturen von der Speicherung trennen Datenunabhängigkeit Probleme entstehen durch Abhängigkeiten in der Datenhaltung (innerhalb einzelner Tabellen) Also sollten diese Abhängigkeiten vermieden werden. Logische Datenmodelle Definition unterschiedlicher Modelle zur Datenhaltung 35

Datenbankmanagementsysteme Abbildung nach Laudon: Wirtschaftsinformatik 36

Anforderungen und Antworten persistente Datenspeicherung Speicherung auf Festplatten Festplatten sind sehr viel langsamer als etwa RAM Speicher Intelligente Zugriffsmethoden und Speicherstrukturen 37

Moderne Architektur DBMS File manager Festplattenmanager Anwendung Betriebssystem Controller Welcher Datensatz wird gelesen (geschrieben)? Welcher Seite wird gelesen (geschrieben)? Welche Sektoren werden gelesen (geschrieben)? Datenbasis Festplatte Bereitstellen der physikalischen Daten 38

Methoden der Zugriffsoptimierung Indizierung Erzeugen von Indexdateien zum schnelleren Zugriff Mehrere Indizes existieren gleichzeitig Hashing Zugriff auf der Basis einfacher Berechnungen Verwendung von Zeigerketten Implementierung dynamischer Strukturen Verdichtungsverfahren Beschleunigung durch Komprimierung 39

Verdichtungsverfahren (Oracle) Index Key Compression (seit Version 8i) Indizes verbrauchen ca. ein Drittel des Gesamtspeicherplatzes (SAP) daher hohes Einsparpotential Index Organized Table Compression (seit Version 8i) komprimiertes Speichern normaler Tabellen Table Compression für direct load ab Version 9i für alle Operationen ab Version 11g Secure File Compression Ab Version 11g 40

Beispiel IOT Compression 41

Performancesteigerung Index Key Compression unter Oracle 42

Performancesteigerung Tablecompression 43

Zugriff auf Daten Der Zugriff auf einzelne Daten (sog. Datensatz) erfolgt durch einen eindeutig (!) vergebenen Wert, den sogenannten (Primär-) Schlüssel (i.d.r. Personalnummer, Auftragsnummer etc.) Pers. Nr. Name Vorname Studiengang Schlüssel 1 Müller Karl Wirtschaftsinformatik 2 Maier Eva Wirtschaftsinformatik 3 Strotz Florian Wirtschaft 4 Klein Klaus Wirtschaft 5 Klein Gerhard Wirtschaftsinformatik 6 Lutz Klein Wirtschaft Datensatz 44

Datenunabhängigkeit Datenunabhängigkeit wird durch das Ebenenmodell des Datenbanksystems ermöglicht. Es wird unterschieden zwischen Physischer Datenunabhängigkeit Modifikationen der physischen Speicherstruktur haben keine Auswirkungen auf die logische Datenstruktur Nachträgliche Indexierungen haben keinen Einfluß auf bestehende Anwendungen Logischer Datenunabhängigkeit Anwendungen nehmen Bezug auf die logische Datenstruktur Datenobjekte haben von der physischen Struktur unabhängige Eigenschaften (z.b. Namen, Vorname, Telefonnummer etc.) Logische Datenunabhängigkeit kann meist nur für einfache Modifikationen sichergestellt werden (Änderungen von Feldnamen) 45

Logische Datenmodelle Im Laufe der Zeit haben sich unterschiedliche Modelle zur Datenhaltung entwickelt Netzwerkmodell Hierarchisches Datenmodell Herkunft. Dateisysteme Relationales Datenmodell XML Schema Objektorientiertes Datenmodell objektrelationales Schema Deduktives Datenmodell Heute wird hauptsächlich das relationale Modell verwendet. 46

Das hierarchische Modell (1) Auto Rad Tür Felge Reifen Griff Schloß 47

Das hierarchische Modell (2) Abhängigkeiten in den Daten werden durch eine baumartige Struktur beschrieben Die Beschreibung der Elemente erfolgt in der Terminologie der Beschreibung von Bäumen Knoten Elternknoten Kindknoten etc. Probleme: Computer mit linearem Adreßraum können diese Strukturen nicht direkt abbilden Daher Realisierung als (verkettete) Liste 48

Das hierarchische Modell (3) Die Verwaltung des Systems liegt bei einem (Datenbank-) Administrator Anwender sind von der Verantwortung entbunden Datensicherheit zu garantieren Das hierarchische Modell ist gut geeignet große Datenmengen die in einer 1:N Beziehung stehen zu verwalten Nachteile Sehr aufwendiges Datenmanagement Sehr komplexe Implementierung der Datenbank notwendig Lösch-Anomalien werden begünstigt, bzw. haben z.t. fatale Auswirkungen Es werden nur 1:N Beziehungen dargestellt. 49

Das Netzwerkmodell (1) Tür Felge Auto Rad Achse Reifen 50

Das Netzwerkmodell (2) Mathematik Informatik Kostenrechnung Student Student Student Student 51

Das Netzwerkmodell (3) Entstehung des Modells 1971 als Folge der Conference on Data Systems Languages (CODASYL) Realisiert wird diese Modell vorwiegend mit COBOL Beziehungen zwischen Datensätzen werden über Zeiger realisiert Ein Kindknoten kann (im Gegensatz zum hierarchischen Modell) mehrere Elternknoten besitzen Vorteil: Schneller Zugriff, da Beziehungen direkt realisiert Nachteile Hoher Verwaltungsaufwand Strukturen schwer zu ändern 52

Das ER-Modell, relationale Datenbanken Bereits 1970 wurde von E.F. Codd das relationale Datenbankmodell entwickelt Vorgestellt im Artikel A Relational Model of Data for Large Shared Data Banks Umsetzung des Konzepts 1978 durch IBM mit System/R Adaption des Konzepts durch Relational Systems (die später in Oracle umfirmierten) mit den Produkten SQL/DS DB2 Relationale Datenbanken sind heute die am weitesten verbreiteten Datenbanken weltweit. 53

Relationale Datenbanken Vorteile relationaler Datenbankmanagementsysteme (RDBMS) Komplette Kapselung der physikalischen Datenspeicherung Anwender beziehen sich ausschließlich auf die logische Struktur der Daten Das grundlegende Konzept relationaler Datenbanken ist das der Tabelle Daten werden in Tabellen gespeichert Relationen bestehen zwischen Daten (Tabellen) Realisierung der Beziehungen zwischen Tabellen über Primär- und Fremdschlüssel 54

Relationale Datenbanken, Hinführung (1/2) Studenten hören Vorlesungen Tabelle Studenten Mat-Nr Vorname Nachname 1 Felix Klein 2 Eva Groß 3 Karl Sommer hören Tabelle Vorlesungen Vorl-Nr Vorlesung 1 Ethik 2 Gotik 3 Metrik 55

ER-Diagramme Abbildung nach Laudon: Wirtschaftsinformatik 56

Relationale Datenbanken, Hinführung (2/2) Name Vorname Studiengang Vorlesung Dozent Raum Müller Karl Wirtschaftsinformatik Informatik Bitner 102 Maier Eva Wirtschaftsinformatik Mathematik Bauer 101 Strotz Florian Wirtschaft Mathematik Löb 104 Klein Klaus Wirtschaft Kostenfalle Amsel 103 Klein Gerhard Wirtschaftsinformatik Graphen Euler 105 Lutz Klein Wirtschaft Mathematik Löb 104 Vor der Nutzung als Datenbank müssen die Daten angepaßt werden 57

Entwicklung relationale DBen 58