Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Dateisysteme Datei (File) –Zusammenfassung von Sätzen des gleichen Typs Satz (Record) –Sequenz von.

Slides:



Advertisements
Ähnliche Präsentationen
Einführung "Datenbanksysteme"
Advertisements

Partitionierungstechniken in Datenbanksystemen
Datenbankdesign mit ACCESS.
Einführung 1.
Einführung 1.
Datenbanken Einführung.
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
Das Entity-Relationship-Modell
spezielle Nutzersichten formale Ebene (deskriptive Regeln)
Datenmodellierung Externe Phase Informationsstruktur
Objekt – Relationales – Modell Tomasz Makowski IN
Das Entity-Relationship-Modell
Datenbanken I (0,*) Produkt 3 Karczewski Datenbanken I.
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/7 Datenbanken werden als Anhäufung von Werten eines Wertebereiches aufgefasst und Datenbankabfragen.
Daten bank St. Wiedemann.
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Datenbanken Christof Rumpf
Das Relationen-Modell
Informationssysteme Grundbegriffe. © Prof. T. Kudraß, HTWK Leipzig Informationssystem - Definition Bei Informationssystemen (IS) handelt es sich um soziotechnische.
Oberseminar Datenbanken Multimediale Datenbanken Christian Völschow.
Transaktionen in verteilten Datenbanken
Das Relationenmodell 1.
Das Entity-Relationship-Modell
Prof. Dr. T. Kudraß1 Das Relationen-Modell. Prof. Dr. T. Kudraß2 Einführung Geht auf klassische Arbeit von Codd zurück (1970) Meistgenutztes Datenmodell.
Prof. Dr. T. Kudraß1 Relationen-Algebra. Prof. Dr. T. Kudraß2 Relationale Anfragesprachen Query Language (QL): Manipulation und Retrieval von Daten einer.
Access 2000 Datenbanken.
Datenbanken Einführung Merkmale dateiorientierte Datenverwaltung
Einführung Dateisystem <-> Datenbanksystem
Fachbereich Mathematik/Informatik Universität Osnabrück
Informationssysteme SS Informationssysteme Grundvorlesung Informatik Sommersemester 2004 Universität des Saarlandes, Saarbrücken Dr. Ralf Schenkel.
Datenbankentwurfsprozess
Betriebliche Informationssysteme Prof. Dr. Michael Löwe
Einführung und Überblick
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
... und alles was dazugehört
Synergieeffekte durch softwaregestützte Prozessmodelle
Datenbank-entwicklungsprozess
Überblick über die Datenbankproblematik
Datenbanken und Datenmodellierung
WS 2012/13 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #11 Transaktionsverwaltung.
WS 2011/12 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #10 Transaktionsverwaltung.
SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #2 Datenbankentwurf.
WS 2011/12 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #9 Physische Datenorganisation.
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #7 SQL (Teil 4)
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
Allgemeines zu Datenbanken
(D.h. „Hallo MausFans!“ auf Japanisch).
DI (FH) DI Roland J. Graf MSc (GIS) U N I V E R S I T Ä T S L E H R G A N G Geographical Information Science & Systems UNIGIS.
Vorlesung #10 Physische Datenorganisation
XML und Datenbanken © 2006 Markus Röder
verstehen planen bearbeiten
Normalisierungsprozess
Systemsoftware und Betriebssysteme
ADAT©2004 Dipl. - Ing. Walter SabinSeite: 19 Version 1.0a Programme - Zusatzsoftware Oracle: –Forms –Reports –Designer –Jdeveloper –APEX (Application Express)
Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Applikationen mit Dateien einfache Dateioperationen –zur Verwaltung: create/drop, open/close –zum.
Datenbanktechnik 1 Datenbanktechnik II Kapitel 5.0 bis 6.0.
Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten.
Einführung Dateisystem <-> Datenbanksystem
Datenbanken im Web 1.
SS 2014 – IBB4B Datenmanagement Do 17:00 – 18:30 R Vorlesung #4 Überführung des ER-Modells in das relationale Modell.
WS 2014/15 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #9 SQL Zusammenfassung.
Datenbanken Einführung
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #4 Überführung des ER-Modells in das relationale Modell.
IS: Datenbanken, © Till Hänisch 2000 Einführung Worüber reden wir hier eigentlich ?
SQL Basics Schulung –
Einführung "Datenbanksysteme"
Datenbanken Eine Einführung Kerstin Fröhlig, HHBK.
Von Wietlisbach, Lenzin und Winter
Datenbanksystem Von Anna und Robin.
 Präsentation transkript:

Prof. Dr. T. Kudraß1 Einführung

Prof. Dr. T. Kudraß2 Dateisysteme Datei (File) –Zusammenfassung von Sätzen des gleichen Typs Satz (Record) –Sequenz von Datenelementen (Feldern) –Zugriffseinheit eines Anwendungsprogramms (beim Lesen bzw. Schreiben) Feld –Datenelemente in Sätzen (z.B. ANGNR, NACHNAME.. BERUF, GEHALT) Schlüssel (Key) –Kombination von Feldern zur Identifikation von Sätzen –wenn mehrere Identifikatoren: Auswahl eines Primärschlüssels aus den Schlüsselkandidaten Felder (z.B. ANGNR) Sätze

Prof. Dr. T. Kudraß3 Applikationen mit Dateien einfache Dateioperationen –zur Verwaltung: create/drop, open/close –zum Zugriff: read/write Verschiedene Formen der Dateiorganisation –Direkter Zugriff (relativ) –Wertbasierter (assoziativer) Zugriff (hash, key) –Unstrukturierte Dateien (byte stream) Synchronisation –Kommunikation notwendig für Änderungen P1 P2 T1 redundante Daten Datei 1Datei 2 Datei 3

Prof. Dr. T. Kudraß4 Nachteile von Dateisystemen Wiederholte Speicherung gleicher Daten (Redundanz) –Integritätsprobleme –erhöhter Speicherplatzbedarf Verantwortung des Programmierers für –Datenintegrität –Datensicherheit –effizienten Zugriff Bindung von Datenstrukturen an Programmstrukturen (hoher Änderungsaufwand) Lösung gleicher Aufgaben in einem Anwendungsprogramm –Speicherverwaltung –Datenverwaltung (Ändern und Retrieval) –Schutzfunktionen Annahmen: –Alles bleibt stabil!

Prof. Dr. T. Kudraß5 Grundbegriffe Datenbank (DB) –eine sehr große integrierte Sammlung von Daten –Beschreibt einen Ausschnitt aus der realen Welt: Entitäten (z.B. Studenten, Kurse) Beziehungen (z.B. Professor hält Kurs) Datenbank-Management-System (DBMS) –Software-Paket zum Speichern und Verarbeiten von Datenbanken (Einfügen, Lesen, Ändern und Löschen von Daten) –Beispiele: Oracle, DB2 (IBM), MS SQL Server, MySQL, Informix Datenbank-System (DBS) –Ermöglicht die anwendungsübergreifende Nutzung von Daten –Isoliert Anwendungsprogramme von Hardware und Betriebssystem (und deren Änderungen) –DBS = DBMS + DB Datenmodell (DM) –Struktur –Operationen –Konsistenzregeln der Daten

Prof. Dr. T. Kudraß6 Vorteile von Datenbanksystemen Beseitigung der Redundanz –jedes Datum i. allg. nur einmal in der Datenbank abgelegt –Vermeidung von Mehrfachspeicherung –geringerer Speicherbedarf –schnellere Aktualisierung der Daten, da geringere Verarbeitungskosten –bessere Datenqualität (Einhaltung der Konsistenz) Sicherung der Datenintegrität –Korrektheit / Vollständigkeit der Daten in der Datenbank in bezug auf die reale Welt –zentrale Kontrolle durch das DBMS Software-Paket zum Speichern und Verarbeiten von Datenbanken (Einfügen, Lesen, Ändern und Löschen von Daten) –Beispiele: Oracle, DB2 (IBM), MS SQL Server, MySQL, Informix Datenbank-System (DBS) –Ermöglicht die anwendungsübergreifende Nutzung von Daten –Isoliert Anwendungsprogramme von Hardware und Betriebssystem (und deren Änderungen) –DBS = DBMS + DB Datenmodell (DM) –Struktur –Operationen –Konsistenzregeln der Daten

