Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Michael AndriczkaDBMS1 Vorlesung DBMS Thema:Datenbanktechnologie - Von der Realwelt zur Datenbank - Michael Andriczka Sommersemester 2003.

Ähnliche Präsentationen


Präsentation zum Thema: "Michael AndriczkaDBMS1 Vorlesung DBMS Thema:Datenbanktechnologie - Von der Realwelt zur Datenbank - Michael Andriczka Sommersemester 2003."—  Präsentation transkript:

1 Michael AndriczkaDBMS1 Vorlesung DBMS Thema:Datenbanktechnologie - Von der Realwelt zur Datenbank - Michael Andriczka Sommersemester 2003

2 Michael AndriczkaDBMS2 Inhalt 1.Einleitung 1.1Charakteristika 1.2Vergleich Datenredundanz vs. Datenintegrität 1.3Prinzipien 1.4Eigenschaften aktueller DBS 1.5Einige konkrete Systeme 1.6Datenbankgrößen 1.7 Gegenwärtiger Entwicklungsstand 2.Von der Realwelt zum ER-Modell 2.1Die sogenannte Miniwelt (1) 2.2Entität 2.3Attribute 2.4Schlüssel 2.5Beziehungen 2.6Die sogenannte Miniwelt (2)

3 Michael AndriczkaDBMS3 Inhalt 3.Vom Modell zur Datenbank 3.1Umsetzung des ER-Modells in das relationale Datenbankschema 3.2Normalisierung 4.Schlussbetrachtung

4 Michael AndriczkaDBMS4 1. Einleitung 1.1 Charakteristika von Datenbanken Eine Datenbank hat die langfristige Aufbewahrung von Daten als Aufgabe Die Sicherheit vor Verlusten ist eine Hauptmotivation, etwas auf die Bank zu bringen. Eine Bank bietet Dienstleistungen für mehrere Kunden an, um effizient arbeiten zu können.

5 Michael AndriczkaDBMS5 1. Einleitung 1.2 Datenredundanz vs. Datenintegration Ohne Datenbanken: Datenredundanz Basis- oder Anwendungssoftware verwaltet ihre eigenen Daten in ihren (eigenen) Dateiformaten - Textverarbeitung: Texte, Artikel und Adressen - Buchhaltung: Artikel, Adressen - Lagerverwaltung: Artikel, Aufträge - Auftragsverwaltung: Aufträge, Artikel, Adressen - CAD-System: Artikel, Technische Bausteine Daten sind redundant: mehrfach gespeichert; Probleme: Verschwendung von Speicherplatz, Vergessen von Änderungen; keine zentrale, genormte Datenhaltung

6 Michael AndriczkaDBMS6 1. Einleitung Mehrere Benutzer oder Anwendungen können nicht parallel auf den gleichen Daten arbeiten, ohne sich zu stören Anwendungsprogrammierer/Benutzer können Anwendungen nicht programmieren/benutzen, ohne - interne Darstellung der Daten - Speichermedien oder Rechner zu kennen (Datenunabhängigkeit nicht gewährleistet) Datenschutz und Sicherheit sind nicht gewährleistet

7 Michael AndriczkaDBMS7 1. Einleitung 1.2 Datenredundanz vs. Datenintegration Mit Datenbanken: Datenintegration Die gesamte Basis- und Anwendungssoftware arbeitet auf den selben Daten, z.B. Adressen und Artikel werden nur einmal gespeichert - Datenbanksysteme können große Mengen an Daten effizient verwalten (Anfragesprachen) - Benutzer können parallel auf Datenbanken arbeiten (Transaktionskonzept) - Datenschutz (kein unbefugter Zugriff) und Datensicherheit (kein ungewollter Datenverlust) werden vom System gewährleistet

