Daten – Bank 6. Vorlesung Klausur • PRG-2 Klausur am Freitag den 25. Juli Start: 9:00 Uhr • Wo: Hörsaalgebäude Bockenheim Vorlesungsräume HIV, HVI und HIII • Studierendenausweis mitbringen! Dr. Karsten Tolle – PRG2 – SS 2014 2 CPU – z.B. AMD Geode 1750NX 1400 MHz • Hersteller AMD • Bezeichnung Athlon XP 1750+ Geode • Taktfrequenz 1400 MHz • Level 1 Cache 128 KB • Level 2 Cache 256 KB • Bustakt 266 MHz RAM – z.B. 1GB G-Skill PC3200/400 CL 3 • Speichergeschwindigkeit 400 MHz ( PC3200 ) Festplatte – z.B. WD 1TB SATA 3 8,9cm (3,5") • • • • Spindelgeschwindigkeit 7200 rpm Datenübertragungsrate 600 MBps Cache-Größe 32 MB Durchschnittliche Latenzzeit 4,20 ms (Nennwert) Dr. Karsten Tolle – PRG2 – SS 2014 3 Dr. Karsten Tolle – PRG2 – SS 2014 4 Festplatten (HDD) Dr. Karsten Tolle – PRG2 – SS 2014 - http://de.wikipedia.org/wiki/Festplattenlaufwerk 5 http://de.wikipedia.org/wiki/Solid_State_Drive Dr. Karsten Tolle – PRG2 – SS 2014 6 Vergleich von Nano- vs Millisekunde 1 Nanosekunde (ns) = 1000 Pikosekunden = 0,000 000 001 Sekunden 1 Mikrosekunde (μs) = 1000 Nanosekunden = 0,000 001 Sekunden 1 Millisekunde (ms) = 1000 Mikrosekunden = 0,001 Sekunden In einer Nanosekunde (10-9 s) legt das Licht die Strecke von etwa 30 cm zurück. In einer Mikrosekunde also 1000 * 30 cm 30.000 cm = 300 m. In einer Millisekunde also 1000 * 300 m 300.000 m = 300 km. Dr. Karsten Tolle – PRG2 – SS 2014 7 Vergleich von Nano- vs Millisekunde (2) 1 Nanosekunde (ns) = 1000 Pikosekunden (ps) = 0,000 000 001 Sekunden 1 Mikrosekunde (μs) = 1000 Nanosekunden = 0,000 001 Sekunden 1 Millisekunde (ms) = 1000 Mikrosekunden = 0,001 Sekunden 333 ps (3,33 · 10-10) – Taktzeit für einen Prozessor mit 3 GHz Taktfrequenz 1 ns ~ 3 Takte 1 ms ~ 1000 * 1000 * 3 Takte = 3.000.000 Takte = 3 Millionen Takte 20 ns ~ 60 Takte (~ Zugriffszeit RAM) 3,5 ms ~ 10,5 Millionen Takte (~ Zugriffszeit HDD) Für Datenbanksysteme ist meist die Anzahl der Blockzugriffe entscheidend. Dr. Karsten Tolle – PRG2 – SS 2014 8 Geonames select count(*) from geoname; 180554 select * from geoname where name like 'Fra%'; Dr. Karsten Tolle – PRG2 – SS 2014 Dauer: 0.219 sec 450 DS im Ergebnis 9 Geonames … ~ 50 Byte pro DS Block ~ 4000 Byte ~ 80 DS pro Block 180554 DS / 80 … mind. 2257 Blöcke select * from geoname where Name like 'Fra%'; Dr. Karsten Tolle – PRG2 – SS 2014 Dauer: 0.219 sec 450 DS im Ergebnis Anzahl zu lesender Blöcke ist mind. 2257! 10 Geonames mit Index Index auf Name BTree üblich … … select * from district where Name like 'Fra%'; Anzahl zu lesender Blöcke ist maximal 450 (#DS im Ergebnis) plus Index! Dr. Karsten Tolle – PRG2 – SS 2014 Dauer: … siehe live! 11 Beispiel aus der Praxis Tabelle ‘myTable’ mit: Attributen: a, b und c 1.000.000 Einträgen Index auf Attribut ‘a’ Anfrage: SELECT a,b,c FROM myTable WHERE a > 19850 Dr. Karsten Tolle – PRG2 – SS 2014 12 Beispiel aus der Praxis In einem Beispiel waren ca. 50% der Einträge unter Attribut ‘a’ mit dem Wert 19870 belegt. Ausführungszeit lag bei 10 Minuten! Nutzung des Index hier nicht sinnvoll! Ausführungszeit ohne Index ~15sec Dr. Karsten Tolle – PRG2 – SS 2014 13 Prinzipien des digitalen Speicherns I Ein Datensatz sollte offensichtlich/eindeutig und schnell mit dem Objekt, welches es repräsentiert, in Verbindung gebracht werden können. ISBN TITLE 3-12-517154-7 … ISBN Number Dr. Karsten Tolle – PRG2 – SS 2014 14 Prinzipien des digitalen Speicherns II Atomisierung der Daten – teile die Daten in ihre kleinste Einheit auf 1. Normalform ISBN AUTHORS TITLE 0-13-221211-0 Jeffrey Hoffer, Mary Prescott and Fred McFadden … … ISBN TITLE … 0-13-221211-0 … Dr. Karsten Tolle – PRG2 – SS 2014 ISBN AUTHOR_ID 0-13-221211-0 1 0-13-221211-0 2 0-13-221211-0 3 ID AUTHOR 1 Jeffrey Hoffer 2 Mary Prescott 3 Fred McFadden 15 Prinzipien des digitalen Speicherns III … ein weiteres Beispiel (aus der Realität). … RULER … … Hadrian (Sabina) … Bedeutet: Hadrian war der Prägeherr und prägte die Münze für (zu ehren von) Sabina. … RULER COINED_FOR Hadrian Sabina … … Dr. Karsten Tolle – PRG2 – SS 2014 16 Prinzipien des digitalen Speicherns IV Handhabung unsicherer Informationen: … RULER … … Hadrian? … ?Nero Nero Bedeutung: … nicht wirklich sicher / abgeleitet aus anderen Informationen. … … Dr. Karsten Tolle – PRG2 – SS 2014 RULER QUALIFICATION Hadrian uncertain Nero inferred Nero certain … 17 Prinzipien des digitalen Speicherns V Konsistenz in der Namensgebung für Tabellen und Attribute. coinlist metal_information ID … CODE … besser coin_list metal_information ID … Dr. Karsten Tolle – PRG2 – SS 2014 ID … 18 Prinzipien des digitalen Speicherns VI Ausnutzung der referenziellen Integrität wo immer möglich! „ANTONINVS PIVS “ vs „ANTONINVS PIVS“ … Unterschied ist kaum sichtbar! … aber vorhanden! Dr. Karsten Tolle – PRG2 – SS 2014 19 Zusammenfassung … von Person AusweisNr. (0,n) Name Vorname lebt_in bis (0,n) Ort PLZ Ortsname SQL: • create • insert • select Dr. Karsten Tolle – PRG2 – SS 2014 • 1. Normalform • Schlüssel und Funktionale Abhängigkeiten • 2. Normalform Sicherheit Index 20