Datenbanksysteme II. Vorlesung: PD Dr. Peer Kröger



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

Sommersemester Vorlesung: Dr. Matthias Schubert

Grundlagen von Datenbanken

Kapitel 1: Einführung

Datenbanken. Prof. Dr. Bernhard Schiefer.

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

Kapitel 3: Datenbanksysteme

Themen. M. Duffner: Datenbanksysteme

Software-Engineering und Datenbanken

Einführung. Kapitel 1 2 / 508

Allgemeines zu Datenbanken

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme

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

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

Einführung. Informationssystem als Abbild der realen Welt

Datenbanksysteme 1. Organisation. Prof. Stefan F. Keller. Ausgabe Copyright 2005 HSR SS 2005

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Die Grundbegriffe Die Daten Die Informationen

Kapitel 6 Anfragebearbeitung

SDD System Design Document

WS 2002/03. Prof. Dr. Rainer Manthey. Institut für Informatik III Universität Bonn. Informationssysteme. Kapitel 1. Informationssysteme

Datenbanken (WS 2015/2016)

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

Datenbanken. Einführung. Tobias Galliat. Sommersemester 2012

Vorlesung Datenbankmanagementsysteme. Vorlesung Datenbankmanagementsysteme Überblick M. Lange, S. Weise Folie #0-1

Einführung in Datenbanken

Definition Informationssystem

7. Übung - Datenbanken

Andreas Heuer Gunter Saake Kai-Uwe Sattler. Datenbanken. kompakt

Prüfungsberatungs-Stunde Datenbanksysteme 1 (Dbs1)

Kapitel 3: Datenbanksysteme 3.1 Einleitung

SharePoint Demonstration

Relationale Datenbanken Datenbankgrundlagen

Sichten II. Definition einer Sicht. Sichten. Drei-Ebenen-Schema-Architektur. Vorteile Vereinfachung von Anfragen Strukturierung der Datenbank

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Datenbanken I - Einführung

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse?

DB2 Kurzeinführung (Windows)

Architektur Verteilter Systeme Teil 2: Prozesse und Threads

Kapitel 10 Aktive DBMS

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee Berlin Tel.:+49(0) Fax.:+49(0)

Gliederung Datenbanksysteme

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

Integration verteilter Datenquellen in GIS-Datenbanken

Übersicht über Datenbanken

Einleitung. Literatur. Pierre Fierz. Architektur von Datenbanksystemen. Physische Datenunabhängigkeit. Der Datenbank Administrator (DBA) 1.

SWT II Projekt. Chat - Anwendung. Pflichtenheft 2000 SWT

Einführung. Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009

Ein Schlüssel ist eine Menge von Attributen (also eines oder mehrere), die eine Datenzeile (Tupel) einer Tabelle eindeutig identifiziert

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Kapitel 14 Verteilte DBMS

Inhalt der Vorlesung. 1 Datenmodellierung (Entity-Relationship Modell) 2 Das relationale Modell. 3 Relationenalgebra. 4 Datenbanksprache (SQL)

Software Engineering. Bibliographisches Institut & F. A. Brockhaus AG, Mannheim; Spektrum Akademischer Verlag GmbH, Heidelberg, 2003

How to do? Projekte - Zeiterfassung

Acht Gute Gründe für Integration und einen Content Backbone

Bedienungsanleitung für den Online-Shop

Vorlesung Nr.9: Der Inhalt

Informatikgrundlagen (WS 2015/2016)

Artenkataster. Hinweise zur Datenbereitstellung. Freie und Hansestadt Hamburg. IT Solutions GmbH. V e r s i o n

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw,

Prüfungszeiten für den Studiengang Bachelor of Science in Psychologie

Einteilung von Datenbanken

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Java Enterprise Architekturen Willkommen in der Realität

1 Mathematische Grundlagen

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Teil 1: IT- und Medientechnik

Nach der Installation der Multi-User-Version von CUBUS können Sie mit dem Administrator- Tool Benutzergruppen und Benutzer einrichten.