8 1.3 Prinzipien Datenbank-Management-System Unter einem Datenbank-Management-System (DBMS) versteht man ein Softwarepaket, welches in der Lage ist, (Anwender-) Daten in einem Computersystem zu verwalten. Spricht man von einem relationalen Datenbank-Management-System, meint man damit, dass dieses DBMS für die Verwaltung der Daten intern eine bestimmte Technologie benutzt und dass es bestimmten Anforderungen genügt. Datenbank-System Unter einem Datenbank-System versteht man ein DBMS mit zusätzlich einer oder mehreren Datenbanken zur Sammlung von nicht redundanten Daten, die von mehreren Applikationen benutzt werden. 1. Einleitung

9 Michael AndriczkaDBMS9 1. Einleitung DB: Strukturierter, von DBMS verwalteter Datenbestand DBS: Datenbanksystem (DBMS + Datenbank) DBMS: Datenbank-Management-System

10 Michael AndriczkaDBMS10 1. Einleitung Grundmerkmale von DBMS - verwalten persistente (langfristig zu haltende) Daten - verwalten große Datenmengen effizient - Datenmodell, mit dessen Konzepten alle Daten einheitlich beschrieben werden (Integration) - Transaktionskonzept - Datenschutz, Datenintegrität (Konsistenz), Datensicherheit Grundprinzip moderner DBS - 3-Ebenen-Architektur - Trennung zwischen Schema (Tabellenstruktur) und Instanz (etwa Tabelleninhalt)

11 Michael AndriczkaDBMS11 1. Einleitung 1.4 Eigenschaften aktueller Datenbanksysteme 3-Ebenen-Architektur nach ANSI-SPARC –Externe Ebene (Benutzersichten) –Konzeptionelle Ebene (Logische Gesamtsicht) –Interne Ebene (Physische Schicht) Einheitliche Datenbankanfragesprache SQL Einbettung dieser Sprache in kommerzielle Programmier- sprachen Diverse Werkzeuge für die Definition, Anfrage und Darstellung von Daten und den Entwurf von Datenbankanwendungsprogrammen und der Benutzer-Interaktion, sowie Kontrollierter Mehrbenutzerbetrieb, Zugriffskontrolle und Datensicherheitsmechanismen

12 Michael AndriczkaDBMS12 1. Einleitung 1.5 Einige konkrete Systeme (Objekt-)Relationale DBMS - Oracle 9i, DB2 V.8, Microsoft SQL-Server MySQL, PostgreSQL, FireBird Pseudo DBMS - MS Access Objektorientierte DBMS - Poet, Versant, ObjectStore XML-DBMS - Tamino, eXcelon

13 Michael AndriczkaDBMS13 1. Einleitung 1.6 Datenbankgrößen Slolan Digital Sky Survey40 TB Himmelsdaten (Bilder und Objektinformationen); WalMart Data WareHouse24 TB Produktinfos (Verkäufe, etc.) von 2900 Märkten; Anfragen pro Wochen US Libary of Congress10-20 TB nicht digitalisiert Indexierbares WWW (1999)6 TB ca. 800 Millionen Dokumente Microsofts TerraServer3,5 TB unkomprimierte Bilder und Daten (komprimiert: ca. 1 TB)

14 Michael AndriczkaDBMS14 1. Einleitung SAP R/3-Installation der Deutschen Telekom AG (1998) Financial Accounting: Rechnungen, Lastschriften Zahlungsaufforderung, Mahnungen, etc. 15 SAP R/3-Systeme; jedes - verarbeitet Rechnungen, Mahnungen, Änderungen von Kundendaten pro Tag - bis zu jeweils 1000 Nutzer gleichzeitig Über Datenbanktabellen

15 Michael AndriczkaDBMS15 1. Einleitung 1.7 Gegenwärtiger Entwicklungsstand Unterstützung für spezielle Anwendungen - Multimedia-Datenbanken: Verwaltung multimedialer Objekte (Bilder, Audio, Video) - XML-Datenbanken: Verwalten semistrukturierter Daten - Verteilte Datenbanken: Verteilung von Daten auf verschiedenen Rechnerknoten - Förderierte Datenbanken: Multimedia-Datenbanken - Mobile Datenbanken: Datenverwaltung auf Kleinstgeräten (PDA, Handy)

