Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten.

Ähnliche Präsentationen


Präsentation zum Thema: "Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten."—  Präsentation transkript:

1 Prof. Dr. T. Kudraß1 Einführung

2 Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten –Trennung von Daten und Programmen –Viele Benutzer greifen zeitgleich zu Aufgaben –komfortable und sichere Eingabe der Daten –persistente und Platz sparende Speicherung der Daten –Schneller und komfortabler Zugriff auf die Daten Grundsätzliches zu Datenbanken

3 Prof. Dr. T. Kudraß3 Datenbank Oft ungenaue Begriffsverwendung In der Regel ist ein Datenbanksystem (DBS) gemeint oder auch eine Datenbasis Datenbasis die in einem DBS (Datenbanksystem) nach einheitlichen Regeln persistent gespeicherten Daten die Daten werden in Dateien des File-Systems gespeichert Was ist eine „Datenbank“? (1)

4 Prof. Dr. T. Kudraß4 Datenbanksystem (DBS) In einem DBS werden Daten nach einheitlichen Regeln gespeichert (persistente Datenhaltung) und verwaltet. Alle Benutzer und Anwendungen können nach einheitlichen Regeln auf die gespeicherten Daten zugreifen. DBS = Datenbasis + DB-Verwaltungssystem (DBMS) Was ist eine „Datenbank“? (2)

5 Prof. Dr. T. Kudraß5 DBMS (Data Base Management System) Programme zur Verwaltung persistenter Daten (der sog. Datenbasis) liegt in der Funktionalität zwischen Anwendungsprogrammen und Betriebssystem effiziente Verwaltung großer Datenmengen ein einheitliches Datenmodell liegt zugrunde, mit dessen Konzepten alle Daten einheitlich beschrieben werden. Operationen und deskriptive Sprachen wie z.B. SQL: DDL (Data Definition Language), DML (Data Manipulation Language), DCL (Data Control Language) … Transaktionskonzepte und Mehrbenutzerbetrieb Datenschutz und Datensicherheit (vgl. Heuer/Saake: Datenbanken, 1995) Was ist eine „Datenbank“? (3)

6 Prof. Dr. T. Kudraß6 Data Dictionary Informationsbasis des DBMS zur Speicherung und Verwaltung der,Anwendungsdaten‘ Informationsbasis für DB-Benutzer zur Suche nach gespeicherten,Anwendungsdaten‘, Gewinnung von Strukturdaten und Diagnose von Leistungsproblemen enthält die Daten, die den Datenbestand beschreiben/ definieren: Metadaten/Verwaltungsdaten (Informationen über: Tabellennamen, Attributnamen, Datentypen, Beziehungen …) Metadatenbank arbeitet mit den gleichen Konzepten wie das DBMS selbst (Tabellen, Attribute, Beziehungen, gleiche Anfragesprache …) Was ist eine „Datenbank“? (4)

7 Prof. Dr. T. Kudraß7 Ein Datenmodell stellt einen allgemeinen Begriffsapparat zur Verfügung, der es gestattet, Realitätsausschnitte ohne Eingrenzung auf ein bestimmtes Sachgebiet zu modellieren. Mit dem Datenmodell werden die Datenobjekte und die Operatoren auf diesen Objekten festgelegt. Das Datenmodell ist somit analog zu einer Programmier- sprache, die Datentypen und Funktionen werden mit Mitteln der Datenbanksprache beschrieben. (Vossen, 1999) Was ist ein Datenmodell?

8 Prof. Dr. T. Kudraß8 Flache Dateien (vor DB-Zeitalter/ohne DB) Hierarchische Datenbanken Netzwerkdatenbanken Relationale und objektrelationale Datenbanken Objektorientierte Datenbanken Nach dem Typ des Datenmodells: (und der zeitlichen Entwicklung) Klassifizierung von Datenbanken

9 Prof. Dr. T. Kudraß9 Die Daten und ihre Beziehungen werden in Tabellen (Relationen) abgebildet. Eine Tabelle ist horizontal in Zeilen und vertikal in Spalten aufgeteilt. Jeder Datensatz wird als Zeile dargestellt. Die Zeilen heißen Tupel und die Spaltenüberschriften Attribute. Relationale Datenbank

10 Prof. Dr. T. Kudraß10 Informationssystem vs. Datenbanksystem Ein Informationssystem (IS) besteht aus Menschen und Maschinen, die Informationen erzeugen und/oder benutzen und die durch Kommunikationsbeziehungen miteinander verbunden sind. Ein rechnergestütztes Informationssystem (CIS) ist ein System, bei dem die Erfassung, Speicherung und/oder Transformation von Informationen durch den Einsatz von EDV teilweise automatisiert ist. Hardware Datenbanksystem Anwendungssysteme Betriebssystem CIS IS