Die Entwicklung eines Glossars (oder eines kontrollierten Vokabulars) für ein Unternehmen geht üblicherweise in 3 Schritten vor sich:

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Bitte geben Sie hier den Benutzer cubusadmin und das gleichnamige Passwort ein.

Systeme 1. Kapitel 10. Virtualisierung

Gliederung Datenbanksysteme

Einführung in die Programmierung

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

Kapitel 2 Transaktionsverwaltung

Integrierte IT Portfolioplanung

Robot Karol für Delphi

Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich. Softwaretechnik I

Berechtigungsgruppen TimeSafe Leistungserfassung

Best Practice Infor PM 10 auf Infor Blending

E-Commerce Recht Organisatorisches

Neues Modul für individuelle Anlagen. Änderung bei den Postleitzahl-Mutationen

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Profilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken

Anforderungen an die HIS

Thin versus Fat Clients

Modulbeschreibung Fakultät Gebäudetechnik und Informatik gültig ab WS 2010/11

Softwareentwicklungspraktikum Sommersemester Grobentwurf

Technische Grundlagen von Netzwerken

Teil VI. Datenbanken

Quick Guide Mitglieder

Gesicherte Prozeduren

Transkript:

Datenbanksysteme II Sommersemester 2012 Vorlesung: PD Dr. Peer Kröger Dieses Skript basiert auf den Skripten zur Vorlesung Datenbanksysteme II an der LMU München von Prof. Dr. Christian Böhm (Sommersemester 2007), PD Dr. Peer Kröger (Sommersemester 2008) und PD Dr. Matthias Schubert (Sommersemester 2009) http://www.dbs.ifi.lmu.de/cms/datenbanksysteme_ii_12 Team Vorlesungsteam PD Dr. Peer Kröger Oettingenstr. 67, Zimmer F 108 Tel. 089/2180-9327 Sprechstunde: Di, 10 00-11 00 Thomas Bernecker Oettingenstr. 67, Zimmer F 104 Tel. 089/2180-9321 2

Organisation Termine Vorlesung: Do, 9.30-12.00 Uhr Raum B001 (Oettingenstr. 67) Übung: Mo, 14.00-16.00 Uhr Raum 211 (Amalienstr. 73a) Mo, 16.00-18.00 Uhr Raum 112 (Amalienstr. 73a) Di, 14.00-16.00 Uhr Raum 018 (Amalienstr. 73a) Di, 16.00-18.00 Uhr Raum A 105 (Amalienstr. 17) Mi, 14.00-16.00 Uhr Raum D 4c (Ludwigstr. 25) Mi, 16.00-18.00 Uhr Raum 018 (Amalienstr. 73a) Anmeldung für den Übungsbetrieb auf der Homepage http://www.dbs.ifi.lmu.de/cms/datenbanksysteme_ii_12 d / /D t b t 3 Organisation Infos Vorlesungshomepage http://www.dbs.ifi.lmu.de/cms/datenbanksysteme_ii_12 Die Informatiker http://www.die-informatiker.net/forum/dbs ECTS-Punkte- bzw. Scheinerwerb Zulassung: Anmeldung für den Übungsbetrieb UniWorX: https://uniworx.ifi.lmu.de/ Prüfung: Klausur 4

Inhalt Inhalt der Vorlesung (Planung) 1. Einführung 2. Transaktionsverwaltung 3. Mehrbenutzersynchronisation 4. Fehlerbehandlung 5. Relationale Anfragebearbeitung 6. Data Warehouses 5 Literatur Die Vorlesung orientiert sich nicht an einem bestimmten Lehrbuch. Empfehlenswert sind aber u.a... A. Kemper, A. Eickler: Datenbanksysteme. Eine Einführung Oldenbourg, 6. Auflage (2006). R. Elmasri, S. B. Navathe: Grundlagen von Datenbanksystemen Pearson Studium, 3. Auflage (2004). G. Saake, A. Heuer, K.-U. Sattler: Datenbanken: Implementierungstechniken mitp, 2. Auflage (2005). 6