16 Michael AndriczkaDBMS16 2. Von der Realwelt zum ER-Modell 2.1 Die sogenannte Miniwelt (1) Um zu einem geeigneten Modell zu gelangen, muss zunächst durch eine Analyse der realen Welt ein zu modellierender Teilausschnitt dieser realen Welt definiert werden. Diesen Teilausschnitt nennt man auch Miniwelt. Beispiel: Die Firma Mustermann handelt mit PCs und Zubehör. Aus dem Produktkatalog der Firma Mustermann können Kunden per Telefon oder per Bestellkarte ein oder mehrere Artikel zur Bestellung aufgeben. Aufgrund der enormen Nachfrage nach PCs und Zubehör kann das Geschäftsaufkommen mittlerweile nicht mehr über Karteikarten abgewickelt werden. Somit entschließt man sich zur Einführung eines relationalen DBS und der dazu gehörigen Anwendungsprogramme. Beim Betrachten dieser Miniwelt erkennt man gewisse Objekte (sog. Entities) wie Artikelnamen, Kundennamen, Bestellungen usw. Zwischen diesen Objekten existieren Beziehungen (sog. Relationships), die bestimmte Abläufe oder Abhängigkeiten in der Miniwelt darstellen.

17 Michael AndriczkaDBMS17 2. Von der Realwelt zum ER-Modell Um zu einem Datenmodell zu gelangen, fasst man gleichartige Objekte und gleichartige Beziehungen zu Klassen zusammen. Somit ergeben sich: Objekttypen wie Artikel, Bestellung, Kunden und Beziehungstypen wie Bestellposition, welche die Objekte in eine gewisse Beziehung bringen. Jedem Objekttyp oder Beziehungstyp sind gewisse Eigenschaften zu- geordnet, wie z.B. dem Objekttyp Artikel die Eigenschaften Bezeichnung und Preis. Man nennt diese Eigenschaften eines Objekttyps oder Beziehungstyps auch Attribute. Zur Darstellung von Objekten (Entities) und vor allem der Beziehungen zwischen den Objekten dienen die sogenannten ER-Diagramme.

18 Michael AndriczkaDBMS18 2. Von der Realwelt zum ER-Modell 2.2 Entität Ausgangspunkt des ER-Modells ist der Begriff der Entität. Eine Entität ist ein individuelles und identifizierbares Exemplar von Dingen, Personen oder Begriffen der realen oder der Vorstellungswelt. Die Entität wird durch Attribute näher beschrieben. Die Entitätsmenge (auch Entitytyp genannt) wird im ER-Modell durch ein Rechteck dargestellt. In dem Rechteck steht der Name der Entität. Der Name beschreibt die Entitätsmenge und steht im Singular. Die Entität (Entity) ist also das konkrete, individuell identifizierbare Objekt bzw. Exemplar von Dingen, Personen oder Begriffen der realen oder der Vorstellungswelt. KUNDE

19 Michael AndriczkaDBMS19 2. Von der Realwelt zum ER-Modell Beispiele: Individuen:Mitarbeiterin Brecht, Student Weber, Kunde Meier Reales Objekt:Maschine 2, Raum 7, Artikel Ereignis:Zahlung, Buchung, Mahnung, Start, Landung..... Abstraktes:Unterricht, Dienstleistung, Verarbeitungsart, Zahlungsart.... Der Kunde Meier ist also ein konkretes individuell identifizierbares Objekt, über den Informationen abgespeichert werden müssen. Er gehört zur Gruppe der Kunden. Man kann auch sagen, er ist vom Entitätstyp Kunde. Alle Informationen, die über Kunden abgespeichert werden, sind von der Struktur her gleich.