11 Prof. Dr. T. Kudraß11 Beispiele für Informationssysteme Universitätsdatenbank –Objekte: Fachbereiche, Studenten, Professoren, Mitarbeiter, Vorlesungen, Prüfungen –Anwendungen:  Immatrikulation  Ausfertigung von Studienbescheinigungen  Stundenplanerstellung  Raumbelegung  Ausstellung von Zeugnissen  Statistiken Bank-Informationssystem –Objekte: Partner (Kunden, Geschäftspartner), Produkte (bestehend aus Features), Tarife, Standardkosten, Konten, Finanzinstrumente, Geschäftsprozesse (Beschreibungen und Logs), Referenzdaten (z.B. Kalender) –Anwendungen:  Buchung von Zahlungsvorgängen auf verschiedenen Konten  Einrichten und Auflösen von Konten  Zinsberechnung und Verbuchung  Personalverwaltung (Gehaltsabrechnung)  Bereitstellung von Statistiken über Kundenverhalten zu Marketing- Zwecken

12 Prof. Dr. T. Kudraß12 Typen von Informationssystemen Information Retrieval (Recherche-Systeme) Kommerzielle EDVWiss.-techn. Anwendungen große Datenmengen (unformatiert) große Datenmengen (formatiert) Einfache Daten- struktur/Datentypen Kleine Datenmengen, numerische Daten Komplexe SuchalgorithmenEinfache AlgorithmenKomplexe Algorithmen Retrieval-orientiertUpdate-orientiert, transaktionsorientiert prozeßorientiert Non-Standard-Anwendungen große Datenmengen (formatiert und unformatiert) Komplexe Datentypen Komplexe Algorithmen Komplexe Transaktionen Datenbankmanagementsysteme

13 Prof. Dr. T. Kudraß13 Entwicklung der Datenbanken (1)

14 Prof. Dr. T. Kudraß14 Entwicklung der Datenbanken (2)

15 Prof. Dr. T. Kudraß15 Entwicklung der Datenbanken (3)

16 Prof. Dr. T. Kudraß16 Vorteile eines DBMS Datenunabhängigkeit Effizienter Zugriff Verminderte Entwicklungszeit Kontrolle der Datenintegrität Zugriffskontrolle auf die Daten Datensicherheit und Zugriffskontrolle auf die Daten (Korrektheit bei fehlerhaftem Ablauf einzelner Anwendungen und System- absturz) Einheitliche Datenadministration Unterstützung von Nebenläufigkeit (Concurrency Control) Recovery-Fähigkeiten (Korrektheit bei fehlerhaftem Ablauf einzelner Anwendungen und Wiederherstellung der DB nach System-Crash)

17 Prof. Dr. T. Kudraß17 Unter Datenunabhängigkeit versteht man die Unabhängigkeit von Anwendungsprogrammen und den Daten, die die Anwendungsprogramme benötigen. Datenunabhängigkeit (1)

18 Prof. Dr. T. Kudraß18 Welche Vorteile hat die Datenunabhängigkeit? Weniger Redundanz keine inkonsistenten Daten Anpassungsfähigkeit Arten der Datenunabhängigkeit vertikal und logisch: Anwenderprogramme von den Daten horizontal und logisch: Anwenderprogramme untereinander physisch: Unabhängig von der physikalischen Speicherung Datenunabhängigkeit (2)

19 Prof. Dr. T. Kudraß19 Sprachebenen und Sprachklassen

20 Prof. Dr. T. Kudraß20 Kategorien von Datenbankbenutzern

21 Prof. Dr. T. Kudraß21 Datenbankdesign, Anlegen der Datenbank Softwareinstallation und -wartung Speicherplatzverwaltung Implementierung von Sicherheitsmechanismen Laden von Daten Backup und Recovery. Reorganisation von Datenbeständen Systembeobachtung und-Tuning Aufgaben des Datenbankadministrators

22 Prof. Dr. T. Kudraß22 Systemanalyse Entwurf des konzeptionellen Datenbankmodells, z.B. Erstellung eines ER-Modells Erstellung einer kompletten Aufgabenbeschreibung Abstimmung mit bestehenden Applikationen und Einbindung in eine komplexes Datenmodell Ad-Hoc-Abfragen Beobachtung der Datenbank und der Entwicklung der Datenmenge Beantwortung von Benutzerfragen, die nicht fest programmiert werden sollen Bedienung von SQL-Werkzeugen Aufgaben des Datenbankentwicklers (1)

23 Prof. Dr. T. Kudraß23 Anwendungsentwicklung Entwicklung von Masken Entwicklung von Reports, schriftlichen Dokumenten Programmiersprache: 4 GL-Sprachen, wie PL/SQL von ORACLE Erstellung von Datenbankprozeduren und Datenbanktriggern in Datenbank Anbindung der Datenbank ans INTERNET, z.B. mit JDBC und Java Aufgaben des Datenbankentwicklers (2)

