Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Gliederung Datenbanksysteme 5. Datenbanksprachen 1. Datendefinitionsbefehle 2. Datenmanipulationsbefehle 3. Grundlagen zu SQL 6. Metadatenverwaltung 7. DB-Architekturen 1. 3-Schema-Modell 2. Verteilte und föderierte Datenbanksysteme 8. Datenintegrität 1. Datenkonsistenz 2. Datensicherheit 3. Datenschutz Teil II 9. Data Warehouse: Konzept und Architektur 10. On-Line Analytical Processing (OLAP): Konzept und multidimensionale Datenmodellierung 1 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Metadatenverwaltung relationaler Datenbanksysteme Data Dictionary Systeme: Aufgaben – Entwicklungsumgebung zum Aufbau von Informationssystemen • Bestandteil von CASE-Systemen • Repository – Integraler Bestandteil eines Datenbankmanagementsystems – Endbenutzerunterstützung Folie 2 1 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Gliederung Datenbanksysteme 5. Datenbanksprachen 1. Datendefinitionsbefehle 2. Datenmanipulationsbefehle 3. Grundlagen zu SQL 6. Metadatenverwaltung 7. DB-Architekturen 1. 3-Schema-Modell 2. Verteilte und föderierte Datenbanksysteme 8. Datenintegrität 1. Datenkonsistenz 2. Datensicherheit 3. Datenschutz Teil II 9. Data Warehouse: Konzept und Architektur 10. On-Line Analytical Processing (OLAP): Konzept und multidimensionale Datenmodellierung 3 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Allgemeine Eigenschaften von Datenbanksystemen Unterschiedliche Benutzer mit verschiedenen Anforderungen können mit dem Datenbestand (gleichzeitig) arbeiten Das Datenbanksystem übernimmt den eigentlichen Datenzugriff und gewährt den Zugang nur berechtigten Benutzern Die abgelegten Daten sind als gemeinsame Basis abgespeichert Folie 4 2 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Komponenten eines Datenbanksystems Datenbank DV-System – Enthält die “Problemdaten” Datenbanksystem (DBS) Datenbankverwaltungssystem (DBVS, DBMS) – Zentrale Verwaltung und Kontrolle der Datenbank Datenbankkommunikationsschnittstelle (DBKS) – Einzige Schnittstelle zu Benutzern (Anwendern, Administratoren) und Anwendungsprogrammen Datenbank DB Datenbankverwaltungssystem DBVS Datenbankkommunikationsschnittstelle DBKS Anwendungsprogramme Benutzer Folie 5 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datenbankverwaltungssystem Implementierung des Datenmodells über eine Datenbanksprache Datenbanksystem (DBS) DB Verwaltung, Steuerung und Kontrolle der Daten Datenmanipulation über festgelegte Datenbankoperationen Bereitstellen der Datenbanksprache DBVS Programme (Software) zur Verwaltung, Steuerung und Kontrolle der Daten in der Datenbank (DB) und der Kommunikation über die Kommunikationsschnittstelle (DBKS) DBKS Folie 6 3 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datenbankkommunikationsschnittstelle Kommunikation mit … – Dem Computersystem über das Betriebssystem – Anwendungsprogrammen, die auf das DBS zugreifen – Datenbank-Benutzern • Anwendungs-programmierer • Datenbankadministratoren • Datenadministratoren • Endbenutzer Datenbanksystem (DBS) DB DBVS DBKS Betriebssystem Datendefinitionssprachen (DDL) Datenmanipulationssprachen (DML) DB-Entwickler Kommunikation über … – Datenbanksprachen • Data Definition Language • Data Manipulation Language • ... DB-Administrator / Datenadministrator Anwendungsprogramme Benutzer Folie 7 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Gliederung Datenbanksysteme 5. Datenbanksprachen 1. Datendefinitionsbefehle 2. Datenmanipulationsbefehle 3. Grundlagen zu SQL 6. Metadatenverwaltung 7. DB-Architekturen 1. 3-Schema-Modell 2. Verteilte und föderierte Datenbanksysteme 8. Datenintegrität 1. Datenkonsistenz 2. Datensicherheit 3. Datenschutz Teil II 9. Data Warehouse: Konzept und Architektur 10. On-Line Analytical Processing (OLAP): Konzept und multidimensionale Datenmodellierung 8 4 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Architektur von Datenbanksystemen ANSI/X3/SPARC-Modell, Drei-Ebenen-Modell, Drei-Schema-Architektur Ebenen Standards Planning and Requirements Commitee (SPARC) of the American National Standards Institute (ANSI) – Konzeptionelle Ebene – Interne Ebene – Externe Ebene Ziel: Logische und physische Unabhängigkeit zur Sicherstellung von Flexibilität and Portabilität der Datenbank Veränderungen einer Ebene sollen sich nicht zwangsläufig auf die anderen Ebenen auswirken Trennung/Verteilung von Zuständigkeiten (z.B. Anwendungen, Datenspeicherung, Hardware) Folie 9 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Architektur von Datenbanksystemen 3 - Schichten Konzept (ANSI-Study Group on Data Base Management Systems 1975) Sichten (Views) Externe Ebene Logische Datenmodell Konzeptionelle Ebene Modell der Datenbasis Interne Ebene Benutzer(gruppen)spezifische Sicht Anwendungsunabhängige, globale Datensicht Datenorganisation auf den Speichern Folie 10 5 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel 3-Schichten-Architektur Benutzer/ Benutzer/ Benutzer/ Anwenderprogramm Anwenderprogramm Anwenderprogramm Externes Modell 1 Transformationsregeln Semantisches Modell Benutzergerechte (Teil-) Modelle Externes Modell 2 Transformationsregeln Konzeptuelles Modell Logisches Modell - durch DDL beschrieben - Integritätsregeln Transformationsregeln Organisation des Zugriffs auf externe Datenspeicher Internes Modell Transformationsregeln: definieren die Abbildung zwischen den Ebenen Speicher Folie 11 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Externe Ebene Das Grundprinzip I Anmeldung Name Vorname Geb.dat Wohnort Telefon Kursnr. Kursbez. Ort Zugriffsmöglichkeiten sind durch die Struktur der jeweiligen Datenmanipulationssprache bzw. Anwendung vorgegeben. VHS Schulstadt ja Barzahlung ? Kreditinstitut Bankleitzahl Kontonummer Zeit nein Neue Anmeldung Anmeldung löschen Hauptmenü Anwendungsprogramm Belnea i Trennung von Anwendungssicht und Daten T_nr T_Name … T_Kredit T_Tel … T_Kurs Benutzer sieht die Daten so, wie er sie benötigt 123 Müller … Deutsche Bank 1234/4598 … 4711 234 Meier … Deutsche Bank 2348/6975 … 4718,4713 Organisation der Daten auf den Speichermedien bleibt für den Benutzer unsichtbar 432 Schmitz … Commerzbank 5677/5665 … 4323,4711 567 Krause … Sparkasse 7891/4688 … 4712 Folie 12 6 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Das Grundprinzip II Interne Ebene – Aufgabe von Internen Modellen: Beschreibung, wie logisch beschriebene Daten auf Speichern abgelegt werden und welche Zugriffsmöglichkeiten bestehen. Abbildung der physischen Datenorganisation Ziele: Dazu gehören: minimale – Angaben zum Aufbau Zugriffszeiten gespeicherter Sätze – Zugriffsmethoden auf diese Sätze – Zusätzliche Zugriffspfade (Indizes, Verkettungen optimale Speicherausnutzung Folie 13 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Interne Ebene Interne Ebene: Modellaspekte der physischen Speicherung Beispielfrage: Optimale Materialisierung von Attributwerten: Virtuelle Felder – Nicht jeder Attributwert wird abgespeichert sondern nur im Bedarfsfall aus den Transformationsregeln abgeleitet. – Beispiel: Gesamtsemesterbeitrag eines Teilnehmers läßt sich aus den Einzelbeiträgen errechnen – Kriterien: Integrität, Performance, Speicherplatzverbrauch usw. Folie 14 7 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Zugriff auf Datenbankobjekte I Anwendungsprogramm sendet Befehl an DBMS, ein bestimmtes Objekt zu lesen. DBMS holt sich Informationen zu den Objekttypen aus dem externen Schema. DBMS stellt über die Transformationsregeln (externes/konzeptionelles Schema) fest, welche konzeptionellen Objekte und Beziehungen benötigt werden. Aus den Transformationsregeln konzeptionelles/internes Schema leitet das DBMS ab, welche physischen Objekte zu lesen sind, und ermittelt die entsprechenden Zugriffspfade. Folie 15 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Zugriff auf Datenbankobjekte II DBMS übergibt dem Betriebssystem die Nummern der zu lesenden Speicherblöcke. Betriebssystem übergibt die Blöcke an das DBMS in einem Systempuffer. DBMS übergibt das externe Objekt dem Anwendungsprogramm im Arbeitsspeicher. Anwendungsprogramm verarbeitet die übergebenen Daten. Mit Hilfe der Transformationsregeln stellt das DBMS aus den vorhandenen physischen Sätzen das externe Objekt zusammen. Folie 16 8 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datenbanksysteme als Client-Server-Systeme I Server Client Client Server Präsentation Applikation Datenbank Mehrstufige Konzepte: Präsentation Applikation Datenbank Folie 17 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datenbanksysteme als Client-Server-Systeme II Server Client Select * from Teilnehmer where Ort=„Bochum“ Teilnehmer aus Bochum Selektion Teilnehmer Folie 18 9 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Gliederung Datenbanksysteme 5. Datenbanksprachen 1. Datendefinitionsbefehle 2. Datenmanipulationsbefehle 3. Grundlagen zu SQL 6. Metadatenverwaltung 7. DB-Architekturen 1. 3-Schema-Modell 2. Verteilte und föderierte Datenbanksysteme 8. Datenintegrität 1. Datenkonsistenz 2. Datensicherheit 3. Datenschutz Teil II 9. Data Warehouse: Konzept und Architektur 10. On-Line Analytical Processing (OLAP): Konzept und multidimensionale Datenmodellierung 19 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Verteilte Datenbanken I Unter einer verteilten Datenbank versteht man eine virtuelle Datenbank, deren Komponenten physisch in einer Anzahl unterschiedlicher, real existierender Datenbankmanagement-Systeme abgebildet werden Sammlung von Daten, die – – – – aufgrund gemeinsamer, verknüpfender Eigenschaften dem System angehören, auf verschiedenen Rechnern eines Netzwerkes verteilt sind, wobei jeder Rechner seine eigene Datenbank besitzt und autonom lokale Aufgaben abwickeln kann. Folie 20 10 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Verteilte Datenbanken II Transparenz Dem Anwender erscheint die Datenbank als logische Einheit, ohne dass er bei seinen Operationen auf den Verteilungsort Rücksicht nehmen muß. Unabhängigkeit der Anwendungsprogramme vom physischen Speicherort Folie 21 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Referenzarchitektur verteilter Systeme auf Schema-Ebene Globales Schema Enthält Definitionen aller Daten, so als wäre die DB nicht verteilt Fragmentierungsschema Aufteilung globaler Relationen Zuordnungsschema Physikalische Zuordnung der Fragmente innerhalb des Netzes Lokales Schema Lokales Schema DBMS 1 DBMS 2 Lokale DB Lokale DB Abbild der Fragmente auf eine lokale DB Folie 22 11 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Beispiel einer horizontalen Partitionierung TEIL.NR NAME POSTLEITZAHL WOHNORT 3275 Lustig 41564 Kaarst 3389 Hurtig 46487 Wesel 2020 Flott 41564 Kaarst 2118 Schnell 41352 Korschenbroich 4001 Rasch 41460 Neuss 2311 Froh 41066 Mönchengladbach TEIL.NR NAME POSTLEITZAHL WOHNORT 3275 Lustig 41564 Kaarst 3389 Hurtig 46487 Wesel 2020 Flott 41564 Kaarst 4001 Rasch 41460 Neuss TEIL.NR NAME POSTLEITZAHL WOHNORT 2118 Schnell 41352 Korschenbroich 2311 Froh 41066 Mönchengladbach Teilnehmer VHS Kaarst - Korschenbroich Teilnehmerpartition Kaarst Teilnehmerpartition Korschenbroich Folie 23 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Beispiel einer vertikalen Partitionierung TEILNEHMER-NR TEILNEHMER-NR NAME NAME VORNAME KURS-NR POSTLEITZAHL DOZ-NR ORT PRUEF-DATUM STRASSE PRUEF-NOTE HAUS-NR TELEFON-NR KURS-NR DOZ-NR PRUEF-DATUM TEILNEHMER-NR PRUEF-NOTE SOLL-BETRAG SOLL-BETRAG IST-BETRAG IST-BETRAG ZAHLUNGSART ZAHLUNGSART KTO-NR KTO-NR BANKLEITZAHL BANKLEITZAHL Folie 24 12