33
WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

Embed Size (px)

Citation preview

Page 1: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

Vorlesung #1

Einführung

Page 2: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 2

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

Page 3: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 3

„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

Page 4: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 4

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)

Page 5: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 5

Ü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 (*)

Page 6: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 6

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, ...

Page 7: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 7

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

Page 8: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 8

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?

Page 9: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 9

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!!!

Page 10: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 10

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.)

Page 11: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 11

Motivation und Einführung (1) Datenverarbeitung ohne Datenbanken

!!!Inkonsistenz

Integritätsverletzung

!!!Datenverlust

Keine SicherheitFehlender Zugriff

Kopie

Page 12: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 12

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

Page 13: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 13

Motivation und Einführung (3) Datenverarbeitung ohne Datenbanken

Buchhaltung

ServiceVertrieb

Marketing

Informationsablauf in einem Unternehmen

Page 14: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 14

Motivation und Einführung (4) Datenverarbeitung mit Datenbanken

Buchhaltung

Service

Vertrieb

Marketing

Page 15: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 15

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

Page 16: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 16

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

Page 17: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 17

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

Page 18: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 18

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

Page 19: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 19

Motivation und Einführung (9) Weltweiter Datenbank-Markt

Page 20: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 20

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.

Page 21: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 21

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)

Page 22: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 22

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

Page 23: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 23

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.

Page 24: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 24

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

Page 25: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 25

Komponenten eines DBMS

(nach Kemper / Eickler) DML Compiler DDL Compiler Anfragebearbeitung Datenbankmanager Schemaverwaltung Mehrbenutzersynchronisation Fehlerbehandlung

Page 26: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 26

Speicherstrukturen und Prozesse in Oracle

Page 27: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 27

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

Page 28: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 28

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

Page 29: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 29

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 ...

Page 30: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 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 einen Überblick über Berufe, die etwas mit Datenbanken zu tun haben.

Page 31: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 31

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 !

Page 32: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

© Bojan Milijaš, 07.11.2011 Vorlesung #1 - Einführung 32

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.)

Page 33: WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R 0.006 Vorlesung #1 Einführung

WS 2011/12Datenbanksysteme

Fr 15:15 – 16:45R 0.006

Vorlesung #1

Ende