39
1 Datenbanken für Mathematiker Dozent: Dr. Brigitte Mathiak ([email protected]) Übungsbetreuung: Lisa Schehlmann

Datenbanken für Mathematiker

  • Upload
    abedi

  • View
    40

  • Download
    0

Embed Size (px)

DESCRIPTION

Datenbanken für Mathematiker. Dozent: Dr. Brigitte Mathiak ([email protected]) Übungsbetreuung: Lisa Schehlmann. Warum sollten Sie sich für Datenbanken interessieren? (1 min; Jeder für sich mit Zettel und Stift). Warum sollten Sie sich für Datenbanken interessieren?. Daten sind wertvoll. - PowerPoint PPT Presentation

Citation preview

Page 1: Datenbanken für Mathematiker

1

Datenbanken für Mathematiker

Dozent: Dr. Brigitte Mathiak ([email protected])

Übungsbetreuung: Lisa Schehlmann

Page 2: Datenbanken für Mathematiker

Warum sollten Sie sich für Datenbanken interessieren?

(1 min; Jeder für sich mit Zettel und Stift) 2

Page 3: Datenbanken für Mathematiker

Warum sollten Sie sich für Datenbanken interessieren?

Daten sind wertvoll

3

Page 4: Datenbanken für Mathematiker

4

Wertvolle Daten Addressdaten Personaldaten Kundendaten (einer Bank…) Umfragedaten Warenbestandsdaten Transaktionsdaten (Telefonanrufe, Einkäufe,…) Konstruktionsdaten (Auto, Motor, Kugellager,…) Geoinformationsdaten

(Straßen, Leitungen, Flüsse, Immissionen,…) ….

Page 5: Datenbanken für Mathematiker

5

Kosten / Wert

Daten

Software

Hardware

100

10

1

Google (Börsenwert 174,8 Mrd $)

100,000 Rechner a 500 Euro

Bekannte Suchalgorithmen + Data Management

Google kauft YouTube für 1.6 Mrd $

(2006) für Software (?), die Google selbst hat

Page 6: Datenbanken für Mathematiker

Warum sollten Sie sich für Datenbanken interessieren?

Daten sind wertvoll

In fast jeder größeren Applikation steckt heutzutage eine Datenbank

6

Page 7: Datenbanken für Mathematiker

7

Page 8: Datenbanken für Mathematiker

8

Berühmte Systeme Datenbanksysteme:

Oracle DB, IBM DB2, Mysql, Postgres, Microsoft SQL Server, Microsoft Access, etc.

Suchsysteme:Google, Yahoo

Berühmte/interessante Anwendungen:SAP R3Ihr BankkontoIhre HaftpflichtversicherungThe GDB Human Genome Databasewer-kennt-wenFlickr, YouTubeAmazon…

Page 9: Datenbanken für Mathematiker

Warum sollten Sie sich für Datenbanken interessieren?

Daten sind wertvoll

In fast jeder größeren Applikation steckt heutzutage eine Datenbank

Datenmodellierung ist ein wichtiges Thema

9

Page 10: Datenbanken für Mathematiker

10

Daten – Information – Wissen

Wissen: Vorlesung „Datenbanken für Mathematik“ am 5. Oktober 2011, Block 3 in C10 8.02

Informationen: „5. Oktober 2011, Block 3“, ….

Daten: „2011100503C108.02“,…

Kein Wissen ohne DatenÜbergang vom Daten- zum Wissensmanagement ist

nahtlos

Page 11: Datenbanken für Mathematiker

11

Wo benötigt man Methoden des Data Engineering? Desktop

Einloggen (single sign-on) Textverarbeitung Filesystem Addressen

Handy, Smartcards, AutoNein, aber oft schmerzlich vermisst!

→ Neuere Entwickungen:Eingebettete Datenbanken (z.B. für Smartcards)

Banken Telekom …

Besser wäre die Frage: Wo benötigt man keine Methoden des Data Engineering?!

Page 12: Datenbanken für Mathematiker

