ws 2012/13 datenbanksysteme fr 15:15 – 16:45 r 2.007 vorlesung #1 einführung
TRANSCRIPT
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
Vorlesung #1
Einführung
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
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,
Business Development Representative bei Oracle Sales
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
„Fahrplan“
Organisatorisches Vorlesungen Übungen Literatur Praktikum
Was erwarten Sie? Wünsche, Erwartungen, Befürchtungen ...
Was erwartet Sie? Lehrinhalte, worauf wird es ankommen
Motivation (9), Demotivation(2) und Einführung in Datenbanken (9) Informationsverarbeitung mit und ohne Datenbanken Grundlegende Begriffe: DBMS, DBA
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
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)
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Ü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 (*)
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Literatur
Lehrbücher (Deutsch) Kemper / Eickler, Datenbanksysteme, Oldenburg Verlag
Lehrbücher (Englisch) Ramakrishnan, Database Management Systems, McGraw-
Hill A. Silberschatz, H. F. Korth und S. Sudarshan, Database
System Concepts, McGraw-Hill C. J. Date: An Introduction to Database Systems. McGraw-
Hill J.D. Ullmann, J. Widom: A First Course in Database
Systems, McGraw Hill Skript von Prof. Schwenkert, Materialien Prof. Staudt ! Internet: Wikipedia, White Papers, Blogs, Posts, ...
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Praktikum
scheinpflichtig !!! 2 bis 3 Studenten bilden ein Team Einteilung in zwei Gruppen
Gruppe 1: Fr 17:00 – 18:30 (R 2.009) Gruppe 2: Fr 18:45 – 20:15 (R 2.009)
SQL Abfragen Datenbankprogrammierung JDBC, ODBC, XML, SOA, PHP etc. je nach
Bedarf und Interesse
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Was erwarten Sie
... 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?
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Was erwartet Sie
(in dieser Vorlesung) Standard- Datenbankstoff, wie in jedem
Datenbank-Einführungsbuch der neueren Ausgabe (siehe Literatur),
Ausgenommen: ER-Modellierung, Normalformen
Beispiele, die zeit- und praxisnah sind!!!
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Worauf wird es ankommen
Motivation ist die Voraussetzung Relationales Modell, Relationale Algebra, 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.) Physische Datenbank-Organisation (Tabellen-
Aufbau, Indizies etc.)
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Motivation und Einführung (1) Datenverarbeitung ohne Datenbanken
!!!Inkonsistenz
Integritätsverletzung
!!!Datenverlust
Keine SicherheitFehlender Zugriff
Kopie
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Motivation und Einführung (2) Datenverarbeitung mit Datenbanken
•adäquaten Zugriff•Mehrbenutzer-Synchronisation•Sicherheit•Recovery
Datenbank sorgt (automatisch) für:•Daten-Konsistenz•Integrität der Daten
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Motivation und Einführung (3) Datenverarbeitung ohne Datenbanken
Buchhaltung
ServiceVertrieb
Marketing
Informationsablauf in einem Unternehmen
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Motivation und Einführung (4) Datenverarbeitung mit Datenbanken
Buchhaltung
Service
Vertrieb
Marketing
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Motivation und Einführung (5) Datenverarbeitung ohne Datenbanken
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
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Motivation und Einführung (6) Datenverarbeitung mit Datenbanken
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 Protokoll-Informationen beliebig zeitlich zurückversetzt werden)
Keine Integritätsverletzungen Keine Sicherheitsverletzungen
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Motivation und Einführung (7) Einsatz von Datenbanken
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
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Motivation und Einführung (8) Datenbanken als Wirtschaftsfaktor
Der Markt für relationale Datenbanken wurde von Gartner im Jahr 2007 auf ein Volumen von 17 Milliarden $ geschätzt (nur Neulizenzen).
Jahr 2011 24 Mrd. (40% Wachstum), 2016 40 Dazu kommen 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 Software-Plattform einen ähnlichen wenn nicht höheren Stellenwert als Betriebsysteme
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Motivation und Einführung (9) Weltweiter Datenbank-Markt (Mrd. $)
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Demotivation (1)Wie fallen die Klausuren aus?
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Demotivation (2)Wie fallen die Klausuren aus?
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
DBMS - Definition
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.
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
DBMS Basis-Architektur
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)
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
DBMS – 3 Abstraktionsebenen
...Externes Schema - Sicht 1
Externes Schema - Sicht 2
Externes Schema - Sicht n
Konzeptionelles Schema
Physische Speicherung – internes Schema
Phy
sisc
he
Ebe
neLo
gisc
he E
bene
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Datenunabhängigkeit
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.
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Architektur eines DBMS(Kemper / Eickler)
Logdateien Indexe Datenbasis Datenwörterbuch
Dateiverwaltung
Datenbankmanager Schemaverwaltung
Anfragebearbeitung DBMS
DML-Compiler DDL-Compiler
AnwendungInteraktiveAnfrage
Verwaltungs-werkzeug
Präcompiler
„Naive“Benutzer
FortgeschritteneBenutzer
Anwendungs-Programmierer
Datenbank-administratoren
Mehrbenutzersynchr.
Fehlerbehandlung
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Komponenten eines DBMS
(nach Kemper / Eickler) DML Compiler DDL Compiler Anfragebearbeitung Datenbankmanager Schemaverwaltung Mehrbenutzersynchronisation Fehlerbehandlung
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Speicherstrukturen und Prozesse in Oracle
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Datenbank-Administrator „DBA“ (1) 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
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Datenbank-Administrator „DBA“ (2)
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
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Will jemand DBA werden?
Sonstige „Datenbank“-Berufe Datenbank-Consulting Datenbank-Vertrieb Datenbank-Support Datenbank-Schulung
Berufe, die Datenbankkenntnisse voraussetzen (Schnittstellen, Funktionsweise) Programmierung, Software Development Software-Architects, CIOs, Senior Management Analyse und Beratung im BI, Data Warehouse, Data Mining
Umfeld ...
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
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 einen Überblick über Berufe, die etwas mit Datenbanken zu tun haben.
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Oracle, Oracle, MySQL ...
Oracle ist der RDBMS-Marktführer mit mehr Marktanteile als 4 weitere Wettbewerber zusammen
MySQL verzeichnet mehr Downloads als alle andere Anbieter zusammen
Ich habe bereits Bachelor-Arbeiten betreut, die in Microsoft SQL Server implementiert wurden ...
Es gibt einen Fachkräftemangel vor allem bei „Nichen“-RDBMS Produkten
Hier geht es um Datenbanken und Standards, nicht (nur) um Oracle oder MySQL !!!
Sie können auch fürs Praktikum gerne jede SQL-92 oder SQL-99 kompatible Datenbank nehmen !
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
© Bojan Milijaš, 05.10.2012
Ausblick Vorlesung #2
Das relationale Modell Relationale Modellierung von 1:1, 1:n, n:m
Beziehungen, Generalisierung, schwachen Entity-Typen etc.
Die Relationale Algebra (Selektion, Projektion, Vereinigung, relationale Division, Mengendurchschnitt, Joins, kartesisches Produkt etc.)
WS 2012/13Datenbanksysteme
Fr 15:15 – 16:45R 2.007
Vorlesung #1
Ende