Datenbanken für Mathematiker

Preview:

DESCRIPTION

Datenbanken für Mathematiker. Dozent: Dr. Brigitte Mathiak (mathiak@gmail.com) Ü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

1

Datenbanken für Mathematiker

Dozent: Dr. Brigitte Mathiak (mathiak@gmail.com)

Übungsbetreuung: Lisa Schehlmann

Warum sollten Sie sich für Datenbanken interessieren?

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

Warum sollten Sie sich für Datenbanken interessieren?

Daten sind wertvoll

3

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

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

Warum sollten Sie sich für Datenbanken interessieren?

Daten sind wertvoll

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

6

7

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…

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

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

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

12

Data Engineering

StatistikAlgorithmen

Logik

Modellierung

Systembau

Prozesse

Data Engineering & Management

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

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

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

16

Kernfragen Wie verwaltet man Daten?

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

→ Data & Knowledge Engineering

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

18

Aufgaben Theoretische Aufgaben

Orientiert am Vorlesungsstoff

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

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

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)

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.

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.

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.

24

Die Lernampel

Zusatzinformation

Empfehlenswert

Sehr prüfungsrelevant!

25

Jetzt geht’s los!

26

Handhabung der Daten (historisch)

Bänder

Dateisysteme

Satzorientierte Datenmodelle (Codasyl)

Relationale Datenmodelle

PostrelationaleDatenmodelle

90er

80er

70er

60er

50er

Schwerpunkt der Vorlesung

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)

• ......... ?

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

29

Datenbank vs DBMS

Ordner A

Ordner B File 1 File 2Datenbank

DBMS (DB Management-System)

Anwendung

30

Gegenstand der Vorlesung

Wie kann ich DBMS einsetzen?

Data Engineering

Ordner A

Ordner B File 1 File 2

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

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 ?

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

34

Datenmodellierung

Ausschnitt der realen Welt

Konzeptuelles Schema (UML-Modell)

RelationalesSchema

ObjektorientiertesSchema

NetzwerkSchema

IntellektuelleModellierung

Semi-automatischeTransformation

35

Die Abstraktionsebenen eines DBMS

Datenunabhängigkeit:

• physische Unabhängigkeit

• logische Datenunabhängigkeit

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

Physische Ebene

Logische Ebene

36

Modellierung einer Beispielanwendung

reale Welt: HochschuleStudenten, Prüfungen,

Professoren...

Konzeptuelle Modellierung

Studenten Professoren* hören

Vorlesung

*

37

Logische Datenmodelle

Netzwerkmodell

Hierarchisches Datenmodell

Relationales Datenmodell

Objektorientiertes Datenmodell

Deduktives Datenmodell

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;

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

Recommended