12

Data Engineering

StatistikAlgorithmen

Logik

Modellierung

Systembau

Prozesse

Data Engineering & Management

Page 13: Datenbanken für Mathematiker

Warum sollten Sie sich für Datenbanken interessieren?

Daten sind wichtig!

In fast jeder größeren Applikation steckt heutzutage eine Datenbank

Datenmodellierung ist ein wichtiges Thema

Bei vielen Arbeitgebern und vielen Arbeitsfeldern ein Muss

13

Page 14: Datenbanken für Mathematiker

Berater (mw) Naturwissenschaftler (mw), Mathematiker (m/w),

Sie sind eine kommunikationsstarke Persönlichkeit mit fundiertem IT-Know-How und Erfahrung im Infrastruktur Projektumfeld. Wünschenswert sind entsprechende Erfahrungen in den folgenden Bereichen:Schnittstellen- u. Systemintegrationslösungen

Programmiersprachen: Java/J2EE, C/C++, VB, C# Skriptsprachen: UNIX-Shells, Perl, Python,Tcl/Tk RDBMS: MS-SQL Server, Sybase, Oracle

14

Page 15: Datenbanken für Mathematiker

Hochschulabsolvent(inn) mit Schwerpunkt Mathematik, Physik, Geographie, Informatik oder Betriebswirtschaft Ihr Profil: Naturwissenschaftliches bzw. technisches Studium,

beispielsweise mit Schwerpunkt Mathematik, Physik, Geographie oder Informatik, oder Betriebswirtschaftliches Studium

Technische Affinität sowie sehr gute Kenntnisse des MS Office Paketes

