Vorlesung 1 - Einführung

Werbung
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Vorlesung #1
Einführung
1
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Ihr Dozent ...
Name:
Ausbildung:
Bojan Milijaš
Diplom-Informatiker
Universität Passau,
Vertiefungsgebiet Datenbanken,
Prof. Alfons Kemper, Ph.D.
Beschäftigung: Seit 1997 bei
ORACLE Deutschland B.V. & Co. KG
derzeit als Senior Business Analyst
Sales Operations
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
2
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
„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š 08.10.2010
Vorlesung #1 - Einführung
3
Vorlesung
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
4
Übungen
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Ü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š 08.10.2010
Vorlesung #1 - Einführung
5
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Literatur
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
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
6
Praktikum
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
7
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
8
Was erwartet Sie
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
(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š 08.10.2010
Vorlesung #1 - Einführung
9
Worauf wird es ankommen
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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 (TabellenAufbau, Indizies etc.)
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
10
Motivation und Einführung (1)
Datenverarbeitung ohne Datenbanken
!!!
Inkonsistenz
Integritätsverletzung
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
!!!
Datenverlust
Keine Sicherheit
Fehlender Zugriff
ie
p
o
K
© Bojan Milijaš, 08.10.2010
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
11
11
Motivation und Einführung (2)
Datenverarbeitung mit Datenbanken
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Datenbank sorgt
(automatisch) für:
•Daten-Konsistenz
•Integrität der Daten
•adäquaten Zugriff
•MehrbenutzerSynchronisation
•Sicherheit
•Recovery
© Bojan Milijaš, 08.10.2010
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
12
12
Motivation und Einführung (3)
Datenverarbeitung ohne Datenbanken
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Informationsablauf in einem Unternehmen
Service
Vertrieb
Marketing
© Bojan Milijaš, 08.10.2010
© Bojan Milijaš 08.10.2010
Buchhaltung
Vorlesung #1 - Einführung
13
13
Motivation und Einführung (4)
Datenverarbeitung mit Datenbanken
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Service
Vertrieb
Marketing
© Bojan Milijaš, 08.10.2010
© Bojan Milijaš 08.10.2010
Buchhaltung
Vorlesung #1 - Einführung
14
14
Motivation und Einführung (5)
Datenverarbeitung ohne Datenbanken
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
15
Motivation und Einführung (6)
Datenverarbeitung mit Datenbanken
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
16
Motivation und Einführung (7)
Einsatz von Datenbanken
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
17
Motivation und Einführung (8)
Datenbanken als Wirtschaftsfaktor
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Der Markt für relationale Datenbanken wurde von
Gartner im Jahr 2007 auf ein Volumen von 17
Milliarden $ geschätzt (nur Neulizenzen). IDC schätzt
es auf 20 Mrd $ für 2008 und 28 Mrd $ für 2013
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 SoftwarePlattform einen ähnlichen wenn nicht höheren
Stellenwert als Betriebsysteme
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
18
Motivation und Einführung (9)
Weltweiter Datenbank-Markt
© Bojan Milijaš 08.10.2010
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Vorlesung #1 - Einführung
19
Motivation und Einführung (9)
Weltweiter Datenbank-Markt 2
© Bojan Milijaš 08.10.2010
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Vorlesung #1 - Einführung
20
Motivation und Einführung (9)
Weltweiter Datenbank-Markt 3
© Bojan Milijaš 08.10.2010
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Vorlesung #1 - Einführung
21
DBMS - Definition
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
22
DBMS Basis-Architektur
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
23
Physische
Ebene
Logische Ebene
DBMS –
3 Abstraktionsebenen
Externes
Schema
- Sicht 1
Externes
Schema
- Sicht 2
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
...
Externes
Schema
- Sicht n
Konzeptionelles
Schema
Physische Speicherung
– internes Schema
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
24
Datenunabhängigkeit
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
25
Architektur eines DBMS
(Kemper / Eickler)
„Naive“
Benutzer
Anwendung
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Fortgeschrittene AnwendungsBenutzer
Programmierer
Interaktive
Präcompiler
Anfrage
DML-Compiler
Datenbankadministratoren
Verwaltungswerkzeug
DDL-Compiler
Anfragebearbeitung
Mehrbenutzersynchr. Datenbankmanager
Fehlerbehandlung
DBMS
Schemaverwaltung
Dateiverwaltung
Logdateien
© Bojan Milijaš 08.10.2010
Indexe
Datenbasis
Datenwörterbuch
Vorlesung #1 - Einführung
26
Komponenten eines DBMS
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
(nach Kemper / Eickler)
DML Compiler
DDL Compiler
Anfragebearbeitung
Datenbankmanager
Schemaverwaltung
Mehrbenutzersynchronisation
Fehlerbehandlung
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
27
Speicherstrukturen und
Prozesse in Oracle
© Bojan Milijaš 08.10.2010
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Vorlesung #1 - Einführung
28
Datenbank-Administrator
„DBA“ (1)
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
29
Datenbank-Administrator
„DBA“ (2)
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
30
Will jemand DBA werden?
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
31
Fazit
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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š 08.10.2010
Vorlesung #1 - Einführung
32
Oracle, Oracle, Oracle ...
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Eine von mir betreute 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 !
Insbesondere MySQL :-)
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
33
Ausblick Vorlesung #2
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
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.)
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
34
WS 2010/11
Datenbanksysteme
Fr 15:15 – 16:45
R 1.008
Vorlesung #1
Ende
© Bojan Milijaš 08.10.2010
Vorlesung #1 - Einführung
35
Herunterladen