890 likes | 1.21k Views
Datenbanken. Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002. Inhalt. Motivation Grundlegende Begriffe Geschichte Aufgabenfelder / Tätigkeitsbereiche Grundlagen Formalisierung der Realität Modelle Datenmodellierung. Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002. Literatur.
E N D
Datenbanken Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Inhalt • Motivation • Grundlegende Begriffe • Geschichte • Aufgabenfelder / Tätigkeitsbereiche • Grundlagen • Formalisierung der Realität • Modelle • Datenmodellierung Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Literatur Meier, Andreas, [2001]: Relationale Datenbanken – Leitfaden für die Praxis, Springer, Berlin. Heuer, Andreas / Saake, Gunter [2000]: Datenbanken: Konzepte und Sprachen, 2. Auflage, mitp, Bonn. Vossen, Gottfried, [2000]: Datenmodelle, Daten-banksprachen und Datenbankmanagement-systeme, 4. Auflage Oldenburg, München. Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Motivation Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Vorher Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Nachher Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanken - Motivation Die ganze Datenbankproblematik beginnt damit, dass “man” “Daten” längerfristig, d.h. über die Laufzeit eines Programmes hinaus, auf einem Computer speichern will. Computer / Rechner EDV (elektronische Datenverarbeitung) Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanken - Anforderungen • Schnelle, flexible Suchmöglichkeiten im Datenbestand • Gezielter schneller Zugriff auf bestimmte Eigenschaften eines Objektes • Einfache gezielte Änderung der Daten • Paralleler Zugriff mehrerer Mitarbeiter oder Programme auf die Daten, ohne dass die Daten fehlerhaft werden • Datenunabhängigkeit Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanken - Anforderungen • Unterstützung von Transaktionen, (d.h. mehrere sequentiell durchgeführte Änderungen von Daten werden zusammenhängend behandelt. Entweder werden alle Änderungen durchgeführt oder keine) • Gezielte Vergabe von Zugriffsrechten für Anwender und Entwickler • Datenkonsistenz /-integrität • Datensicherung Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanken - Anforderungen • Gute Weiterverarbeitungs- bzw. Auswertungsmöglichkeiten der Daten durch Programme • Hohe Leistungsfähigkeit auch bei der Verarbeitung von sehr grossen Datenmengen und sehr vielen gleichzeitigen Zugriffen • Synchronisierte effiziente Verteilung der Daten im Netzwerk (Replikation) Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Grundfunktionen von DBen • Anwender • Suche und Anzeige von Daten • Eingabe von Daten • Löschen von Daten • Veränderung von Daten • Entwickler • Datenbank anlegen • Tabellen definieren • Verknüpfungen zwischen Tabellen definieren Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Vorteile DB gegenüber Datei • Einfachere Strukturierbarkeit der Daten • schnellerer systematischerer Zugriff auf die einzelne Daten • Vorhandene Suchfunktionen bzw. Anfragesprachen (SQL, QBL) • Flexible Verknüpfbarkeit von Daten Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Vorteile von zentraler gegenüber lokaler DB • Massiver kontrollierter Parallelzugriff • Alle berechtigten Mitarbeiter können von ihrem Arbeitsplatz aus auf die gleichen Daten zugreifen • Alle berechtigten Mitarbeiter können Daten manipulieren • Zugriffsrechte können flexibel vergeben werden • Integrierte Datenhaltung aller Daten (ohne Redundanzen) Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Definitionen • Datenbank • Daten • Datenbankmanagementsystem Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbank - Definition Eine Datenbank ist eine strukturiert bzw. geordnet , elektronisch gespeicherte Sammlung von Daten(elementen). Die dabei berücksichtigen Objekte, Eigenschaften und deren technische Organisation ergeben sich im Rahmen der Datenmodellierung • aus den Aufgaben, für die sie modelliert werden, und • aus den technischen Möglichkeiten des Datenbankverwaltungssystems (DBMS). Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Beispiele für Datenbanken • Mitarbeiterdatenverwaltung • Kundendatenverwaltung • Auftragsverwaltung • Produktkatalog • Bibliotheksverwaltung • Lagerhaltung • Bundes-Bahn-Fahrplan • Veranstaltungsmanagement Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Daten - Definition • Daten sind einzelne oder aneinander gereihte Zeichen mit einer Bedeutung • Daten sind Informationenin einer zur technikgestützten Darstellungund Verarbeitunggeeigneten Form. Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Daten - Beispiele • Zahlen: „12646“ z.B. interpretiert als Kosten in DM oder als Postleitzahl eines Ortes • Namen: „Herbert“ z.B. interpretiert als Vorname eines Mitarbeiters • Datumsangabe: „10.02.02“ interpretiert als 10. Februar 2002 Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbankmanagementsystem (DBMS) Software-System zur Verwaltung von Datenbanken und Datenbankzugriffen Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Reale DBMS auf dem Markt • DB2 /UDB (IBM) • Oracle (Oracle) • MS SQL Server (Microsoft) • MySQL (Linux / Open Source) • Sybase (Sybase) • Informix (IBM) • Tamino (Software AG) • MS Access (Microsoft) (Desktop) Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanken - Geschichte 1. Generation • Speicherung der Daten auf Lochkarten oder Magnetbändern • Offline-Betrieb / Batchverarbeitung(Berichte) • Sequentieller Zugriff auf die Daten Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanken - Geschichte 2. Generation • Speicherung der Daten auf Magnetplatten • Online-Betrieb (interaktiv am Terminal) • Direkter Zugriff auf die Daten • Parallelzugriff auf die Datenbank • Hierarchisches Datenmodell (IMS / IBM) • Netzwerkmodell (UDS / Siemens) Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanken - Geschichte 3. Generation • Nichtprozedurale DB-Sprachen (was statt wie) • Relationales Datenmodell (DB2, Oracle) • Entity Relationschip Model (Chang) • SQL (Structered Query Language) • Datenunabhängigkeit Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanken - Geschichte 4. Generation • Datenbanken auf PC-Basis (dbase / MS-Access) • Objektorientierte Datenbanken (Poet / O2) • Client-Server-Architekturen Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanken - Geschichte 5. Generation • Offene Schnittstellen (ODBC) • Integration mit Internettechnik (JDBC) • Objektrelationale Datenbanken • Zeitdatenbanken • Deduktive Datenbanken • Multidimensionale Datenbanken • Verteilte Datenbanken Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Aufgabenfelder • Nutzung durch Anwender • Entwicklung (Entwickler) • Verwaltung (Administrator) • Datenarchitektur (Datenarchitekt) Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Anwendertätigkeiten • Daten suchen, anschauen • Datenpflege (Aktualisierung der Daten) • neue Daten eingeben • vorhandene Daten löschen • vorhandene Daten verändern Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Aufgaben Entwickler • Datenmodellierung • Konzeptionelles Schema entwerfen • Tabellen und Verknüpfungen definieren • Ansichten generieren • Formulare / Masken entwerfen • Standard-Berichte erstellen • Anwendungsentwicklung mit DBen • Konsistenzsicherung der Datenbasis Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Aufgaben Administrator • Implementation DBMS • Datensicherung (Back-up) • Benutzerverwaltung • Tuning (Performance-Optimierung) • Replikation im Rahmen verteilter DBen Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Aufgaben Datenarchitekt • Konzept für ein möglichst redundanzfreies unternehmensweites Datenmodell erstellen und pflegen • Konzept zur Verteilung der Daten im Netzwerk erstellen und pflegen • Beratung und Koordination von Entwicklern und Administratoren Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Zugriffsformen Administrator Anwender Entwickler Datenbankmanagementsystem (DBMS) Entwicklungs- tool Verwaltungs- tool Anwender- tool DB1 DB2 DB3
Unterschied: Daten - Dokumente • Daten setzen sich aus terminologisch kontrollierten und systematisch verknüpften Datenelementen zusammen • Daten sind durch Datenfelder stark strukturiert (Beispiel: Tabelle) • Dokumente sind schwach strukturierte und terminologisch wenig kontrollierte Informationen (Beispiel: Text, Multimedia) Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Unterschied: DBMS- DMS/CMS • DBMS: Datenbankmanagementsystem • speichert Daten in einzelnen Feldern • erlaubt direkten Zugriff und kombinierte Suche über jedes Datenfeld • kontrollierte Terminologie • DMS Dokumentenmangementsystem • speichert Dokumente • Zugriff mittels Index oder Volltextsuche • CMS: Content Management System Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Unterschied: DBMS- DMS/CMS • CMS: Content Management System • speichert Dokumente • Zugriff mittels Index, Volltextsuche, Link • Web-orientiert (Hypermedia) • Trennung von Inhalt und Form • Site-Management • unterstützt kooperatives / paralleles Web-Publishing • Schnittstellen zu DBMS und DMS Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanktypen / (Modelle) • Hierarchische Datenbanken • Netzwerk Datenbanken • Relationale Datenbanken • Objektrelationale Datenbanken • Objektorientierte Datenbanken Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbanktypen • Föderierte Datenbanken • Multimedia Datenbanken • Temporale Datenbanken • Deduktive Datenbanken • XML-Datenbanken Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenbankanwendungen • WEB-Datenbanken • CAD-Datenbanken • Data-Warehouse-Systeme • Volltext-Datenbanken • Geographische Informationssysteme • Dokumenten- /Content-Management • Suchmaschinen / Information Retrieval Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Desintegrierte Datenhaltung Client1 Client2 Client3 Anw.1 Anw.2 Anw.3 Datei1 Datei2 Datei3
Integrierte Datenhaltung in mehreren DB Client1 Client2 Client3 Anw.1 Anw.2 Anw.3 Datenbankmanagementsystem (DBMS) DB1 DB2 DB3
Integrierte Datenhaltung in einer DB Client1 Client2 Client3 Anw.1 Anw.2 Anw.3 Datenbankmanagementsystem (DBMS) Daten- bank
Komplette Integration Anw.1 Client Anw.2 S6 Middleware S1 S7 S2 Komponenten/ Services Komponenten Services S3 S8 S4 S9 S5 Datenbankmanagementsystem (DBMS) Daten- bank
ANSI (SPARC) DB-Architektur Benutzer1 Benutzer2 Benutzer3 Sicht1 Sicht2 Sicht3 Sichten der einzelnen Benutzer externe Ebene Konzeptionelle Ebene / Logisches Datenmodell Physikalische Ebene Datei1 Datei2 Datei3 Datei4 Datei5 Physikalische Datenorganisation und Zugriff
Datenunabhängigkeit • Die ANSI SPARC 3 Schema-Architektur ermöglicht Datenunabhängigkeit • An jedem Schema können Änderungen vorgenommen werden, ohne dass die anderen Schemata davon betroffen sind. • Am der konzeptionellen Schemata können Änderungen durchgeführt werden, ohne dass Anwendungen, die auf dem externen Schema aufsetzen, dadurch angepasst werden müssten. • Gleiches gilt für Änderungen auf dem internen Schema Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002
Datenqualität • Korrektheit der Daten • Aktualität der Daten • Vollständigkeit der Daten • Widerspruchsfreiheit der Daten • Relevanz der Daten • „Algorithmen und Datenstrukturen“ Prof. Dr. Fabian Glasen, Datenbanken, Januar 2002