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 Teil II 1. Datenkonsistenz 2. Datensicherheit 3. Datenschutz 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 Datenintegrität Im Bereich der Datenintegrität (lat.: Makellosigkeit) werden Fragen behandelt, die sich mit der Korrektheit der Daten befassen. Architektur von DBS Externes Modell 1 Externes Modell 2 Konzeptionelles Modell Physisches Modell Integritätsziele Datenschutz (Zugriff durch Befugte im Rahmen der definierten Befugnis) Datenkonsistenz (Widerspruchsfreiheit der Daten zu sich selbst und den Vereinbarungen des konzeptionellen/der externen Datenmodelle) Datensicherheit (Daten zu jedem Zeitpunkt in korrekter Form nutzbar) Folie 2 1 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Eingabe Datenintegrität Datenschutz ethisch Datenbasis nach Konzeptionellem Modell Verwendung Datenkonsistenz logisch Datensicherheit physisch Betrieb Folie 3 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datenintegrität: Zielkonflikte hoch Datenintegrität Maßnahmen zur Datenintegrität gehen in der Regel zu lasten der Performance des DB-Systems gering gering hoch Performance hoch Maßnahmen zur Datensicherheit gehen in der Regel zu Lasten des Datenschutzes Datenschutz gering gering hoch Datensicherheit hoch Maßnahmen zur Datensicherheit gehen in der Regel zu Lasten des Datenkonsistenz Datenkonsistenz gering gering hoch Datensicherheit Folie 4 2 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 Teil II 1. Datenkonsistenz 2. Datensicherheit 3. Datenschutz 9. Data Warehouse: Konzept und Architektur 10. On-Line Analytical Processing (OLAP): Konzept und multidimensionale Datenmodellierung 5 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datenkonsistenz Konsistenz: Eine Datenbank ist konsistent, wenn ihr Inhalt mit der Beschreibung übereinstimmt und die gespeicherten Daten widerspruchsfrei sind. Redundanz: Redundanz ist in einem Datenbestand genau dann vorhanden, wenn ein Teil des Bestandes ohne Informationsverlust weggelassen werden kann. Ungewollte Redundanzen werden vermieden bei a) sorgfältigem Aufbau und strikter Umsetzung eines ISM b) genauer Anwendung der Normalformenlehre Folie 6 3 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datenkonsistenz: Beispiel Fachbereich 1 n Dozent Fachbereich (FB_Nr, FB_Name, FB_Leiter, Sem_Etat, Ges_Honorar, ...) Dozent (Doz_Nr, Doz_Name, Doz_Vname, Doz_Tel_Nr, Doz_Honorar, FB_Nr, ...) Konsistenzbedingungen bei der Dozenten-Neuaufnahme: KB_Doz_1: Dozentennummer muß eingegeben werden KB_Doz_2: Dozentennummer muß eindeutig sein KB_Doz_3: Fachbereichsnummer FB_Nr hat Gültigkeit KB_Doz_4: Telefonnummer ist numerisch KB_Doz_5: Honorar mindestens 400,- €, wenn verheiratet mind. 480,- € KB_Doz_6: Semesteretat des Fachbereichs wird nicht überschritten Folie 7 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Klassifizierung von Konsistenzbedingungen 1) Klassifizierung nach Objektmengenumfang Welche Objekte sind bei der Konsistenzprüfung zu beachten? a) Vergleich der eingegebenen Werte mit dem Bildungsgesetz einer Merkmalsklasse (KB_Doz_1 und KB_Doz_4) b) Vergleich der eingegebenen Werte mit dem Bildungsgesetzen mehrerer Merkmalsklassen (KB_Doz_5) c) Logischer Vergleich der eingegebenen Werte mit mehreren Informationsobjekten/ Datensätzen (KB_Doz_2) d) Einbeziehung von Merkmalswerten anderer Informationsobjektklassen/ Relationen (KB_Doz_3 und KB_Doz_6) 2) Klassifizierung nach Zeitpunkt der Konsistenzprüfung Wann muss der Datenbestand wieder konsistent sein? a) Primäre Konsistenzbedingungen: Nach jeder elementaren Operation (lesen, schreiben) ist der Datenbestand wieder konsistent b) Sekundäre Konsistenzbedingungen: (Quasizeitgleiche) Änderungen bei mehreren Datenobjekten bedingen temporäre Inkonsistenz (KB_Doz_6) 3) Klassifizierung nach der Reaktionsform a) stark - Weiterverarbeitung nur nach Korrektur b) schwach - Weiterarbeit wird zugelassen Folie 8 4 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Realisierung von Konsistenzbedingungen 1) Realisierung durch Anwenderprogramme Anwenderprogramm Prüfung DBMS Datenbasis Folie 9 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Realisierung von Konsistenzbedingungen 2) Realisierung durch das Datenbanksystem Anwenderprogramm DBMS Prüfung DD Datenbasis Folie 10 5 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Transaktionskonzept Transaktion: Folge von Operationen, die eine Datenbank ununterbrechbar von einem konsistenten Zustand in einen erneut konsistenten Zustand überführt. Attributswertänderungen in unterschiedlichen Relationen können logische Einheiten darstellen. Folie 11 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Forderungen an die Transaktionsverwaltung Atomizität: Jede Transaktion gilt als atomare Einheit. Somit sind Transaktionen vollständig oder gar nicht auszuführen. Konsistenz: Jede Transaktion erzeugt einen konsistenten Zustand. Isolation: Die von einer Transaktion benötigten Datenobjekte sind vor konsistenzgefährdender Nutzung durch andere Transaktionen geschützt. Dauerhaftigkeit: Ergebnisse einer Transaktion bleiben auch bei einem Systemausfall erhalten. Folie 12 6 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 13 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datensicherheit Gegenstand: Technische und organisatorische Maßnahmen, die dafür sorgen, daß Verluste, Beschädigungen, Verfälschungen von und unberechtigter Zugriff auf Daten vermieden wird. Zweck: Daten sollen zu jeder Zeit in korrekter Form verfügbar sein Organisatorische Maßnahmen: Zugangskontrollen zu Datenträgerarchiven etc. Technische Maßnahmen: Problem: Abwicklung von Mehrbenutzerbetrieb. Verhinderung gegenseitiger Blockierung unterschiedlicher Prozesse Systemverklemmung (Deadlock) Folie 14 7 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datensicherheit Unkritische Fälle: - Transaktionen lassen sich seriell abwickeln. - Transaktionen betreffen ungleiche Datenbereiche. - Transaktionen sind ausschließlich Leseoperationen. Kritischer Fall: - Mehrere Benutzer arbeiten gleichzeitig an einer Datenbasis, wobei mindestens ein Benutzer auch Daten verändern will. Folie 15 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Synchronisation von Zugriffen bei Mehrbenutzerbetrieb: Beispiel Arbeitsplatz 1 Lese aktuelle Teilnehmeranzahl und die Teilnehmerobergrenze für Kurs 4711 Wenn aktuelle Teilnehmeranzahl < Teilnehmerobergrenze Teilnehmeranzahl = Teilnehmeranzahl +1 Ersetze alte Teilnehmeranzahl durch neue Teilnehmeranzahl Lese aktuelle Teilnehmeranzahl und die Teilnehmerobergrenze für Kurs 4711 Wenn aktuelle Teilnehmeranzahl < Teilnehmerobergrenze Teilnehmeranzahl = Teilnehmeranzahl +1 Ersetze alte Teilnehmeranzahl durch neue Teilnehmeranzahl Zeit Arbeitsplatz 2 Folie 16 8 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Synchronisation von Zugriffen bei Mehrbenutzerbetrieb: Sperren Lösung des Problems: Mit dem Lesen der aktuellen Teilnehmeranzahl wird dieser Attributwert gegen alle Versuche anderer Transaktionen geschützt, ihn zu lesen oder zu ändern, bis der der neue Wert für die aktuelle Teilnehmeranzahl gespeichert ist. Sperrmechanismen (Locks) Arten von Sperrmechanismen: – Schreib- und Lesesperre – Schreibsperre (Bsp.: Veränderung eines Attributwertes, etwa Doz_Tel) Klassifizierung nach Umfang der betroffenen Daten: – Von der ganzen Datenbank... – ... bis zu einzelnen Attributwerten Normalfälle: – Sperre einer Relation bzw. Datei (File Locking) – Sperre eines Datensatzes (Record Locking) Folie 17 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Deadlocks bei parallelen Transaktionen Transaktion 1 Transaktion 2 Erfolgreiche Anforderung einer S-Sperre für Datenobjekt A Erfolgreiche Anforderung einer SL-Sperre für Datenobjekt B Erfolglose Anforderung einer S-Sperre für Datenobjekt B Erfolglose Anforderung einer SL-Sperre für Datenobjekt A Verfahren zur Auflösung von Deadlocks Graphenverfahren (Auflösung von Zyklen) Zeitlimit-Verfahren, Time Out (Am längsten bearbeitete Transaktion wird abgebrochen) Folie 18 9 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Rücksetzung auf definierte Zustände Transaktionsprinzip: Jede nicht abgeschlossene Transaktion muß wirkungslos bleiben (Rücksetzung=„Undo“) Recovery: Konzepte und Verfahren zur Sicherung des Wiederanlaufs von DB-Systemen Transaktion T1 Transaktion T2 Transaktion T3 Zeit Rücksetzungs-Zustand Systemzusammenbruch (z.B. Hardwarefehler) Folie 19 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 20 10 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datenschutz Datenschutz: Schutz personenbezogener Daten vor Missbrauch [Bundesdatenschutzgesetz u.a. Gesetze] Forderungen des Datenschutzgesetzes: – Ziel und Zweck jeder Speicherung klar erkennbar – Speicherbeschränkung kritischer Daten auf das Notwendigste – Sammlung personenbezogener Daten ist zu registrieren und von den betroffenen Personen einsehbar – Falsche Daten sind zu berichtigen – Nicht benötigte Daten sind zu löschen – Datenweitergabe nur nach besonderen Vorkehrungen Folie 21 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Ebenen des Datenschutzes Organisatorische Maßnahme Identitätskontrolle Zugriffskontrolle Verschlüsselung Datenbasis Folie 22 11 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Datenschutz: Maßnahmen zur Verhinderung unbefugten Zugriffs Organisatorische Maßnahmen (Diebstahlsicherung, bauliche Maßnahmen, Überwachung peripherer Geräte etc.) Zwang zur Identifikation – Benutzererkennung – Passwortabfrage Beschränkung der Zugriffsrechte – Zugriffsumfang: Beschränkung der Datenobjekte, mit denen Benutzer oder Benutzergruppen arbeiten dürfen – Zugriffsart: lesend, schreibend, lesend/schreibend – Beschränkung über Berechtigungsmatrix, Schlüssel-Schloß-Methode, Views (Datenbanksprache) Verschlüsselung des Datenmaterials (Kryptographie) Problem: Geschwindigkeitsverlust beim Entschlüsseln Folie 23 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Beispiel: Berechtigungsmatrix Objekte VorlesungsNutzer verzeichnis Kursplandaten Teilnehmer Grunddate n Teilnehmer Leistungsdaten DozentenHonorare Kursinteressent lesen Dozent lesen lesen (schreiben) schreiben eigene Kurse Anmeldebearbeiter lesen lesen schreiben Buchhalter lesen lesen lesen Folie 24 12 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Zusammenfassung: Anforderungen an Datenbanksysteme I Grundlegende Anforderungen – Speicherung und Verwaltung der Datenbestände – Mehrbenutzerbetrieb mit Zugriffsregelung Notwendige Anforderungen – Redundanzarmut bzw. -freiheit – Daten-Programm-Unabhängigkeit – Datenintegritätssicherung • Datenkonsistenz • Datensicherheit • Datenschutz Folie 25 Lehrstuhl für Wirtschaftsinformatik Prof. Dr. Roland Gabriel Zusammenfassung: Anforderungen an Datenbanksysteme II Weitere Anforderungen Allgemeingültige Anforderungen – Leistungsfähigkeit – Flexibilität – Benutzungsfreundlichkeit Anwendungsbezogene Anforderungen – – – – Modellkonstrukte Unterstützte Benutzerzahl Kosten und Wirtschaftlichkeit ... Allgemeine Anforderungen an Software Folie 26 13