Idealerweise erste Erfahrung mit Datenbanken (SQL-Server) und/oder Programmierung (v.a. C#)

Sehr gute analytische Fähigkeiten …

15

Page 16: Datenbanken für Mathematiker

16

Kernfragen Wie verwaltet man Daten?

Intuitiv?Konsistent?Effizient?Sicher?Nebenläufig?

→ Data & Knowledge Engineering

Page 17: Datenbanken für Mathematiker

17

Ziele der Vorlesung Analytisches Verständnis des Data Engineering Kenntnisse verschiedener Datenbankparadigmen Erweiterte Kenntnisse der Standard-

Datenbankanfragesprache SQL

Didaktische Methoden Vorlesung (v.a. sinnvoll durch mitdenken und fragen!) Papierübung: analytisches Verständnis Praxisübung: Umgang mit praktischen Problemen

Arbeit in mehreren TeamsÜbernahme von Verantwortung für die Arbeit anderer

Page 18: Datenbanken für Mathematiker

18

Aufgaben Theoretische Aufgaben

Orientiert am Vorlesungsstoff

Praktische Aufgaben Erstellen und Benutzen einer DB Umgang mit einfachen, aber realistischen Datenmengen Integration mit Anwendungen

Page 19: Datenbanken für Mathematiker

Wann und wo? Mittwochs Vorlesung im Block 3 in C10 8.02

14-tägig Vorlesung auch schon im Block 2  19.10, 2.11, 16.11, 30.11, 14.12, 11.1, 25.1

Labore direkt im Anschluss in den Blöcken 4 und 5 in D15 202

Sie sind aufgeteilt in insgesamt 4 Gruppen, also für Sie jeweils ein Übungsblock alle 14 Tage

Es gibt 6 Aufgabenblätter, diese sind schriftlich zu bearbeiten

Sie müssen alle abgeben und davon 5 erfolgreich19

Page 20: Datenbanken für Mathematiker

20

Folgendes Buch liegt der Vorlesung zugrunde:

Alfons Kemper und Andre EicklerOldenbourg Verlag, München, 20097. aktualisierte und erweiterte Auflage

Die Folien wurden weitgehend von den Autoren übernommen.

(Siehe auch http://www-db.in.tum.de/research/publications/books/DBMSeinf)

Weitere Folien und Ideen stammen von Sergej Sikov, York Sure-Vetter, Donald Kossmann und dem Internet (insbesondere Wikipedia)

Page 21: Datenbanken für Mathematiker

21

Literatur: A. Kemper , A. Eickler

Datenbanksysteme – Eine Einführung.Oldenbourg Verlag, 2009. 7. Auflage.

A. Silberschatz, H. F. Korth und S. SudarshanDatabase System Concepts, 4. Auflage, McGraw-Hill Book Co., 2002.

R. Elmasri, S.B. Navathe: Fundamentals of Database Systems, Benjamin Cummings, Redwood City, Ca, USA, 2. Auflage, 1994

R. Ramakrishnan, J. Gehrke: Database Management Systems, 3. Auflage, 2003.

G. Vossen : Datenmodelle, Datenbanksprachen und Datenbank-Management-Systeme. Oldenbourg, 2001.

Page 22: Datenbanken für Mathematiker

22

D. Maier: The Theory of Relational Databases. Computer Science Press. 1983.

S. M. Lang, P.C. Lockemann: Datenbankeinsatz. Springer Verlage, 1995.

C. Batini, S. Ceri, S.B. Navathe: Conceptual Database Design, Benjamin Cummings, Redwood City, Ca, USA, 1992.

C. J. Date: An Introduction to Database Systems. McGraw-Hill, 8. Aufl., 2003.

J.D. Ullmann, J. Widom: A First Course in Database Systems, McGraw Hill, 2. Auflage, 2001.

Page 23: Datenbanken für Mathematiker

23

A. Kemper, G. Moerkotte: Object-Oriented Database Management: Applications in Engineering and Computer Science, Prentice Hall, 1994

E. Rahm: Mehrrechner-Datenbanksyseme. Addison-Wesley, 1994.

P. Dadam: Verteilte Datenbanken und Client/Server Systeme. Springer Verlag, 1996

G. Weikum, G. Vossen: Transactional Information Systems: Theory, Algorithms, and the Practice of Concurrency Control. Morgan Kaufmann, 2001.

T. Härder, E. Rahm: Datenbanksysteme – Konzepte und Techniken der Implementierung, 2001.

Page 24: Datenbanken für Mathematiker

24

Die Lernampel

Zusatzinformation

Empfehlenswert

Sehr prüfungsrelevant!

Page 25: Datenbanken für Mathematiker

25

Jetzt geht’s los!

Page 26: Datenbanken für Mathematiker

26

Handhabung der Daten (historisch)

Bänder

Dateisysteme

Satzorientierte Datenmodelle (Codasyl)

Relationale Datenmodelle

PostrelationaleDatenmodelle

90er

80er

70er

60er

50er

Schwerpunkt der Vorlesung

Page 27: Datenbanken für Mathematiker

27

Motivation für den Einsatz eines Datenbank-VerwaltungssystemsTypische Probleme:

• Redundanz und Inkonsistenz (Frau Meier wird Frau Meier-Ross)

• Beschränkte Zugriffsmöglichkeiten (alle 100 Eigenschaften von Frau Meier lesen, um ihre Telefonnummer zu sehen?)

• Probleme beim Mehrbenutzerbetrieb (zwei Überweisungen gleichzeitig?)

• Sicherheitsprobleme (jeder Mitarbeiter darf jedes Gehalt sehen?)

• hohe Entwicklungskosten für Anwendungsprogramme (k * 100 PersJahre)

• ......... ?

Page 28: Datenbanken für Mathematiker

Warum Datenbanken als separates Stück Software? Diese Probleme treten in sehr vielen Applikationen auf

Sie sind sehr komplex, wenn man sie sauber lösen will

Eine spezialisierte Software nimmt dem Programmierer die Arbeit ab und vermeidet so Fehler und Aufwand

Nach fast 30 Jahren Entwicklung sind relationale Datenbanken das wohl ausgereifteste Stück Software das es weltweit gibt

Trotzdem gibt es aktive Forschung und Entwicklung auf dem Gebiet um noch etwas schneller, noch besser auf neue Datenformen und Schnittstellen angepasst zu sein

28

Page 29: Datenbanken für Mathematiker

29

Datenbank vs DBMS

Ordner A

Ordner B File 1 File 2Datenbank

DBMS (DB Management-System)

Anwendung

Page 30: Datenbanken für Mathematiker

30

Gegenstand der Vorlesung

Wie kann ich DBMS einsetzen?

Data Engineering

Ordner A

Ordner B File 1 File 2

Page 31: Datenbanken für Mathematiker

31

Gegenstand der Vorlesung (zum kleineren Teil)

Ordner A

Ordner B File 1 File 2

Ordner A

Ordner B File 1 File 2

Ordner A

Ordner B File 1 File 2

Page 32: Datenbanken für Mathematiker

32

Die Abstraktionsebenen des Datenbankentwurfs

Physische Ebene

Logische Ebene

Konzeptuelle Ebene Wie sieht die Welt aus ?

Welche Strukturen werden von der Anwendung manipuliert?

Wie wird gespeichert ?

Page 33: Datenbanken für Mathematiker

33

Element mit Matrikel-Nr 1234567 wird abgelegt auf Block 19

1 Tabelle für Uni-Angehörige und 1 Tabelle für Studenten,mit Verbindungen

Studenten sind Personen mit Matrikel-Nr

Die Abstraktionsebenen des Datenbankentwurfs

Physische Ebene

Logische Ebene

Konzeptuelle Ebene

Page 34: Datenbanken für Mathematiker

34

Datenmodellierung

Ausschnitt der realen Welt

Konzeptuelles Schema (UML-Modell)

RelationalesSchema

ObjektorientiertesSchema

NetzwerkSchema

IntellektuelleModellierung

Semi-automatischeTransformation

Page 35: Datenbanken für Mathematiker

35

Die Abstraktionsebenen eines DBMS

Datenunabhängigkeit:

• physische Unabhängigkeit

• logische Datenunabhängigkeit

Sicht 1 (Verwaltung) Sicht k (Bibliothek)...

Physische Ebene

Logische Ebene

Page 36: Datenbanken für Mathematiker

36

Modellierung einer Beispielanwendung

reale Welt: HochschuleStudenten, Prüfungen,

Professoren...

Konzeptuelle Modellierung

Studenten Professoren* hören

Vorlesung

*

Page 37: Datenbanken für Mathematiker

37

Logische Datenmodelle

Netzwerkmodell

Hierarchisches Datenmodell

Relationales Datenmodell

Objektorientiertes Datenmodell

Deduktives Datenmodell

Page 38: Datenbanken für Mathematiker

38

Das relationale Datenmodell

StudentenMatrN

rName

2612025403

...

FichteJonas

...

hörenMatrN

rVorlNr

2540326120

...

50225001

...

VorlesungenNr Titel

50015022

...

Grundzüge Glaube und Wissen

...Select NameFrom Studenten, hören, VorlesungenWhere Studenten.MatrNr = hören.MatrNr and

hören.VorlNr = Vorlesungen.Nr andVorlesungen.Titel = `Grundzüge´;

update Vorlesungen set Titel = `Grundzüge der

Logik´ where Nr = 5001;

Page 39: Datenbanken für Mathematiker

39

DB-Anfragen: Flexibilität

Eine Bedingung spezifiziert die entsprechende Teilmenge der Treffer (Tupeln, Dokumente, …) in der Datenbank.

Boolsche Operationen (AND; OR; NOT) werden verwendet, um Bedingungen / Treffermengen zu kombinieren.

Wieviele unterschiedliche Teilmengen der Datensammlung lassen sich mit 3 unterschiedlichen Bedingungen spezifizieren?

a) 7

b) 8

c) 16

d) 256

Kombinationsmöglichkeiten

für 8 Teilmengen:

(0 0 0 0 0 0 0 0)bis

(1 1 1 1 1 1 1 1)

28 = 256

12 3

45

6

78