Relationale Datenbanksysteme

Werbung
Datenbanken &
Informationssysteme
(WS 2016/2017)
Klaus Berberich
([email protected])
Wolfgang Braun
([email protected])
0. Organisatorisches
Dozenten
§ Klaus Berberich ([email protected])
§ Sprechstunde nach Vereinbarung per E-Mail
§ Wolfgang Braun ([email protected])
§ Sprechstunde nach Vereinbarung per E-Mail
4
Vorlesung und Übung
§ Vorlesung und Übung
§ Montag, 11:45 – 13:15 (3. Stunde), Raum 7110
§ Mittwoch, 8:15 – 9:45 (1. Stunde), Raum 7110
§ Übungsblatt 1 (am 26.10 ausgegeben) wird übernächste
Woche am 7.11 besprochen
5
Prüfung
§ Schriftliche Klausur am Ende des Semesters
§ Keine Hilfsmittel (z.B. Taschenrechner) außer
drei von Hand beschriebenen DIN-A4 Blätter
§ Termin wird rechtzeitig in der Vorlesung bekannt gegeben
6
Webseite
§ Webseite zur Vorlesung:
§ Ankündigungen
§ Folien und Übungsblätter zum Download
§ Sonstige Ressourcen (z.B. Software und Daten)
§ http://swl.htwsaar.de/lehre/ws16/dbis/
7
Literatur zur Vorlesung
§ A. Kemper und A. Eickler:
Datenbanksysteme – Eine Einführung,
De Gruyter Oldenbourg, 2015
§ G. Saake, K.-U. Sattler und A. Heuer:
Datenbanken - Implementierungstechniken,
mitp Professional, 2011
8
Literatur zur Vorlesung
§ G. Saake, K.-U. Sattler und A. Heuer:
Datenbanken - Konzepte und Sprachen,
mitp Professional, 2013
§ H. Garcia-Molina, J. D. Ullman und J. Widom:
Database Systems – The Complete Book,
Pearson, 2013
9
Inhalt
§ 1. Einführung
§ 2. Datenbanken
§ 3. Datenbanksysteme
§ 4. Data Warehouses
§ 5. Information Retrieval
§ 6. Data Mining
§ 7. NoSQL
10
1. Einführung
Relationale Datenbanksysteme
§ Relationale Datenbanksysteme (RDBMS)
§ sind die heute vorherrschende Art von Datenbanksystemen
§ basieren auf mehr als 40 Jahren Forschung & Entwicklung
§ gibt es in Form kommerzieller und/oder offener Systeme
§ Oracle Database
§ IBM DB2
§ Microsoft SQL Server
§ PostgreSQL
§ MySQL
§ SQLite
§ …
Datenbanken & Informationssysteme / Kapitel 1: Einführung
12
Relationale Datenbanksysteme
§ Relationale Datenbanksysteme (RDBMS)
§ bilden das Rückgrat verschiedenster Anwendungen, z.B.:
§ Enterprise Resource Planning Systeme (z.B. SAP)
§ Content Management Systeme (z.B. Typo3, WordPress)
§ Websites und -shops (z.B. IMDb und ebay)
§ Wikis (z.B. MySQL hinter MediaWiki)
§ Apps (z.B. SQLite in iOS SDK)
§ …
Datenbanken & Informationssysteme / Kapitel 1: Einführung
13
Datenbanken
§ Wie setzt man ein relationales
Datenbanksystem effektiv ein?
MatrNr
VorlNr
Vorname
N
Studenten
M
hören
Vorlesungen
M
N
Name
SWS
N
Titel
prüfen
Semester
lesen
Note
§ Entity-Relationship-Modell
PersNr
1
Vorname
Assistenten
N
arbeiten für
1
1
Professoren
Name
§ Relationales Modell
Tätigkeit
Fach
PersNr
Vorname
Name
§ Relationale Normalisierung
§ Relationale Algebra
Studenten
§ Structured Query Language (SQL)
MatrNr
Vorname
Name
Semester
13765
18877
18879
Moritz
Peter
Marty
Müller
Parker
McFly
1
7
3
‡ [ Name = “Meier” ‚ Name = “Müller” ] ( Kunden )
§ Kapitel 2: Datenbanken
Datenbanken & Informationssysteme / Kapitel 1: Einführung
1
2
3
select KundenNr , Vorname , Name
from Kunden
where Wohnort = ’ Mannheim ’
14
Datenbanksysteme
§ Wie ist so ein relationales Datenbanksystem
eigentlich implementiert?
§ Typische Architektur
§ Datenspeicherung
§ Indexstrukturen (z.B. B+-Bäume)
§ Selektivitätsschätzung
fi[S.Vorname, S.Name, V.Titel]
§ Anfrageoptimierung
ÛÙ
V
ÛÙ
§ Verlaufsprotokolle
‡[ Semester > 3 ]
h
S
§ Sperrstrategien
§ Kapitel 3: Datenbanksysteme
Datenbanken & Informationssysteme / Kapitel 1: Einführung
15
Data Warehouses
§ Analytische Anfragen (Umsatz per Quartal per Produkt)
§ müssen eine große Datenmenge „anfassen“
§ sollen dennoch kurze Antwortzeiten haben
(OnLine Analytical Processing)
§ Relationale Datenbanksysteme sind optimiert für
Transaktionen, die nur wenige Daten „anfassen“
(OnLine Transaction Processing)
§ Kapitel 4: Data Warehouses
Datenbanken & Informationssysteme / Kapitel 1: Einführung
16
Information Retrieval
1. Vector Space Model (VSM)
§ Was steckt eigentlich• hinter
der model
Volltextsuche
in
Boolean retrieval
provides no (or onlyz.B.
rudimentary)
ranking of results – severe limitation for large result sets
§ Relationalen Datenbanksystemen
• Vector space model views documents and queries as vectors in
a |V |-dimensional vector space (i.e., one dimension per term)
§ Desktopsuche (Windows Desktop Search, Spotlight)
• Cosine similarity between two vectors q and d is the cosine of the angle between them
§ Websuchmaschinen
sim(q, d) =
§ Information Retrieval
§ Invertierter Index
§ Modelle zur
q·d
kqk kdk
q
P|V |(cont’d)
Partitioning
q d
i
i
= qP i=1 qP
|V | 2
|V | 2
• Term-partitioned
inverted
index
i=1 qi
i=1 di
d terms
d node holds posting lists for a subset of
• eachqcompute
=
kqk kdk
•
queries
Relevanzbewertung are routed to compute nodes with relevant terms
§ Stoppwörter und
IR&DM ’13/’14
!34
• lower resource consumption, susceptible to imbalance (becaus
Stammformreduktion
in the data or query workload), index maintenance non-trivial
§ Kapitel 5: Information Retrieval
Datenbanken & Informationssysteme / Kapitel 1: Einführung
17
Data Mining
§ Warenkorbanalyse (frequent itemset mining)
§ Welche Produkte werden oft zusammen gekauft?
§ z.B. zur Empfehlung und Platzierung von Produkten
§ Clusteranalyse (clustering)
§ Wie kann ich meine Daten (z.B. Kunden)
in homogene Gruppen aufteilen?
§ Kapitel 6: Data Mining
Datenbanken & Informationssysteme / Kapitel 1: Einführung
18
NoSQL
§ Was wenn die Daten Speicher- und Rechenkapazität
eines einzelnen Rechners überschreiten?
§ Ansätze zur verteilten Verarbeitung großer Datenmengen
§ MapReduce (Google) / Apache Hadoop / Apache Spark
§ Systeme zur Datenanalyse mit SQL-artiger Sprache
§ Apache Pig / Apache Hive
§ Apache Drill / Cloudera Impala
§ Kapitel 7: NoSQL
Datenbanken & Informationssysteme / Kapitel 1: Einführung
19
Literatur
[1]
A. Kemper und A. Eickler: Datenbanksysteme – Eine
Einführung, De Gruyter Oldenbourg, 2015 (Kapitel 1)
Datenbanken & Informationssysteme / Kapitel 1: Einführung
20
Herunterladen