Prof. Dr. T. Kudraß7 Informationssystem vs. Datenbanksystem Ein Informationssystem (IS) besteht aus Menschen und Maschinen, die Informationen erzeugen und/oder benutzen und die durch Kommunikationsbeziehungen miteinander verbunden sind. Ein rechnergestütztes Informationssystem (CIS) ist ein System, bei dem die Erfassung, Speicherung und/oder Transformation von Informationen durch den Einsatz von EDV teilweise automatisiert ist. Hardware Datenbanksystem Anwendungssysteme Betriebssystem CIS IS

Prof. Dr. T. Kudraß8 Beispiele für Informationssysteme Universitätsdatenbank –Objekte: Fachbereiche, Studenten, Professoren, Mitarbeiter, Vorlesungen, Prüfungen –Anwendungen: Immatrikulation Ausfertigung von Studienbescheinigungen Stundenplanerstellung Raumbelegung Ausstellung von Zeugnissen Statistiken Bank-Informationssystem –Objekte: Partner (Kunden, Geschäftspartner), Produkte (bestehend aus Features), Tarife, Standardkosten, Konten, Finanzinstrumente, Geschäftsprozesse (Beschreibungen und Logs), Referenzdaten (z.B. Kalender) –Anwendungen: Buchung von Zahlungsvorgängen auf verschiedenen Konten Einrichten und Auflösen von Konten Zinsberechnung und Verbuchung Personalverwaltung (Gehaltsabrechnung) Bereitstellung von Statistiken über Kundenverhalten zu Marketing- Zwecken

Prof. Dr. T. Kudraß9 Typen von Informationssystemen Information RetrievalKommerzielle EDVWiss.-techn. Anwendungen große Datenmengen (unformatiert) große Datenmengen (formatiert) Einfache Daten- struktur/Datentypen Kleine Datenmengen, numerische Daten Komplexe SuchalgorithmenEinfache AlgorithmenKomplexe Algorithmen Retrieval-orientiertUpdate-orientiert, transaktionsorientiert prozeßorientiert Non-Standard-Anwendungen große Datenmengen (formatiert und unformatiert) Komplexe Datentypen Komplexe Algorithmen Komplexe Transaktionen Datenbankmanagementsysteme

Prof. Dr. T. Kudraß10 Entwicklung der Datenbanken Bis 1960 –Daten in nicht-magnetischen Medien (z.B. Lochkarten) gespeichert –Daten auf sequentiellen magnetischen Medien (Magnetband) –Plattenspeicher und Trommeln: Direktzugriff auf Daten über deren Adressen –große Datenmengen weiter auf Magnetband –Daten werden als anwendungsspezifische Dateien gespeichert, auch Zugriffsmechanismen in Anwendungen integriert –Erstes DBMS von Bachman: Integrated Data Store (IDS), Netzwerk- Datenmodell, CODASYL-Standard –IBM: Information Management System (IMS), hierarch. Datenmodell –Datenverwaltungssysteme mit Data Dictionary zur Kontrolle von Redundanz, Sichten und Benutzer –Relationale DBMS dominieren (Relationenmodell von Codd, 1970): Oracle, DB2, Informix, Sybase –SQL wird zur Standard-Anfragesprache (aus IBM System R hervorgegangen)

Prof. Dr. T. Kudraß11 Entwicklung der Datenbanken (Forts.) –Objektorientierte Datenbanksysteme (z.B. ObjectStore) –Erweiterbare Datenbanksysteme mit neuen Datentypen für multimediale Anwendungen (Image, Text, Video): z.B. Oracle 8, Informix UDS –Mächtigere Query-Languages (OQL, Erweiterungen von SQL) –Generische anwendungsorientierte Schichten on top of a DBMS (z.B. SAP, Oracle), die applikationsspezifisch angepaßt werden können: Inventory Management Human Resource Management –Data Warehouse Systeme (z.B. SAS) –Anbindung von Datenbanken ans Internet Zukunft: –Steigende Datenmengen in Vielfalt und Umfang wachsende Anforde- rungen an DBMS –Beispiele: Digital Libraries Multimedia (z.B. Video on Demand) Human Genome Projekt

