SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #1 Einführung SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Ihr Dozent ... Name: Bojan Milijaš Ausbildung: Diplom-Informatiker Universität Passau, Vertiefungsgebiet Datenbanken, Prof. Alfons Kemper, Ph.D. Beschäftigung: Seit 1997 bei ORACLE Deutschland GmbH, derzeit als Program Manager Database Marketing © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 2 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 „Fahrplan“ Organisatorisches Vorlesungen Übungen Literatur Praktikum Was erwarten Sie? Wünsche, Erwartungen, Befürchtungen ... Was erwartet Sie? Lehrinhalte, worauf wird es ankommen Motivation und Einführung in Datenbanken Informationsverarbeitung mit und ohne Datenbanken Grundlegende Begriffe: DBMS, DBA © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 3 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung Einteilung Besprechung der Übungsaufgaben „Fahrplan“ (kann u.U. verändert werden) Vorstellung des Lehrstoffs Fazit und Ausblick für die nächste Vorlesung Spielregeln Lösungen zu Übungsaufgaben werden von Studenten präsentiert Fragen sind jederzeit erlaubt und willkommen (sowohl vom Dozent als auch von Studenten) © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 4 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Übungen Übungsblätter werden nach jeder Vorlesung verteilt ... nicht korrigiert ... in der darauffolgenden Vorlesung besprochen wichtig als Selbstkontrolle und Selbsteinschätzung Vorbereitung für die Klausur enthalten zugelassen Hilfsmitteln und Sternaufgaben (*) © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 5 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Literatur ... auf der Homepage von Prof. Gruber Lehrbücher (Deutsch) Kemper / Eickler, Datenbanksysteme, Oldenburg Verlag Lehrbücher (Englisch) Ramakrishnan, Database Management Systems, McGrawHill A. Silberschatz, H. F. Korth und S. Sudarshan, Database System Concepts, McGraw-Hill C. J. Date: An Introduction to Database Systems. McGrawHill J.D. Ullmann, J. Widom: A First Course in Database Systems, McGraw Hill Skript von Prof. Schwenkert (kostet 15 €) © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 6 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Praktikum scheinpflichtig !!! Einteilung in zwei Gruppen Gruppe 1: Mi 15:15 – 16:45 Gruppe 2: Mi 17:00 – 18:30 Erste Veranstaltung am 17. April (nach Ostern) Modellierung SQL Abfragen Datenbankprogrammierung © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 7 Was erwarten Sie SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 ... von dieser Vorlesung? 1. 2. 3. Nach dem Studium-Abschluss? 1. Finde ich einen Job? 2. Welche Tätigkeit werde ich ausüben? 3. Wie hoch wird mein Einstiegsgehalt? © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 8 Was erwartet Sie SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 (in dieser Vorlesung) Standard- Datenbankstoff, wie in jedem Datenbank-Einführungsbuch der neueren Ausgabe (siehe Literatur), Beispiele, die aber zeit- und praxisnah sind!!! © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 9 Worauf wird es ankommen SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Motivation ist die Voraussetzung Modellierung (Entity Relationship Modell) Relationales Modell, Relationale Algebra, Normalformen (3NF, 4NF, BCNF) SQL, SQL, SQL SQL Abfragen Daten-Manipulation mit SQL (DML – data manipulation language) Daten-Definition mit SQL (DDL – data definition language) Embedded SQL Weitere Datenbank-Schnittstellen (ODBC, JDBC etc.) © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 10 Motivation und Einführung (1) Datenverarbeitung ohne Datenbanken !!! Inkonsistenz Integritätsverletzung © Bojan Milijaš, 17.03.2004 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 !!! Datenverlust Keine Sicherheit Fehlender Zugriff Vorlesung #1 - Einführung 11 Motivation und Einführung (2) Datenverarbeitung mit Datenbanken SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Datenbank sorgt (automatisch) für: •Daten-Konsistenz •Integrität der Daten •adäquaten Zugriff •MehrbenutzerSynchronisation •Sicherheit •Recovery © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 12 Motivation und Einführung (3) Datenverarbeitung ohne Datenbanken SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Informationsablauf in einem Unternehmen Service Vertrieb Marketing © Bojan Milijaš, 17.03.2004 Buchhaltung Vorlesung #1 - Einführung 13 Motivation und Einführung (4) Datenverarbeitung mit Datenbanken SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Service Vertrieb Buchhaltung Marketing © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 14 Motivation und Einführung (5) Datenverarbeitung ohne Datenbanken SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Unkontrollierte Redundanzen und daraus resultierende Inkonsistenzen Beschränkte Zugriffsmöglichkeiten bzw. fehlender Zugriff Probleme des Mehrbenutzerbetriebes Datenverluste während der Bearbeitung (in Dateisystemen ist nur ein Recovery bis zum letzten Backup möglich) Integritätsverletzungen Sicherheitsverletzungen © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 15 Motivation und Einführung (6) Datenverarbeitung mit Datenbanken SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Kontrollierte Redundanzen und somit keine Inkonsistenzen Unbeschränkte Zugriffsmöglichkeiten bzw. kein fehlender Zugriff Reibungsloser Mehrbenutzerbetrieb Keine Datenverluste während der Bearbeitung (eine Datenbank kann dank umfangreichen ProtokollInformationen beliebig zeitlich zurückversetzt werden) Keine Integritätsverletzungen Keine Sicherheitsverletzungen © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 16 Motivation und Einführung (7) Einsatz von Datenbanken SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Jedes (erfolgreiche) Unternehmen, Behörde oder Krankenhaus auf unserem Planet setzt mindestens eine Datenbank ein Kein Unternehmen, Behörde oder Krankenhaus hat seine komplette Datenverarbeitung in eine Datenbank integriert Daraus ergibt sich ein Riesen-Potential für Fachkräfte mit fundierten Datenbank-Kenntnissen, bestehende Datenbankanwendungen zu pflegen, warten und weiter zu entwickeln bzw. DV-Abläufe auf Basis von Datenbank-Technologie zu vereinheitlichen und zu optimieren © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 17 Motivation und Einführung (8) Datenbanken als Wirtschaftsfaktor SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Der Gesamt-Datenbankmarkt wurde 2001 auf ein Volumen von 8,8 Milliarden $ geschätzt (nur Neulizenzen) ... Dazu noch Support, Schulung, Beratung, ... Anwendungen: CRM und ERP, Decission Support und Data Warehouse, OLAP und OLTP, Data Mining eBusiness und Navigationssysteme, all das ist auf einer Datenbank aufgesetzt Datenbanken sind die Grundlage jeglicher Datenverarbeitung und haben somit als SoftwarePlattform einen ähnlichen wenn nicht höheren Stellenwert als Betriebsysteme © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 18 DBMS - Definition SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Database Management System (DBMS) - auf Deutsch Datenbankverwaltungssystem - besteht aus Datenbasis – Menge aller gespeicherten Daten Verwaltungssystem - Gesamtheit aller Programme, die den Zugriff, die Einhaltung von Konsistenz und die Modifikation der Daten regeln Man bezeichnet oft umgangsprachlich das DBMS als „die Datenbank“ Einige DBMS Systeme / Datenbanken Oracle, IBM DB2, Microsoft SQL Server, Adabas, SAPDB, Sybase, Microsoft Access, MySQL usw. © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 19 DBMS Basis-Architektur SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Das Ziel: Datenintegration bei gleichzeitiger Datenunabhängigkeit, d.h. Daten sollen von Anwendungsprogrammen unabhängig sein und auch unabhängig von der Art und Weise der physikalischen Speicherung ANSI SPARC Architektur – 3 Abstraktionsebenen Externes Schema (auch Anwendungs-Sichten oder Views, bzw. externe Ebene genannt) Konzeptionelles Schema (auch Implementations- oder konzeptionelle Ebene) Internes Schema (auch interne Ebene oder Physische Ebene genannt) © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 20 Externes Schema - Sicht 1 Physische Ebene Logische Ebene DBMS – 3 Abstraktionsebenen © Bojan Milijaš, 17.03.2004 Externes Schema - Sicht 2 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 ... Externes Schema - Sicht n Konzeptionelles Schema Physische Speicherung – internes Schema Vorlesung #1 - Einführung 21 Datenunabhängigkeit SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Physische Datenunabhängigkeit Datenbank Schema und Datenbank-Anwendungen sind von der physischen Speicherung der Daten entkoppelt. Änderungen auf der physische Ebene beeinträchtigen nicht die logische Ebene. Sie haben i.a. schnellere Zugriffszeiten oder höhere Ausfallsicherheit als Ziel. Logische Datenunabhängigkeit Änderungen des Datenbankschema sollen nicht Änderungen in allen Anwendungen (Sichten) hervorrufen. Beispiele: Hinzufügen neuer Attribute zu einer Relation, Aufspalten oder Zusammenfügen von Relationen. In heutigen Datenbanken nur bedingt möglich. © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 22 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Architektur eines DBMS (Kemper / Eickler) „Naive“ Benutzer Anwendung Fortgeschrittene AnwendungsBenutzer Programmierer Interaktive Präcompiler Anfrage DML-Compiler Datenbankadministratoren Verwaltungswerkzeug DDL-Compiler Anfragebearbeitung Mehrbenutzersynchr. Datenbankmanager Fehlerbehandlung DBMS Schemaverwaltung Dateiverwaltung Logdateien © Bojan Milijaš, 17.03.2004 Indexe Datenbasis Vorlesung #1 - Einführung Datenwörterbuch 23 Komponenten eines DBMS SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 (nach Kemper / Eickler) DML Compiler DDL Compiler Anfragebearbeitung Datenbankmanager Schemaverwaltung Mehrbenutzersynchronisation Fehlerbehandlung © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 24 Speicherstrukturen und Prozesse in Oracle © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 25 Datenbank-Administrator „DBA“ (1) SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Person / Gruppe von Personen, die für die Datenbank verantwortlich ist / sind DBA - Aufgaben Installation einer Datenbank (Software-Auswahl, Bestimmung technischer Parameter etc.) Durchführung von Reorganisationen auf der physischen Ebene (Indexpflege, Änderungen der Speicherparameter von Tabellen, sowie notwendige Aktionen, die sich aus Betriebsystem oder Hardware-Änderungen ergeben) Durchführung von Sicherungen (Backup & Recovery), Sicherstellung des störungsfreien Betriebes 5*8 oder 24*7 Monitoring - Überwachung von Auslastung und Laufzeitverhalten (Performance) des Systems © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 26 Datenbank-Administrator „DBA“ (2) SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 DBA Aufgaben (fortgesetzt) Tuning – Optimierung und Verbesserung der Performance Planung und Durchführung der Wartungsarbeiten (Online und Offline Betrieb) Einspielen von Software-Erneuerungen (Patches, Upgrades), Kontakt zum Hersteller und Vertreiber des DBMS Laden von großen Datenmengen (Daten-Export und Import) Datenbank-Migrationen (Überführung der Datenbanken von einem kommerziellen System in das andere) In der Regel keine Aufgabe des/r DBA(s) Entwurf des logischen Datenbankschemas, geht bei der meist eingesetzten Standardsoftware gar nicht, zu komplex bzw. Produkt- und Firmengeheimnisse © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 27 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Fazit Datenbanken sind wichtig! Datenbanken sind geil! Ich werde Datenbanken beherrschen und damit später einen Job finden, der interessant und gut bezahlt ist. Ich weiß in etwa, wozu ein DBMS gut ist und was es tun sollte. Ich habe eine wage Vorstellung, was ein DBA täglich macht. © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 28 Ausblick Vorlesung #2 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Modellierung Miniwelt Entity Relatioship Model (Gegenstand – Beziehung Modell) Beziehungen, 1:1, 1:n, n:m min,max Notation Schlüssel, Attribute eines Gegenstands Generalisierung, Aggregation, Vererbung Hierarchien, rekursive Beziehungen Konsolidierung © Bojan Milijaš, 17.03.2004 Vorlesung #1 - Einführung 29 SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #1 Ende