20 Michael AndriczkaDBMS20 2. Von der Realwelt zum ER-Modell 2.3 Attribute Attribute beschreiben die Entitäten. Beispiel: Kunde (KdNr, KName, KAdresse,...) Man unterscheidet zwischen identifizierenden Attributen, sog. Schlüssel (z.B.: KdNr, FirmenNr, PersNr...) beschreibenden Attributen (z.B.: KName, MitarbeiterName, ArtikelBez,... ) KUNDE KdNr KName

21 Michael AndriczkaDBMS21 2. Von der Realwelt zum ER-Modell 2.4 Schlüssel: Eine minimale Menge von Attributen, deren Werte das zugeordnete Entity eindeutig innerhalb aller Entities seines Typs identifiziert. Man unterscheidet Primärschlüssel und Fremdschlüssel Primärschlüssel: Der Primärschlüssel wird benötigt, um Datensätze eindeutig zu identifizieren, also der Datensatz darf nicht doppelt (z.B. in einer Tabelle) vorkommen. Der Primärschlüssel ist in einem ER-Modell anhand des unterstrichenem Attributes zu erkennen. Die Merkmale eines Feldes mit Primärschlüssel sind: Der Inhalt eines Feldes ist eindeutig In jedem Datensatz müssen Daten stehen Ein Primärschlüssel kann sich auch aus mehreren Feldern zusammensetzen

22 Michael AndriczkaDBMS22 2. Von der Realwelt zum ER-Modell Fremdschlüssel: Der Fremdschlüssel ist ein Attributwert, der einen Schlüsselwert in einer anderen Tabelle darstellt und somit als eindeutiger Verweis auf einen Datensatz in einer anderen Tabelle zeigt. Dies wird auch als referentielle Integrität benannt. Beispiel Fremdschlüssel: FremdschlüsselPrimärschlüssel Referentielle Integrität KNrPNrKursBereichsNr 4415D1 4515G2 476M6 486I6 496E1 BereichsNrBereich 1Sprache 2Geisteswissenschaften 6Naturwissenschaften

23 Michael AndriczkaDBMS23 2. Von der Realwelt zum ER-Modell 2.5 Beziehungen Die Wechselwirkungen und Abhängigkeiten zwischen Entitäten werden durch Beziehungen (relationship) dargestellt. Die Zusammenfassung gleichartiger Beziehungen zwischen Entitäten erfolgt durch Beziehungsmengen. Eine Beziehung wird nach Chen graphisch durch eine Raute dargestellt. In ihr steht der Name der Beziehung. Als Name sollte ein Verb gewählt werden. gibt auf

24 Michael AndriczkaDBMS24 2. Von der Realwelt zum ER-Modell Die Beziehung wird durch eine Verbindungslinie, zwischen der die Raute steht, dargestellt. Zwischen den Entitätstypen KUNDE und BESTELLUNG besteht ein Beziehungstyp gibt auf. Wenn es einen solchen Beziehungstyp gibt, so kann (muss) eine konkrete Beziehung zwischen einem Paar der dazu gehörenden Entitäten bestehen 1 n Man liest: KUNDE gibt auf Bestellungen bzw. Bestellungen werden aufgegeben von Kunde. gibt auf KUNDEBESTELLUNG

25 Michael AndriczkaDBMS25 2. Von der Realwelt zum ER-Modell 2.6 Die sogenannte Miniwelt (2) Drei der wichtigsten Objekttypen aus der Miniwelt der Firma Mustermann werden nun mit den dazugehörigen Attributen als Datenmodell dienen. Es handelt sich hierbei um die Objekte Kunden:alle Kunden, die Bestellungen aufgeben Bestellung:die offenen Bestellungen der Kunden Artikel:alle lieferbaren Artikel

26 Michael AndriczkaDBMS26 2. Von der Realwelt zum ER-Modell KUNDE BESTELLUNG ARTIKEL gibt auf Bestellposition KNameKdNr BestellNr Datum Bez Menge Preis ArtikelNr ER-Modell: 1 n n n

