Anwendersoftware (AS) Grundlagen von Datenbanken und Informationssystemen Kapitel 1: Motivation, Einführung, Grundbegriffe Holger Schwarz Wintersemester 2009/10 Teile zu diesem Folienskript beruhen auf einer ähnlichen Vorlesung, gehalten von Prof. Dr. T. Härder am Fachbereich Informatik der Universität Kaiserslautern und Prof. Dr. N. Ritter am Fachbereich Informatik der Universität Hamburg. Für dieses Skriptum verbleiben alle Rechte (insbesondere für Nachdruck) bei den Autoren.
Übersicht Information was ist das? Datenbanksysteme Motivation Grundbegriffe Klassifikation Informationssysteme Grundbegriffe Beispiele 2
Was ist Information? Erklärungsversuche (philosoph., techn., pragmat.): N. Wiener: "Information ist Information, weder Materie noch Energie. Kein Materialismus, der dies nicht berücksichtigt, kann heute überleben." Information für den Menschen über seine Umwelt: Information setzt den Menschen über seine Außenwelt in Kenntnis, ist also der Stoff, der Erkenntnis ermöglicht. Informationstheorie nach C. E. Shannon: Statistischer Informationsbegriff (Entropie einer Nachrichtenquelle) Information und Nachricht: Die übermittelte Nachricht ist dann von Bedeutung, wenn wir eine Abbildung kennen, die sie mittels einer Interpretationsvorschrift auf eine Information abbildet. Resignierende Aussage von F. L. Bauer und G. Goos, 1982: Die Definition des Begriffes Information ist nicht möglich. Jeder Versuch dazu setzt ähnliche Begriffe voraus, beispielsweise Wissen oder Kommunikation. Diese Definition wäre damit zyklisch. 3
Information Pragmatisch: Informationsbegriff nach DIN Wissen über Objekte Wissen über Objekte Information Informationsverarbeitung durch Menschen Information Darstellung von Information Interpretation von Daten Daten Datenverarbeitung Daten 4
Information Pragmatisch: Informationsbegriff nach DIN Wissen über Objekte Wissen über Objekte Information Informationsverarbeitung durch Menschen Information Darstellung von Information Interpretation von Daten Objektive Daten Welt der nicht-interpretierten Datenverarbeitung Daten 5
Information Pragmatisch: Informationsbegriff nach DIN Wissen über Objekte Wissen über Objekte Information: Subjektive Welt der bewerteten Daten Information Informationsverarbeitung durch Menschen Information Darstellung von Information Interpretation von Daten Objektive Daten Welt der nicht-interpretierten Datenverarbeitung Daten 6
Übersicht Information was ist das? Datenbanksysteme Motivation Grundbegriffe Klassifikation Informationssysteme Grundbegriffe Beispiele 7
Nutzung von Dateisystemen Dateisystem Permanente Datenhaltung innerhalb von BS-Dateien Betriebssystem/Dateisystem bietet Funktionen für Erzeugen / Löschen von Dateien Zugriffsmöglichkeiten auf Blöcke/Sätze der Datei einfache Operationen zum Lesen/Ändern/Einfügen/Löschen /Ei /Lö von Sätzen (dynamisches Wachstum) 8
Nutzung von Dateisystemen Probleme/Nachteile Wiederholte Speicherung gleicher Daten Redundanz - Integritätsprobleme und erhöhter Speicherplatzbedarf Verantwortung des Programmierers für - Integrität und Sicherheit der Daten - Effizienz des Zugriffs Bindung von Datenstrukturen an Programmstrukturen Lösung gleicher Aufgaben in allen Anwendungsprogrammen - Speicherverwaltung, Datenverwaltung, - Änderungsdienst, Retrieval, Schutzfunktionen Produktionsplanung Verkauf Rechnungswesen AP AP AP File File File Produktinformationen Annahmen: Alles bleibt stabil! Alles geht gut! 9
Datenbanksystem (DBS) Zentrales Hilfsmittel für Informationssysteme DBS = DB + DBMS Anwendungssysteme Datenbanksysteme Betriebssystem Eine Datenbank (DB) ist eine Sammlung ggespeicherter Daten, die von Anwendungssystemen benötigt werden. Hardware Ein Datenbankverwaltungssystem (DBVS, engl. DBMS) ist ein standardisiertes Softwaresystem zur Definition, Verwaltung, Verarbeitung und Auswertung der Daten in einer DB. Es kann mittels geeigneter Parametrisierung an die speziellen Anwendungsbedürfnisse ngsbedü angepasst werden (hochgradig generisches System). 10
Datenbanken große Datenmengen einfache Handhabung mächtige Auswertungsoperationen Mehrbenutzerbetrieb Datenunabhängigkeit Anwendungsneutralität explizite Integritätsbedingungen Konsistenzüberwachung Redundanzfreiheit Produktionsplanung Verkauf Rechnungswesen AP AP AP Datenbankverwaltungssystem t File File File Datenbanksystem 11
Datenmodell Ein Datenmodell legt Regeln (Typen, Operatoren, Konsistenzbedingungen) fest, nach denen die Objekte von DBs (für die Repräsentation beliebiger Miniwelten) erzeugt und verändert werden (Konstruktionsregeln für die Zustandsräume der Modelle) können. Jedes DBS implementiert somit ein Datenmodell, das die Art der Datenstrukturen und generische Operationen zu deren Manipulation bereitstellt. 12
DBS und Datenmodelle relationale DBS (RDBMS) hierarchische DBS XML-DBS Relationen/Tabellen objektorientierte DBS (ODBMS) Abteilung Projekt Mitarbeiter Datensätze Hierarchie: Eltern/Kind-Beziehungen Netzwerk-DBS <Abteilung> <Projekt> <Mitarbieier> </Mitarbeiter> <Mitarbeiter> </Mitarbeiter> </Projekt> <Projekt> </Projekt> </Abteilung> Abteilung Projekt Dokument hierarchisch strukturierte Elemente Objekte u. Methoden Datensätze OWNER/MEMBER 13
Umsätze und Marktanteile mit RDBMS 2006 Umsatz in Mrd. $ Marktanteil in % 0,48 1,2 3,2 3,2 7,9 21,1 0,49 3,2 2,6 17,4 7,1 IBM Oracle Microsoft NCR Teradata Sybase Others 47,1 Gesamtmarkt: 15,2 Mrd. $ (13,33 Mrd. $ in 2005) Quelle: Gartner Data Quest, Juni 2007 14
DBS: Weitere Klassifikationskriterien Anzahl der Nutzer allgemein/aufgabenspezifisch Einbenutzersysteme Mehrbenutzersysteme allgemein aufgabenspezifisch Anzahl der Rechner zentrales DBMS verteiltes DBMS homogene DBMS heterogene DBMS Föderative DBMS (FDBMS) 15
Miniwelt modellhafte Abbildung Begriff Miniwelt : Ein Datenbanksystem verwaltet Daten einer realen oder gedanklichen Anwendungswelt. Diese Daten gehen aus Informationen hervor, die stets aus den Sachverhalten und Vorgängen dieser Anwendungswelt durch gedankliche Abstraktionen (Abbilder, Modelle) gewonnen werden. Sie beziehen sich nur auf solche Aspekte des betrachteten Weltausschnitts, die für den Zweck der Anwendung relevant sind. Ein solcher Weltausschnitt wird auch als Miniwelt bezeichnet. Weitere Bezeichnungen: Diskurswelt Universe of Discourse (UoD) 16
Datenbank und Miniwelt Vorgänge g und Sachverhalte werden als gedankliche Abstraktionen (Modelle) der Miniwelt erfasst und als Daten (Repräsentationen von Modellen) in der Datenbank gespeichert. Daten beziehen sich nur auf solche Aspekte der Miniwelt, die für die Zwecke der Anwendung relevant sind. Eine DB ist integritätserhaltend (bedeutungstreu), wenn ihre Objekte Modelle einer gegebenen Miniwelt repräsentieren. Datenbank (DB) als Abbildung einer Miniwelt 17
Datenbankschema Ein DB-Schema legt die Ausprägungen g der Objekte fest, welche die DB für eine bestimmte Miniwelt einnehmen kann (Zustandsraum der Modelle einer Miniwelt) DB-Schema Sh wird idim Verlauf fdes DB-Entwurfs DBE festgelegt DB-Schema und Integritätsbedingungen werden vom DBMS gespeichert (DB-Katalog). Beispiel: Universität Vorlesung VorlNr VorlTitel Prüfer Prüfung VorlNr MatrNr Datum Note Student MatrNr Name Semester PLZ Wohnort 18
Schema-Evolution Die Änderung des DB-Schemas bezeichnet man als Schema- Evolution. Notwendig, um DB an sich ändernde Anforderungen anzupassen. Beispiel: Universität Für Studierende soll in Zukunft das Geburtsdatum gespeichert werden. Vorlesung VorlNr VorlTitel Prüfer Prüfung VorlNr MatrNr Datum Note Student MatrNr Name Semester PLZ Wohnort Vorlesung VorlNr VorlTitel Prüfer Prüfung VorlNr MatrNr Datum Note Student' MatrNr Name Semester PLZ Wohnort GebDat 19
Drei-Schema-Architektur nach ANSI-SPARC SPARC Externe Ebene Ext. Schema 1... Ext. Schema n Daten- Definition Konzeptionelle Ebene Konz. Schema Interne Ebene Int. Schema Daten- Manipulation Daten- Administration ANSI: American National Standards Institute, SPARC-Komitee: Study Group on Database Management Systems, http://www.ansi.org Quelle: [TK78] 20
Drei-Schema-Architektur nach ANSI-SPARCSPARC Abstraktionsebenen Externe Ebene individuelle Sichten Konzeptionelle Ebene gemeinschaftliche Sicht Interne Ebene Repräsentations- sicht 21
Drei-Schema-Architektur nach ANSI-SPARCSPARC Konzeptionelles Schema (zeitvariante) globale Struktur; neutrale und redundanzfreie Beschreibung in der Sprache eines spezifischen Datenmodells Externes Schema Definition von zugeschnittenen Sichten auf Teile des konzeptionellen Schemas für spezielle Anwendungen (Benutzer) Sichtenbildung - Anpassung der Datentypen an die der Wirtssprache (DBS ist multi-lingual ) - Zugriffsschutz - Reduktion der Komplexität Internes nes Schema legt physische Struktur der DB fest (Satzformate, Zugriffspfade etc.) 22
Anfragesprachen und Schemaebene Data Definition Language g (DDL) Festlegung des konzeptionellen DB-Schemas Storage Definition Language (SDL) Festlegung des internen DB-Schemas in den meisten DBMS Bestandteil der DDL View Definition iti Language (VDL) Festlegung des externen DB-Schemas in den meisten DBMS Bestandteil der DDL Data Manipulation Language (DML) Lesen, einfügen, ändern und löschen von Daten Meist sind diese Aspekte in einer Sprache integriert z.b. SQL: DDL. VDL, DML 23
Anwendungsprogrammier-Schnittstelle (API) Operatoren zur Definition von Objekttypen (Beschreibung der Objekte) DB-Schema: Welche Objekte sollen in der DB gespeichert werden? Operatoren zum Aufsuchen und Verändern von Daten AW-Schnittstelle: Wie erzeugt, aktualisiert und findet man DB- Objekte? Definition von Integritätsbedingungen (Constraints) Sicherung der Qualität: Was ist ein akzeptabler DB-Zustand? Definition von Zugriffskontrollbedingungen Maßnahmen zum Datenschutz: Wer darf was? 24
Datenbankzustand Die in einer DB zu einem bestimmten Zeitpunkt gespeicherten Daten werden als Datenbankzustand (Instanz) bezeichnet. Zu Beginn, d.h. nach der Festlegung des Schemas, befindet sich eine DB im leeren Zustand, d.h. ohne Daten. Jede Änderung der DB führt zu einem neuen DB-Zustand. 25
Miniwelt grobe Zusammenhänge Vorgang R R Modellierung A I Realisierung Nachbildung M Transaktion M R: Realitätsausschnitt (Miniwelt); I: Informationsmodell (zur Analyse und Dokumentation der Miniwelt); M: DB-Modell der Miniwelt (beschrieben durch Objekt- und Beziehungsmengen, Integritätsbedingungen, usw.); A: Abbildung, Abstraktionsvorgang! 26
Miniwelt grobe Zusammenhänge Transaktion (TA): bildet Vorgang in R im DBS nach und garantiert ununterbrechbaren Übergang von M nach M implementiert durch Folge von DB-Operationen DB-Anfragen beziehen sich auf M bzw. M Integritätsbedingungen: Zusicherungen über A, I und M: A 1 : R I, A 2 : I M Ziel: möglichst gute Übereinstimmung von R und M Idealfall: Die DB ist zu jeder Zeit ein Abbild (Modell) der gegebenen Miniwelt Transaktionskonzept führt ein spezifisches Verarbeitungsparadigma ein ist Voraussetzung für die Abwicklung betrieblicher Anwendungen (mission-critical applications) erlaubt, Vertragsrecht in rechnergestützten IS zu implementieren 27
Beschreibung und Handhabung der Daten Daten müssen interpretierbar sein Daten müssen bei allen am Austausch beteiligten Partnern (Systemen, Komponenten) die Ableitung derselben Information erlauben Schema ANGESTELLTER Satztyp (Relation) Ausprägungen PNR NAME TAETIGKEIT GEHALT ALTER 496 PEINL PFOERTNER 2100 63 497 KINZINGER KOPIST 2800 25 498 MEYWEG KALLIGRAPH 4500 56 Interpretierbarkeit der Daten muss zeitinvariant sein Einsatzspektrum verlangt generische Vorgehensweise Beschreibung der zulässigen DB-Zustände Beschreibung der zulässigen Zustandsübergänge (generische Operatoren) 28
Einsatzgebiete OLTP-Anwendungen numerische Daten, Textdaten operative Detaildaten kurze Transaktionen Geografische Informationssysteme Landkarten, Wetterdaten, Satellitenbilder Data-Warehouse- und OLAP-Anwendungen numerische Daten, Textdaten aggregierte Daten komplexe Analyseanfragen Prozesssteuerung Industrie- und Fertigungsprozesse Echtzeitdatenbanken aktive Datenbanken Multimedia-Anwendungen Bilder, Video, Sound Multimedia-Datenbanken 29
Benutzergruppen Datenbankverwalter (DBA) Anschaffung von Hardware und Software Verteilung von Zugriffsrechten und Überwachung der Datenzugriffe Anpassung des Leistungsverhaltens Datenbankdesigner Datenbankentwurf (Schema) angepasst an Benutzergruppen Endnutzer Gelegentliche Endbenutzer benötigen einfache Zugriffsmöglichkeit Parametrische Benutzer benötigen vordefinierte Standardtransaktionen Professionelle Benutzer nutzen mehr Möglichkeiten der Datenbankschnittstelle Systemanalytiker, Anwendungsprogrammierer 30
Benutzeroberflächen Menügesteuerte Oberflächen zum Durchsuchen der Datenbank Formularbasierte Oberflächen Grafische Benutzeroberflächen Natürlichsprachliche Oberflächen Oberflächen für parametrische Benutzer Oberflächen für den DBA 31
Übersicht Information was ist das? Datenbanksysteme Motivation Grundbegriffe Klassifikation Informationssysteme Grundbegriffe Beispiele 32
Informationssystem Definitionen nach Hansen Ein Informationssystem (IS) besteht aus Menschen und Maschinen, die Informationen erzeugen und/oder benutzen und die durch Kommunikationsbeziehungen miteinander verbunden sind. Ein betriebliches Informationssystem dient zur Abbildung der Leistungsprozesse und Austauschbeziehungen im Betrieb und zwischen dem Betrieb und seiner Umwelt. Ein rechnergestütztes Informationssystem ist ein System, bei dem die Erfassung, Speicherung und/oder Transformation von Informationen durch den Einsatz von EDV teilweise automatisiert ist. In der betrieblichen Praxis besteht es typischerweise aus einer Menge unabhängiger Systeme, die zusammen die angestrebte Leistung erbringen: kooperatives Informationssystem (KIS) 33
Kooperatives Informationssystem Ein rechnergestütztes Informationssystem ist ein System, bei dem die Erfassung, Speicherung und/oder Transformation von Informationen durch den Einsatz von EDV teilweise automatisiert ist. In der betrieblichen Praxis besteht es typischerweise aus einer Menge unabhängiger Systeme, die zusammen die angestrebte Leistung erbringen: kooperatives Informationssystem (KIS) KIS = DBS + AWS Anwendungssysteme KIS Datenbanksysteme Betriebssystem Hardware 34
Kooperatives Informationssystem Erweiterung der Sicht eines KIS: Dialogorientierte AWS: Transaktionsanwendungen mit Interaktion des Endbenutzers, harte Zeitrestriktionen, Terminal-E/A für Anforderungen und Ergebnisse Stapelorientierte AWS: (Transaktions-)Anwendungen ohne Interaktion des Endbenutzers, keine Zeitrestriktionen, Datei-E/A für Anforderungen und Ergebnisse TP-Monitor/ Appl.-Server + KS DBS DB DBVS Dialogorient. AWS AWS Stapelorient. AWS Übersetzer, Betriebssystem,... 35
Übersicht Information was ist das? Datenbanksysteme Motivation Grundbegriffe Klassifikation Informationssysteme Grundbegriffe Beispiele 36
Informationssystem einer Fluggesellschaft Personal Technik Planung Vertrieb Flugbu uchung Tick keting Flugplan erstellen Parkpos. reservieren Besch haffung War rtung Einsatz planung Einst ellung Gehlatsab brechnung Flughafe en Flugplan Piloten Mitarbeiter Datenbank Wartungsaufträge Flugzeuge Catering Slots Bonusprogr. Tickets Flugbuchung Bu uchungs- sy ysteme 37
Informationssystem einer Fluggesellschaft Eine Fluggesellschaft fliegt verschiedene Flughäfen an. Auf diesen Flugstrecken werden Flugzeuge bestimmter Typen mit dafür ausgebildetem Personal eingesetzt. Die Piloten haben Lizenzen jeweils nur für einige wenige Flugzeugtypen. Außer den Piloten gibt es noch anderes Bord- sowie Bodenpersonal. Die Flugbuchungen der Passagiere sowie das Anfertigen der Passagierlisten werden ebenfalls automatisiert durchgeführt. Typische Anwendungen/Abläufe sind z. B.: Flugbuchungen von Passagieren, Personaleinsatzplanung, l Materialeinsatzplanung, Flugplanerstellung, Überwachung der Wartelisten, Gehaltsabrechnung. 38
Informationssystem eines Produktionsbetriebes Leitung Personal Verkauf Produktion Einstellung. Gehaltsabr. Angestellte Kü ündigung. Projektplan nung Bestellung Lieferu ung Produkte Stücklistenauflösung Bedarfsp planung Beste ellung Lieferun ng Projekte Kunden Lieferanten 39
Informationssystem eines Produktionsbetriebes In einem Produktionsbetrieb werden Daten über die verschiedenen Abteilungen und deren Beschäftigte mit ihren Familienangehörigen gespeichert. Die Angestellten arbeiten an verschiedenen Projekten mit. Jedes Projekt benötigt für seine Durchführung bestimmte Teile. Jedes Teil kann von Lieferanten bezogen werden. Die Projekte werden jeweils von einem Projektmanager geleitet. Die in einem Betrieb hergestellten Endprodukte setzen sich i. allg. aus mehreren Baugruppen und Einzelteilen il zusammen. Typische Anwendungen/Abläufe sind z. B.: Einstellung und Entlassung von Personal, Lohn- und Gehaltsabrechnung, Bestellung und Lieferung von Einzelteilen, Verkauf von Fertigprodukten, Lagerhaltung, Bedarfsplanung, Stücklistenauflösung, Projektplanung. 40
Zusammenfassung (1) Information Objektive Welt der nicht-interpretierten Daten Subjektive Welt der bewerteten Daten (= Information) Datenbanksystem: "grob" DBS = DB + DBMS Datenmodell: legt Regeln für Objekte und Operationen fest relational, l objektorientiert, ti t hierarchisch, h Netzwerk, XML Klassifikation nach Datenmodell, Anzahl der Nutzer, Anzahl der Rechner, Miniwelt: Weltausschnitt, der für den Zweck einer Anwendung relevant ist DB-Schema: legt die möglichen Ausprägungen der Objekte für eine Miniwelt fest Drei-Schema-Architektur Sh hi 41
Zusammenfassung (2) Transakionsparadigma macht Zusicherungen für die Verarbeitung von DB-Daten ACID-Eigenschaften müssen in einer Rechnerumgebung (aufwendig) nachgebildet werden erlaubt die Implementierung von Vertragsrecht Information und Informationssysteme Heterogenität, Wachstum, Anforderungsvielfalt u. a. führen oft zu unabhängigen IS, die zusammen als kooperatives IS die angestrebte Leistung erbringen müssen grob : DBS + AWS = KIS wichtige Anwendungsklassen für - operierende Ebene: OLTP - planende/kontrollierende Ebene: DW, OLAP - strategische Ebene: OLAP, DSS 42
Ergänzende Literatur zu diesem Kapitel [HR01] Härder, T., Rahm, E.: Datenbanksysteme - Konzepte und Techniken der Implementierung, Springer-Verlag, 2001 [Hä05] Härder, T.: DBMS Architecture - The Layer Model and its Evolution. In: Datenbank-Spektrum, Heft 13, Mai 2005, dpunkt- Verlag. [TK78] Tsichritzis, D. C., Klug, A.: The ANSI/X3/Sparc DBMS Framework Report of the Study Group on Database Management Systems. In: Information Systems 3:3, 1978. 43