Kapitel 1 Einführung Vorlesung: PD Dr. Peer Kröger Dieses Skript basiert auf den Skripten zur Vorlesung Datenbanksysteme II an der LMU München von Prof. Dr. Christian Böhm (Sommersemester 2007), PD Dr. Peer Kröger (Sommersemester 2008) und PD Dr. Matthias Schubert (Sommersemester 2009) http://www.dbs.ifi.lmu.de/cms/datenbanksysteme_ii_12 1 Einführung 1.1 Grundbegriffe 1.2 Architekturen von DBMS 8

1.1 Grundbegriffe Ein Datenbanksystems (DBS) besteht aus DB-en (kommunizieren mit DBMS) DBS: Datenbanksystem (DB + DBMS) DBMS: Datenbank- Management-System (Software zur Verwaltung) DB: Datenbank (eigentliche Datensammlung) sprogramme, Benutzer DBMS (Software, Schnittstellen) DB (Daten, Schemata) 9 1.1 Grundbegriffe Liste von 9 Anforderungen (Edgar F. Codd, `82) 1. Integration Einheitliche Verwaltung aller von en benötigten Daten. Redundanzfreie d Datenhaltung des gesamten Datenbestandes t 2. Operationen Operationen zur Speicherung, zur Recherche und zur Manipulation der Daten müssen vorhanden sein 3. Data Dictionary Ein Katalog erlaubt Zugriffe auf die Beschreibung der Daten 4. Benutzersichten Für unterschiedliche en unterschiedliche Sicht auf den Bestand 5. Konsistenzüberwachung Überwachung der Korrektheit der Daten bei Änderungen 10

1.1 Grundbegriffe 6. Zugriffskontrolle Ausschluss unautorisierter Zugriffe 7. Transaktionen Zusammenfassung einer Folge von Änderungsoperationen zu einer Einheit, deren Effekt bei Erfolg permanent in DB gespeichert wird 8. Synchronisation Unbeabsichtigte gegenseitige Beeinflussungen im Mehrbenutzerbetrieb werden vermieden 9. Datensicherung Nach Systemfehlern (d.h. Absturz) oder Medienfehlern (defekte Festplatte) wird die Wiederherstellung ermöglicht (im Gegensatz zu Datei-Backup Rekonstruktion des Zustands der letzten erfolgreichen TA) 11 1.1 Grundbegriffe Drei-Ebenen-Architektur zur Realisierung von physischer und logischer Datenunabhängigkeit (nach ANSI/SPARC) A 1 A 2 A 3 A 4 A 5 sgruppen Ext. Schema 1 Ext. Schema 2 Ext. Schema 3 Externe Ebene Logische Datenunabhängigkeit Logisches Schema Konzeptionelle Ebene Physische Datenunabhängigkeit Internes Schema Interne Ebene 12

1.1 Grundbegriffe Externe Ebene Sammlung der individuellen Sichten aller Benutzer- bzw. sgruppen in mehreren externen Schemata Benutzer soll keine Daten sehen, die er nicht sehen will (Übersichtlichkeit) oder nicht sehen darf (Datenschutz) Beispiel: Klinik-Pflegepersonal benötigt andere Aufbereitung der Daten als die Buchhaltung Datenbank wird damit von Änderungen und Erweiterungen der Anwenderschnittstellen abgekoppelt (logische Datenunabhängigkeit) 13 1.1 Grundbegriffe Konzeptionelle Ebene Logische Gesamtsicht aller Daten der DB unabhängig von den einzelnen Applikationen Niedergelegt in konzeptionellem (logischem) Schema Ergebnis des (logischen) Datenbank-Entwurfs Beschreibung aller Objekttypen und Beziehungen Keine Details der Speicherung Formulierung im Datenmodell des Datenbanksystems Spezifikation mit Hilfe einer Daten-Definitionssprache (Data Definition Language, DDL) 14

1.1 Grundbegriffe Interne Ebene Beschreibung der systemspezifischen Realisierung der DB-Objekte (physische Speicherung), z.b. Aufbau der gespeicherten Datensätze Indexstrukturen wie z.b. Suchbäume Bestimmt maßgeblich das Leistungsverhalten des gesamten DBS Die en sind von Änderungen des internen Schemas nicht betroffen (physische Datenunabhängigkeit) 15 1 Einführung 1.1 Grundbegriffe 1.2 Architekturen von DBMS 16

1.2 Architekturen von DBMS Schichtenmodell Idee (vgl. SW-Engineering) Komponenten eines komplexen Systems sind hierarchisch strukturiert Keine Schicht ruft Operationen aus einer höheren Schicht auf. Jede Schicht definiert eine abstrakte Maschine Darüber liegende Schichten setzten auf dem jeweiligen Abstraktionsgrad auf Darunter liegende Schichten stellen den jeweiligen Abstraktionsgrad zur Verfügung 17 1.2 Architekturen von DBMS Schnittstelle zwischen Schicht i und Schicht i+1 besteht aus Operationen O: Schicht i realisiert die Operationen O der Schnittstelle Schicht i+1 benutzt die Operationen O der Schnittstelle Schicht i+1 realisiert i benutzt t Schicht i 18

1.2 Architekturen von DBMS Vorteile einer Schichtenarchitektur Einfache Implementierung von Komponenten aus höheren Schichten: Sie können auf dem Abstraktionsgrad tiefer liegender Schichten aufbauen. Änderungen in höheren Ebenen wirken sich nicht auf tiefere Ebenen aus. Beim Entfernen höherer Ebenen bleiben tiefere Ebenen dennoch funktionsfähig. Tiefere Ebenen können getestet werden, bevor höhere Ebenen lauffähig sind. Verändert man auf einer tieferen Ebene die Implementierung, aber nicht die Schnittstelle e (weder syntaktisch t sc noch semantisch), sc so muss auch in höheren Schichten nichts geändert werden. 19 1.2 Architekturen von DBMS Optimale Anzahl n von Schichten zu wenige Schichten (z.b. n=1): - Nachteil: komplexe monolithische Komponenten, schwer wartbar zu viele Schichten (z.b. n>10): - Vorteil: Reduktion der Komplexität einzelner Schichten; System gut erweiterbar - Nachteil: Hohe Anzahl zu durchlaufender Schnittstellen kann zu Leistungseinbußen führen; Fehlerbehandlung kann aufwändig sein 20

1.2 Architekturen von DBMS Schichten des DBMS-Kerns Aufgaben der Schicht Übersetzung und Opti- mierung von Anfragen Art der Operationen deskriptive Anfragen, Mengenzugriffe Zugriffssystem Verwaltung physischer Sätze und Zugriffspfade Satzzugriffe Seitenzugriffe DB Physische Speicherung Blocktransfer 21 1.2 Architekturen von DBMS Gesamtarchitektur eines DBMS sprogramme Metadatenverwaltung Zugriffssystem DB-Pufferverwaltung und Externspeicherverwaltung Transaktionsverwaltung Daten-, Zugriffs- und (wie oben) für die Grundfunktionalität Metadatenverwaltung für modellspezifische Daten (Schema, Indexe, Data Dictionary) Transaktionsverwaltung für Synchronisation und Datensicherheit 22

1.2 Architekturen von DBMS Client-/Server- Architekturen Die hierarchische Schichtung der Systemkomponenten bestimmt die Aufrufstruktur, nicht aber die Prozessstruktur (Zuordnung zu physischen Recheneinheiten) Folgende Client/Server-Modelle sind gebräuchlich: Cli ient Serv ver Zugriffssystem Seitenpuffer Seitenmanager DB Objektpuffer Objektpuffer Querymanager Objektmanager Dt t Zugriffssystem Zugriffssystem DB DB 23 1.2 Architekturen von DBMS Mehrbenutzer- und Verteilte DBS Verteilte Mehrbenutzer-DBS (m:n) vereinigen die folgenden beiden Prinzipien: Mehrbenutzerbetrieb (m:1) Verteilte DBS (1:n) Zugriffssystem Zugriffssystem Zugriffssystem DB DB DB 24