24 Prof. Dr. T. Kudraß24 Benutzung der vom Datenbankentwickler erstellten Programme Benutzung von QBE-Werkzeugen (Query by Example) zur Beantwortung von Ad-Hoc-Abfragen Aufgaben des Datenbankendbenutzers

25 Prof. Dr. T. Kudraß25 Datenbankarchitektur

26 Prof. Dr. T. Kudraß26 ANSI-3-Ebenen-Modell

27 Prof. Dr. T. Kudraß27 Flughafenbetrieb Externe Ebene Benutzersicht auf den Flugbetrieb, also z.B. Unterstützung von Buchung, Auswahl und Reservierung der Plätze die Ausgabe der Flugscheine mehr und mehr über das INTERNET Beispiel zum ANSI-3-Ebenen-Modell

28 Prof. Dr. T. Kudraß28 Konzeptionelles Schema

29 Prof. Dr. T. Kudraß29 Das Datenbankschema besteht bei einer relationalen Datenbank aus dem Relationenschema, also den Tabellen, die in der Datenbank abgelegt werden sollen. Sitzplatz Flug Datenbankschema

30 Prof. Dr. T. Kudraß30 Physische Speicherstruktur der Daten: Indizes (z.B. Baum- Baumstruktur) Hash-Zugriff Heap Indizes Interne Ebene Beschreibt die Daten in Form von Datensätzen (Records), spezifischen Zugriffspfaden, die Abbildung der logischen Records auf die Speicherstrukturen (physische Records, Seiten)

31 Prof. Dr. T. Kudraß31 Concurrency Control Nebenläufige Ausführung von Anwendungsprogrammen wichtig für Performance –Nebenläufige Arbeit wichtig für gute CPU-Auslastung Überlappende Aktionen von verschiedenen Programmen können zu Inkonsistenz führen z.B. Berechnung eines Kontostandes durch eine Transaktion und gleichzeitige Ausführung einer Überweisung DBMS garantiert Isolation und Konsistenz Isolation Illusion einer Transaktion, allein Zugriff auf die Datenbank zu haben. Eine Transaktion sieht nur einen konsistenten Zustand der Datenbank. Konsistenz Korrekter Ablauf einer Transaktion

32 Prof. Dr. T. Kudraß32 Transaktionskonzept Transaktion –Atomare Sequenz von Datenbank-Aktionen (read / write) Atomizität = All or Nothing Jede Transaktion hinterläßt die DB in einem konsistenten Zustand, wenn diese bei Transaktionsbeginn schon konsistent war. –Benutzer können Integritätsbedingungen auf den Daten formulieren, die vom DBMS kontrolliert werden. –Das DBMS “versteht“ nicht die Semantik der Daten  Benutzer ist für den korrekten Ablauf einer Transaktionen verantwortlich –DBMS garantiert, daß die verschachtelte Ausführung einer Menge von Transaktionen {T1,..., Tn} äquivalent zu irgendeiner seriellen Ausführung T1... Tn sind.

33 Prof. Dr. T. Kudraß33 Datensicherheit DBMS sichert Atomizität auch, wenn das System mitten in einer Transaktion abstürzt Idee: Protokollierung aller Aktionen (Logging), die vom DBMS ausgeführt werden während der Ausführung der Transaktionen –Vor dem Ändern der DB wird der entsprechende Log-Eintrag auf einen sicheren Platz geschrieben. –Nach einem Crash werden die Effekte von teilweise ausgeführten Transaktionen zurückgesetzt (undo) Logging von –Write (alter und neuer Wert) durch Ti –Commit oder Abort von Ti Logs werden oft zusätzlich gesichert auf einem anderen Datenträger Alle Aktivitäten von Logging und Concurrency Control werden transparent durch das DBMS behandelt.

34 Prof. Dr. T. Kudraß34 Zusammenfassung Vorteile eines Datenbanksystems –Integrierter Datenbestand Vermeidung von Redundanz –Konsistenz, höhere Qualität des Datenbestandes –Einheitliche Mechanismen für Datenschutz, Datensicherheit (Recovery) und Nebenläufigkeit (Concurrency Control) –Physische und logische Datenunabhängigkeit –Leichtere und schnellere Programmentwicklung und -wartung durch einheitliche und explizite Strukturdarstellung, Nutzung von 4GL, Form- und Reportgeneratoren –Optimierbare Anfragesprache (Query Language) Nachteile eines Datenbanksystems –General-Purpose Software oft weniger effizient als spezialisierte Software –Bei konkurrierenden Anforderungen kann DBS nur für einen Teil der AP optimiert werden –Kosten: DBMS und zusätzliche Hardware –Hochqualifiziertes Personal (DB-Administration) –Verwundbarkeit durch Zentralisierung (Ausweg: Verteilung)


Herunterladen ppt "Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten."

Ähnliche Präsentationen


Google-Anzeigen