Prof. Dr. T. Kudraß12 Vorteile eines DBMS Datenunabhängigkeit Effizienter Zugriff Verminderte Entwicklungszeit Kontrolle der Datenintegrität Zugriffskontrolle auf die Daten Datensicherheit und Zugriffskontrolle auf die Daten (Korrektheit bei fehlerhaftem Ablauf einzelner Anwendungen und System- absturz) Einheitliche Datenadministration Unterstützung von Nebenläufigkeit (Concurrency Control) Recovery-Fähigkeiten (Korrektheit bei fehlerhaftem Ablauf einzelner Anwendungen und Wiederherstellung der DB nach System-Crash)

Prof. Dr. T. Kudraß13 Datenmodelle Daten haben –Struktur, die im Typ definiert wird –Werte oder Instanzen Datenmodell –Menge von Konstrukten zur Beschreibung von Daten –Low-Level Details der Datenspeicherung werden abstrahiert –Ein DBMS erlaubt die Definition von Daten in einem bestimmten Datenmodell (meist relational) Semantisches Datenmodell –Abstraktere Beschreibung von Daten unabhängig von einem konkreten DBMS –Beispiele: Entity-Relationship-Modell, Objektmodell (UML) Schema –Beschreibung einer Menge von Daten mit Hilfe eines bestimmten Datenmodells Relationales Datenmodell –Basiskonstrukt: Relation, d.h. eine Tabelle mit Zeilen und Spalten –Jede Relation hat ein Schema zur Beschreibung der Spalten (oder Felder)

Prof. Dr. T. Kudraß14 Abstraktionsebenen Mehrere Sichten (Views), ein konzeptuelles (logisches) Schema und physisches Schema. Views: Anwendungsspezifische Ausschnitte des konzeptuellen Schemas zur Filterung un- nötiger Daten oder zum Schutz vor nichtautorisiertem Zugriff. Auch zur anwendungsspezifischen Strukturierung verwendet Konzeptuelles Schema: Beschreibt eine integrierte logische Sicht des gesamten Datenbestandes ohne Details über Speicherstrukturen und Zugriffspfade Physisches Schema: Beschreibt die Organisation der Daten auf den Speichermedien: Datensätze (Records), spezifische Zugriffspfaden, Abbildung auf Speicherstrukturen (physische Records) Physisches Schema Konzeptuelles Schema View 1View 2View 3 Schemas werden in DDL definiert

Prof. Dr. T. Kudraß15 Beispiel: Datenbank Hochschule Konzeptuelles Schema – Studenten (sid: string, name: string, login: string, alter: integer) – Kurse (kid: string, kname: string, stunden: integer) – Fachbereich (fid: string, fname: string, budget: real) – Lehrt (fid: string, kid: string) – Eingeschrieben (sid: string, kid: string, grade:string) Physisches Schema – Speicherung der Relationen als Files: unsortierte Menge von physischen Records – Index auf der ersten Spalte von Studenten und Kurse zur Beschleunigung des Datenzugriffs Externes Schema (View) – Wieviele Studenten haben sich in jedem Kurs eingeschrieben? – Kurs_Info (kid: string, einschreibanz: integer)

Prof. Dr. T. Kudraß16 Datenunabhängigkeit Applikationen sind isoliert davon, wie Daten strukturiert und gespeichert werden. Logische Datenunabhängigkeit Änderungen in der logischen Struktur der Daten sind für Applikationen und ad-hoc Queries irrelevant Beispiel: Aufsplitten der Relation Fachbereich: Fachbereich_public (fid: string, fname: string, büro: integer) Fachbereich_private (fid: string, budget: real) Benutzer der Query Kurs_Info sind davon nicht betroffen Physische Datenunabhängigkeit Änderungen an den Speicherstrukturen und Zugriffspfaden sind für das konzeptuelle Schema irrelevant Es gibt verschiedene Arten von Unabhängigkeit: Zugriffspfad Datenstruktur Speicherungsstruktur Seitenzuordnungsstruktur Gerät