27 Michael AndriczkaDBMS27 3. Vom Modell zur Datenbank 3.1 Umsetzung des ER-Modells in das relationale Datenmodell Das ER-Modell besitzt zwei grundlegende Strukturierungskonzepte: Entitytypen und Beziehungstypen Dem steht im relationalen Modell nur ein einziges Strukturierungskonzept – nämlich die Relation – gegenüber. Also werden sowohl Entitytypen als auch Beziehungstypen jeweils auf eine Relation (Tabelle) abgebildet. Zu den Entitytypen als auch zu den Beziehungstypen aus dem vorherigen ER-Modell werden nun Relationen gebildet. Hierbei werden die Spalten als Attribute (Felder) bezeichnet. Die Attribute müssen innerhalb einer Relation eindeutig benannt sein. Die Zeilen der Tabelle entsprechen den Tupeln der Relation.

28 Michael AndriczkaDBMS28 3. Vom Modell zur Datenbank KUNDE : {KdNr, KName} BESTELLUNG : {BestellNr, Datum, KdNr} BESTELLPOSITION :{BestellNr, ArtikelNr, Menge} ARTIKEL : {ArtikelNr, Bez, Preis} ER-ModellRelationales Modell Entity = ObjektRelation = zweidimensionale Relationship = Beziehung Tabelle Entität SchlüsselattributSchlüsselattribut Entität KUNDE KdNr KName KUNDE KdNrKName Meier Schulz

29 Michael AndriczkaDBMS29 3. Vom Modell zur Datenbank 3.2 Normalisierung Unter Normalisierung versteht man das Aufteilen der Daten in Relationen in der Art und Weise, dass sie am Ende den Normalisierungsregeln entsprechen. Normalisierungsgründe Minimierung redundanter Daten Vermeidung von Änderungsanomalien Reduzierung inkonsistenter Daten Entwerfen von Datenstrukturen, die eine einfache Pflege erlauben

30 Michael AndriczkaDBMS30 3. Vom Modell zur Datenbank Normalform Die Normalformenlehre von Codd besagt, dass sich eine Relation nur dann in der ersten Normalform befindet, wenn der Wertebereich der Attribute elementar ist. PNrVornameNameStraßePLZWohnortKNrKurs 15HugoMeierSchulstr Berlin44, 45 D, G 6DetlefEulerMaiweg Trier47, 48, 49 M, I, E

31 Michael AndriczkaDBMS31 3. Vom Modell zur Datenbank Normalform Eine Relation ist in der ersten Normalform, wenn alle Attribute nur atomare Werte beinhalten. Eindeutige Identifikation durch PrimärschlüsselRedundanzfreiheit Da hier Anomalien in der 1NF auftreten können, ist es sinnvoll, die Relation in die 2NF zu überführen. PNrVornameNameStraßePLZWohnortKNrKurs 15HugoMeierSchulstr Berlin44D 15HugoMeierSchulstr Berlin45G 6DetlefEulerMaiweg Trier47M 6DetlefEulerMaiweg Trier48I 6DetlefEulerMaiweg Trier49E

32 Michael AndriczkaDBMS32 3. Vom Modell zur Datenbank Normalform Eine Relation ist in der zweiten Normalform, wenn sie sich in der ersten Normalform befindet und jedes Nicht-Schlüssel-Attribut funktional vom Gesamtschlüssel abhängig ist, nicht aber von einzelnen Schlüsselteilen. Vermeidung der Anomalien der 1NF durch Aufteilung der Entitäten in seperate Tabellen. PNrVornameNameStraßePLZWohnortKNrKursBereich 15HugoMeierSchulstr Berlin44DSprache 15HugoMeierSchulstr Berlin45GGeisteswissenschaften 6DetlefEulerMaiweg Trier47MNaturwissenschaften 6DetlefEulerMaiweg Trier48INaturwissenschaften 6DetlefEulerMaiweg Trier49ESprache

