WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
Vorlesung #1
Einführung
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 2
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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 Senior Business Analyst Sales Operations
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 3
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
„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š, 02.10.2009 Vorlesung #1 - Einführung 4
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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š, 02.10.2009 Vorlesung #1 - Einführung 5
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
Ü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š, 02.10.2009 Vorlesung #1 - Einführung 6
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 7
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
Praktikum scheinpflichtig !!! 2 bis 3 Studenten bilden ein Team Einteilung in zwei Gruppen
Gruppe 1: Fr 17:00 – 18:30 (R 2.008) Gruppe 2: Fr 18:45 – 20:15 (R 2.012)
SQL Abfragen Datenbankprogrammierung JDBC, ODBC, XML, SOA, PHP etc. je nach
Bedarf und Interesse
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 8
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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?
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 9
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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!!!
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 10
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
11Vorlesung #1 - Einführung© Bojan Milijaš, 02.10.2009
Motivation und Einführung (1) Datenverarbeitung ohne Datenbanken
!!!Inkonsistenz
Integritätsverletzung
!!!Datenverlust
Keine SicherheitFehlender Zugriff
Kopie
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
12Vorlesung #1 - Einführung© Bojan Milijaš, 02.10.2009
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 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
13Vorlesung #1 - Einführung© Bojan Milijaš, 02.10.2009
Motivation und Einführung (3) Datenverarbeitung ohne Datenbanken
Buchhaltung
ServiceVertrieb
Marketing
Informationsablauf in einem Unternehmen
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
14Vorlesung #1 - Einführung© Bojan Milijaš, 02.10.2009
Motivation und Einführung (4) Datenverarbeitung mit Datenbanken
Buchhaltung
ServiceVertrieb
Marketing
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 15
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 16
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 17
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 18
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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)
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
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 19
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
Motivation und Einführung (9) Weltweiter Datenbank-Markt
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 20
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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.
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 21
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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)
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 22
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 23
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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.
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 24
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
Architektur eines DBMS(Kemper / Eickler)
Logdateien Indexe Datenbasis Datenwörterbuch
Dateiverwaltung
Datenbankmanager Schemaverwaltung
Anfragebearbeitung DBMS
DML-Compiler DDL-Compiler
Anwendung InteraktiveAnfrage
Verwaltungs-werkzeugPräcompiler
„Naive“Benutzer
FortgeschritteneBenutzer
Anwendungs-Programmierer
Datenbank-administratoren
Mehrbenutzersynchr.
Fehlerbehandlung
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 25
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
Komponenten eines DBMS
(nach Kemper / Eickler) DML Compiler DDL Compiler Anfragebearbeitung Datenbankmanager Schemaverwaltung Mehrbenutzersynchronisation Fehlerbehandlung
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 26
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
Speicherstrukturen und Prozesse in Oracle
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 27
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 28
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 29
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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 ...
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 30
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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.
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 31
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
Oracle, Oracle, Oracle ...
Meine letzte Bachelor-Arbeit war eine Implementierung von Leasingverwaltung in einer Microsoft SQL Server Datenbank
Der B.Sc., der sie geschrieben hat, arbeitet jetzt bei einer Firma, deren Produkte ausschließlich auf Microsoft SQL Server laufen
Hier geht es um Datenbanken und Standards, nicht (nur) um Oracle !!!
Sie können auch fürs Praktikum gerne jede SQL-92 oder SQL-99 kompatible Datenbank nehmen !
© Bojan Milijaš, 02.10.2009 Vorlesung #1 - Einführung 32
WS 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
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 2009/10Datenbanksysteme
Fr 15:15 – 16:45R 0.006
Vorlesung #1
Ende
Top Related