Prof. Dr. T. Kudraß17 Concurrency Control Nebenläufige Ausführung von Anwendungsprogrammen wichtig für Performance –Nebenläufige Arbeit wichtig für gute CPU-Auslastung Überlappende Aktionen von verschiedenen Programmen können zu Inkonsistenz führen z.B. Berechnung eines Kontostandes durch eine Transaktion und gleichzeitige Ausführung einer Überweisung DBMS garantiert Isolation und Konsistenz Isolation Illusion einer Transaktion, allein Zugriff auf die Datenbank zu haben. Eine Transaktion sieht nur einen konsistenten Zustand der Datenbank. Konsistenz Korrekter Ablauf einer Transaktion

Prof. Dr. T. Kudraß18 Transaktionskonzept Transaktion –Atomare Sequenz von Datenbank-Aktionen (read / write) Atomizität = All or Nothing Jede Transaktion hinterläßt die DB in einem konsistenten Zustand, wenn diese bei Transaktionsbeginn schon konsistent war. –Benutzer können Integritätsbedingungen auf den Daten formulieren, die vom DBMS kontrolliert werden. –Das DBMS versteht nicht die Semantik der Daten Benutzer ist für den korrekten Ablauf einer Transaktionen verantwortlich –DBMS garantiert, daß die verschachtelte Ausführung einer Menge von Transaktionen {T1,..., Tn} äquivalent zu irgendeiner seriellen Ausführung T1... Tn sind.

Prof. Dr. T. Kudraß19 Datensicherheit DBMS sichert Atomizität auch, wenn das System mitten in einer Transaktion abstürzt Idee: Protokollierung aller Aktionen (Logging), die vom DBMS ausgeführt werden während der Ausführung der Transaktionen –Vor dem Ändern der DB wird der entsprechende Log-Eintrag auf einen sicheren Platz geschrieben. –Nach einem Crash werden die Effekte von teilweise ausgeführten Transaktionen zurückgesetzt (undo) Logging von –Write (alter und neuer Wert) durch Ti –Commit oder Abort von Ti Logs werden oft zusätzlich gesichert auf einem anderen Datenträger Alle Aktivitäten von Logging und Concurrency Control werden transparent durch das DBMS behandelt.

Prof. Dr. T. Kudraß20 Rollen beim Entwurf und Betrieb von DB Endbenutzer –Meist ein computer-naiver Benutzer (z.B. Verkäufer, Verwaltungs- angestellter) –Liest Daten ein, fügt Daten ein oder ändert Daten mit vorgegebenen AP und Masken DB-Anwendungsprogrammierer –Entwickelt AP mit vorgegebenem Schema Schema-Designer –Ermittelt die Anforderungen der Benutzer und Anwender –Entwickelt Teilsichten und integriert diese zum globalen Schema (konzeptuelles Schema) –Bildet Schema zusammen mit DB-Administrator auf spezifisches DBMS ab DB-Administrator –Mitverantwortlich für das Mapping konzeptuelles logisches Schema –Autorisierung neuer Benutzer (Zugriffsrechte) –Verantwortlich für reibungslosen Ablauf (Verfügbarkeit) –Sicherungen / Archivkopien –Installation neuer DBMS-Versionen DBMS-Entwickler –Entwickelt die DBMS-Software

Prof. Dr. T. Kudraß21 Zusammenfassung Vorteile eines Datenbanksystems –Integrierter Datenbestand Vermeidung von Redundanz –Konsistenz, höhere Qualität des Datenbestandes –Einheitliche Mechanismen für Datenschutz, Datensicherheit (Recovery) und Nebenläufigkeit (Concurrency Control) –Physische und logische Datenunabhängigkeit –Leichtere und schnellere Programmentwicklung und -wartung durch einheitliche und explizite Strukturdarstellung, Nutzung von 4GL, Form- und Reportgeneratoren –Optimierbare Anfragesprache (Query Language) Nachteile eines Datenbanksystems –General-Purpose Software oft weniger effizient als spezialisierte Software –Bei konkurrierenden Anforderungen kann DBS nur für einen Teil der AP optimiert werden –Kosten: DBMS und zusätzliche Hardware –Hochqualifiziertes Personal (DB-Administration) –Verwundbarkeit durch Zentralisierung (Ausweg: Verteilung)