33 Michael AndriczkaDBMS33 3. Vom Modell zur Datenbank Tabelle Lehrer Wie man sieht, entfallen somit die Zeilen mit unterschiedlichen Kursen derselben Lehrer. Die Kurse wurden in eine andere Tabelle ausgelagert, da sie nicht voll funktional von dem Schlüsselattribut PNR abhängen. Tabelle Kurse PNrVornameNameStraßePLZWohnort 15HugoMeierSchulstr Berlin 6DetlefEulerMaiweg Trier KNrKursBereich 44DSprache 45GGeisteswissenschaften 47MNaturwissenschaften 48INaturwissenschaften 49ESprache

34 Michael AndriczkaDBMS34 3. Vom Modell zur Datenbank Mit den Tabellen Lehrer und Kurse besitzt man nun zwei Tabellen, die nichts miteinander zu tun haben und somit nicht mehr den Zustand der 1NF genügen. Es muss also eine Tabelle geschaffen werden, die beide Tabellen verbindet, jedoch die Redundanzen der Tabelle in der 1NF vermeidet. PNr wurde zur Herstellung der referentiellen Integrität als Fremdschlüssel in die Tabelle Kurse eingefügt. KNrKursBereichPNr 44DSprache15 45GGeisteswissenschaften15 47MNaturwissenschaften6 48INaturwissenschaften6 49ESprache6

35 Michael AndriczkaDBMS Normalform Beim Betrachten der Tabelle Kurse in der 2NF treten folgende Anomalien auf: Bereichsnummer hat mehrmals den selben Wert, während sich der Wert des Primärschlüssels ändert Bereichsnamen treten mehrfach auf und müssten Änderungen in mehreren Datensätzen geändert werden transitive Abhängigkeit Transitive Abhängigkeit: Abhängigkeit zwischen nicht Schlüsselattributen 3. Vom Modell zur Datenbank KNrPNrKursBereichBereichsNr 4415DSprache1 4515GGeisteswissenschaften2 476MNaturwissenschaften6 486INaturwissenschaften6 496ESprache1

36 Michael AndriczkaDBMS36 3. Vom Modell zur Datenbank Codd erkannte das Problem oder möglichen Schwachpunkt der 2NF und entwickelte die 3NF. Eine Relation ist in der dritten Normalform, wenn sie sich in der ersten und in der zweiten Normalform befindet. Ferner sind keine funktionalen Abhängigkeiten zwischen Attributen erlaubt, die nicht als Schlüssel definiert sind. KNrPNrKursBereichsNr 4415D1 4515G2 476M6 486I6 496E1 BereichsNrBereich 1Sprache 2Geisteswissenschaften 6Naturwissenschaften

37 Michael AndriczkaDBMS37 3. Vom Modell zur Datenbank Normalisierte Tabellen: Tabelle Lehrer: Tabelle Kurse: Tabelle Bereich: KNrPNrKursBereichsNr 4415D1 4515G2 476M6 486I6 496E1 BereichsNrBereich 1Sprache 2Geisteswissenschaften 6Naturwissenschaften PNrVornameNameStraßePLZWohnort 15HugoMeierSchulstr Berlin 6DetlefEulerMaiweg Trier

38 Michael AndriczkaDBMS38 4. Schlussbetrachtung Jede in der Datenbank gespeicherte Information wird in solchen einfachen Tabellen festgehalten. Eine Tabelle hat immer einen fest strukturierten Aufbau aus Zeilen (Tupeln) und Spalten (Attributen), der einmalig beim Anlegen der Tabelle definiert wird und sich während der gesamten Lebensdauer der Tabelle nur mittels DDL-Befehlen ändern kann. Zur Kommunikation mit dem DBMS wird dem Endbenutzer in der Regel ein Programm zur Verfügung gestellt, welches mit dem DBS kommuniziert. Dieses Anwendungsprogramm bildet die Schnittstelle zwischen dem Benutzer und dem DBMS.


Herunterladen ppt "Michael AndriczkaDBMS1 Vorlesung DBMS Thema:Datenbanktechnologie - Von der Realwelt zur Datenbank - Michael Andriczka Sommersemester 2003."

Ähnliche Präsentationen


Google-Anzeigen