Kapitel 10: Transaktionen und Datenintegrität

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Kapitel 10: Transaktionen und Datenintegrität"

Transkript

1 1 Kapitel 10: Transaktionen und Datenintegrität Ein DBMS hat die Korrektheit des Datenbankzustandes unter realen Benutzungsbedingungen zu wahren. Dazu gehören die folgenden Punkte: Datensicherheit (Recovery) Schutz vor Verlust von Daten durch technische Fehler (z.b. Systemabsturz). Integrität (Integrity) Schutz vor Verletzung der Korrektheit und Vollständigkeit von Daten durch berechtigte Benutzer. Synchronisation (Concurrency Control) Schutz vor Fehlern durch sich gegenseitig störenden nebenläufigen Zugriff mehrerer Benutzer. Datenschutz (Security) Schutz vor Zugriffen und Änderungen durch unberechtigte Benutzer. Die Sicherstellung der Datensicherheit, Integrität (= Konsistenz) und Synchronisation wird durch das Konzept der Transaktionen erreicht. Für den Datenschutz wird mit Zugriffsrechten gearbeitet Das Transaktionskonzept Transaktionen (TAs) sind die Einheiten integritätserhaltender Zustandsänderungen einer Datenbank. Transaktion DB vorher (konsistent) DB tmp1 DB tmpn DB nachher (konsistent) Transaktionen sind ein wesentliches Konzept für die Integritätserhaltung. Sie dienen zur Synchronisation (Concurrency Control) im Mehrbenutzerbetrieb. In Bezug auf die Datensicherheit (Recovery) sind Transaktionen jedoch auch für Einbenutzersysteme wichtig. Beispiel Bankwesen: Überweisung von Huber an Meier in Höhe von 200,00 DM Möglicher Bearbeitungsplan: (1) Erniedrige Stand von Huber um 200,00 (2) Erhöhe Stand von Meier um 200,00 Möglicher Ablauf: Konto Kunde Stand Meier Huber 1.000, ,00 Konto Kunde Stand (1) (2) Meier 1.000,00 Huber 1.300,00 Systemabsturz Wichtig: Inkonsistenter Datenbankzustand darf nicht entstehen bzw. nicht dauerhaft bestehen bleiben.

2 Eigenschaften von Transaktionen Eine grundlegende Charakterisierung von Transaktionen ist durch das ACID-Prinzip gegeben: 3 Atomicity (Atomarität, alles-oder-nichts -Prinzip) Der Effekt einer Transaktion kommt entweder ganz oder gar nicht zum Tragen. Consistency (Konsistenz, Integritätserhaltung) Durch eine Transaktion wird ein konsistenter Datenbankzustand wieder in einen konsistenten Datenbankzustand überführt. Isolation (Isoliertheit, logischer Einbenutzerbetrieb) Innerhalb einer Transaktion nimmt ein Benutzer Änderungen durch andere Benutzer nicht wahr. Durability (Dauerhaftigkeit, Persistenz) Der Effekt einer abgeschlossenen Transaktion bleibt dauerhaft in der Datenbank erhalten. Eine weitere Forderung ist, daß eine Transaktion in endlicher Zeit bearbeitet werden kann. Erweitertes Konzept: Designtransaktionen Der Entwurf komplexer Systeme (CAD, Software, Multimedia-Präsentationen, ) kann nicht innerhalb weniger Sekunden oder Minuten durchgeführt werden, sondern zieht sich über Tage, Wochen oder Monate hin. Dabei sollen aber durchaus auch inkonsistente Zwischenzustände der Datensicherung unterliegen. Ansätze hierfür sind Techniken zur Verwaltung langer Transaktionen und geschachtelter Transaktionen. Steuerung von Transaktionen begin of transaction Beginn der Befehlsfolge einer neuen Transaktion SQL: Transaktionen werden stets implizit begonnen, es gibt kein begin work o.ä. end of transaction, commit Bestätigung der Transaktion durch den Benutzer Die Änderungen seit Beginn der Transaktion werden endgültig bestätigt Der jetzt erreichte Zustand soll dauerhaft gespeichert werden Der Zustand wird durch den Benutzer für konsistent erklärt SQL: commit work oder nur commit abort transaction Abbruch der Transaktion durch das Programm bzw. den Benutzer (Rücksetzen, ABORT) Die Änderungen der Transaktion werden zurückgesetzt Der ursprüngliche Zustand vor der Transaktion wird wiederhergestellt. SQL: rollback work oder nur rollback 4 Beispiel: UPDATE Konto SET Stand = Stand 200 WHERE Kunde = Huber ; UPDATE Konto SET Stand = Stand WHERE Kunde = Meier ; COMMIT;

3 5 Ein COMMIT kann gelingen: Der neue Zustand wird dauerhaft gespeichert, oder scheitern: Der ursprüngliche Zustand wie zu Beginn der Transaktion bleibt erhalten (bzw. wird wiederhergestellt). Ein COMMIT kann scheitern, wenn die Verletzung von Integritätsbedingungen erkannt wird. Schematischer Ablauf DB vorher (konsistent) Transaktion DB tmp1 DB tmpn rollback gelingt commit mißlingt (abort) DB nachher (konsistent) Lange Transaktionen werden durch die folgenden Anweisungen unterstützt: Definition eines Sicherungspunktes, auf den sich eine (noch aktive) Transaktion zurücksetzen läßt. Die Änderungen dürfen allerdings noch nicht endgültig festgeschrieben werden, da die Transaktion bis hin zur Bestätigung des COMMIT noch scheitern kann. SQL: savepoint identifier Zurücksetzen der aktiven Transaktion auf einen definierten Sicherungspunkt. SQL: rollback to savepoint identifier oder nur rollback to identifier Datensicherheit Eine Aufgabe des DBMS besteht darin, die dauerhafte und konsistente Verfügbarkeit des Datenbestandes sicherzustellen. Ein wichtiger Aspekt ist die Berücksichtigung von Fehlern, die im laufenden Betrieb und auf den Datenträgern auftreten können. Klassifikation von Fehlern Transaktionsfehler Lokaler Fehler einer noch nicht abgeschlossenen Transaktion, z.b. aufgrund Fehler und Abbruch des Anwendungsprogrammes (z.b. Division durch Null, ) Verletzung von Integritätsbedingungen oder Zugriffsrechten expliziter Abbruch der Transaktion (rollback) durch den Benutzer Konflikte mit nebenläufigen Transaktionen. Systemfehler Verlust von Hauptspeicherinformation z.b. wegen Stromausfall, Ausfall der CPU, Absturz des Betriebssystems, etc. Die permanenten Speicher (Platten) sind nicht betroffen. Medienfehler Verlust von permanenten Daten durch Zerstörung des Speichermediums, z.b. Plattencrash, Brand, Wasserschaden, etc.

4 7 Techniken zur Wiederherstellung (Recovery) Wichtigstes Ziel ist es, wieder einen konsistenten Datenbankzustand zu erreichen. Dabei soll soviel an früherer Information wiederhergestellt werden wie möglich, nicht jedoch auf Kosten der Integrität. Abhängig von der Art des aufgetretenen Fehlers gibt es verschiedene Wiederherstellungstechniken: Rücksetzen (bei Transaktionsfehler) Der ursprüngliche Datenbankzustand wie zu Beginn der Transaktion wird wiederhergestellt; der Anfangszustand jeder TA muß deshalb bis zum COMMIT verfügbar gehalten werden. Warmstart (bei Systemfehler) Rücksetzen (UNDO) aller vor dem Fehler noch nicht abgeschlossenen Transaktionen. Kaltstart (bei Medienfehler) Aufsetzen auf einem früheren, gesicherten Datenbankzustand (backup) Nachführen (REDO) aller Transaktionen, die bereits committed waren Rücksetzen (UNDO) aller Transaktionen, deren COMMIT noch ausstand Technische Grundlagen Duplizierung (d.h. gezielte Redundanz) des Datenbankzustandes durch Backup-Techniken (Bänder, Spiegelplatten, zusätzliches Rechenzentrum in anderer Stadt, ) Logfiles (logging): Mitprotokollierung der laufenden Aktionen, Beginn und Ende (COMMIT, ABORT) von Transaktionen. Logfiles entstehen sequentiell > schnelles Schreiben möglich Integrität und Integritätsbedingungen (IB) Für die Beispiele betrachten wir das folgende relationale Datenbankschema: Kunde (KName, KAdr, Kto) Auftrag (KName, Ware, Menge) Lieferant (LName, LAdr, Ware, Preis) 8 Beispiele für Integritätsbedingungen: (IB1) Kein Kundenname darf mehrfach in der Relation Kunde vorkommen. (IB2) Jeder Kundenname in Auftrag muß auch in Kunde vorkommen. (IB3) Kein Kunden-Kontostand darf unter -100 DM absinken. (IB4) Das Konto von Weiß darf überhaupt nicht überzogen werden. (IB5) Nur solche Waren dürfen bestellt werden, für die es mindestens einen Lieferanten gibt. (IB6) Der Brotpreis darf nicht erhöht werden. Man unterscheidet statische Integritätsbedingungen: Einschränkungen der möglichen Datenbankzustände dynamische Integritätsbedingungen: Einschränkungen der möglichen Zustandsübergänge sowie modellinhärente Integritätsbedingungen: Durch das Datenmodell vorgegeben explizite Integritätsbedingungen: Durch den Benutzer formuliert

5 Inhärente Integritätsbedingungen des relationalen Modells: Typintegrität (Domains) Werte müssen zum Typ passen (Spezialfall: Zulässigkeit von Nullwerten). Von den Systemen werden verschiedene primitive Datentypen unterstützt (herstellerabhängig). Benutzerdefinierte Domains sind z.b. im SQL-Standard vorgesehen und werden zunehmend unterstützt. Schlüsselintegrität Die Datenbank darf keine zwei Tupel mit gleichem Schlüssel enthalten. Referentielle Integrität (Fremdschlüsselintegrität) Wenn Relation R einen Schlüssel von Relation S enthält, dann muß für jedes Tupel in R auch ein entsprechendes Tupel in S vorkommen. Beispiel: IB2. 9 Explizite Integritätsbedingungen Formulierung in der Anfragesprache bzw. unter möglichst geringer Erweiterung der Anfragesprache. Beispiel: Integritätsbedingungen in relationaler Algebra z.b. IB2: π KName (Auftrag) π KName (Kunde) z.b. IB3: σ Kto < 100 (Kunde) = Der Relationenkalkül eignet sich hervorragend, da sich allgemeine Aussagen gut formulieren lassen. 10 Überwachung von Integritätsbedingungen a) durch die Anwendungsprogramme Nachteile: hoher Programmieraufwand fehleranfällig (z.b. Inkonsistenzen zwischen verschiedenen Programmen) nicht unter zentraler Kontrolle (DBA und DBS) b) durch Integritätsmonitor als Komponente des DB-Systems. Realisierung: DB-Trigger Nachteil: Effizienzprobleme Formale Beschreibung von Integritätsbedingungen durch das Tripel (Auslöser, Bedingung, Aktion), engl. ECA-Rules (Event, Condition, Action): Auslöser: (Wann ist die Bedingung zu prüfen?) nach INSERT, DELETE, UPDATE oder bei Abschluß einer Transaktion Bedingung: (die eigentliche Bedingung) Aktion: (Was ist bei Verletzung der Bedingung zu tun?) Zurückweisen der Änderung Zurücksetzen der Transaktion Automatisches Auslösen von Folgeänderungen Externes Programm aufrufen (z.b. ausführliche Fehlermeldung ausgeben; Datenbankadministrator durch Mail benachrichtigen; )

6 Synchronisation (Concurrency Control) Nach dem ACID-Prinzip Isolation sollen Transaktionen im logischen Einbenutzerbetrieb ablaufen, d.h. innerhalb einer Transaktion ist ein Benutzer von den Aktivitäten anderer Benutzer nicht betroffen. Probleme bei unkontrollierter nebenläufiger Ausführung von Transaktionen Ist die Isolierung der Transaktionen in einem Datenbanksystem nicht sichergestellt, können verschiedene Anomalien auftreten: Verlorengegangene Änderungen (Lost Updates) Zugriff auf schmutzige Daten (Dirty Read, Dirty Write) Nicht-reproduzierbares Lesen Phantomproblem Diese Anomalien werden unter anderem am Beispiel der folgenden Flugdatenbank erläutert: Passagiere FlugNr Name Platz LH745 LH745 Müller Meier 3A 6D LH745 Huber 5C BA932 Schmidt 9F BA932 Huber 5C Fluginfo FlugNr AnzPass LH745 3 BA (1) Verlorengegangene Änderungen (Lost Update) Änderungen einer Transaktion können durch Änderungen anderer Transaktionen überschrieben werden und dadurch verloren gehen. Beispiel: Zwei Transaktionen T1 und T2 führen je eine Änderung auf demselben Objekt aus: UPDATE Fluginfo SET AnzPass = AnzPass + 1 WHERE FlugNr = BA932 ; Möglicher Ablauf: T1 A 1.i Read Fluginfo[AnzPass] > x 1 A 1.i+1 x 1 := x 1 +1 A 1.i+2 Write x 1 > Fluginfo[AnzPass] Ergebnis: Beide Transaktionen haben die Anzahl der Passagiere (für denselben Flug) jeweils um eins erhöht. Obwohl zwei Erhöhungen stattgefunden haben, ist in der Datenbank nur die Erhöhung von T1 wirksam. Die Änderung von T2 ist verlorengegangen. T2 A 2.j Read Fluginfo[AnzPass] > x 2 A 2.j+1 x 2 := x 2 +1 A 2.j+2 Write x 2 > Fluginfo[AnzPass]

7 13 (2) Zugriff auf schmutzige Daten (Dirty Read, Dirty Write) Als schmutzige Daten bezeichnet man Objekte, die von einer noch nicht abgeschlossenen Transaktion geändert wurden. Beispiel: T1 erhöht das Gehalt um 500 Euro, wird aber später abgebrochen. T2 erhöht das Gehalt um 5% und wird erfolgreich abgeschlossen. Möglicher Ablauf: A 1.1 T1 UPDATE Personal SET Gehalt = Gehalt + 500; ROLLBACK; Ergebnis: Der Abbruch der ändernden Transaktion T1 macht die geänderten Werte ungültig, sie werden zurückgesetzt. Die Transaktion T2 hat jedoch die geänderten Werte gelesen (Dirty Read) und weitere Änderungen darauf aufgesetzt (Dirty Write). Verstoß gegen ACID: Dieser Ablauf verursacht einen dauerhaften, fehlerhaften Datenbankzustand (Consistency), bzw. T2 muß nach COMMIT zurückgesetzt werden (Durability). A 2.1 T2 UPDATE Personal SET Gehalt = Gehalt * 1.05; COMMIT; (3) Nicht-reproduzierbares Lesen Eine Transaktion sieht während ihrer Ausführung unterschiedliche Werte desselben Objekts. 14 Beispiel: T1: Gib die Fluginfo für alle Flüge und nochmal die Anzahl der Passagiere für BA932 aus. T2: Buche den Platz 3F auf dem Flug BA932 für Passagier Meier. Möglicher Ablauf: A 1.1 A 1.2 T1 SELECT * FROM Fluginfo; SELECT AnzPass FROM Fluginfo WHERE FlugNr = BA932 ; Ergebnis: Die Anweisungen A 1.1 und A 1.2 liefern ein unterschiedliches Ergebnis für den Flug BA932, obwohl die Transaktion T1 den Datenbankzustand nicht geändert hat. T2 A 2.1 INSERT INTO Passagiere (*) VALUES ( BA932, Meier, 3F ); A 2.2 UPDATE Fluginfo SET AnzPass = AnzPass + 1 WHERE FlugNr = BA932 ; COMMIT; A 2.3

8 15 (4) Phantomproblem Das Phantomproblem ist ein nicht-reproduzierbares Lesen in Verbindung mit Aggregatfunktionen. Beispiel: AnzPass werde jetzt durch COUNT(*) berechnet und nicht mehr in FlugInfo gespeichert. T1: Drucke die Passagierliste sowie die Fluginfo für den Flug LH745. T2: Buche den Platz 7D auf dem Flug LH745 für Phantomas. Möglicher Ablauf: T1 A 1.1 SELECT * FROM Passagiere WHERE FlugNr = LH745 ; A 1.2 SELECT AnzPass = COUNT(*) FROM Passagiere WHERE FlugNr = LH745 ; Ergebnis: Für die Transaktion T1 erscheint Phantomas noch nicht auf der Passagierliste, obwohl er in der danach ausgegebenen Anzahl der Passagiere schon berücksichtigt ist. A 2.1 A 2.2 T2 INSERT INTO Passagiere VALUES ( LH745, Phantomas, 7D ); COMMIT; 16 Serialisierbarkeit Eine wichtiges Konzept, um die ACID-Eigenschaft Isolation garantieren zu können, ist die Serialisierbarkeit von Transaktionen. Das bedeutet, die nebenläufige Bearbeitung von Transaktionen geschieht für den Benutzer transparent, d.h. als ob die Transaktionen (in einer beliebigen Reihenfolge) hintereinander ausgeführt worden wären. Begriffe Ein Schedule für eine Menge {T 1,, T n } von Transaktionen ist eine Folge von Aktionen, die durch Mischen der Aktionen der T i s entsteht, wobei die Reihenfolge innerhalb der jeweiligen Transaktion beibehalten wird. Ein serieller Schedule ist ein Schedule S von {T 1,, T n }, in dem die Aktionen der einzelnen Transaktionen nicht untereinander verzahnt sondern in Blöcken hintereinander ausgeführt werden. Ein Schedule S von {T 1,, T n } ist serialisierbar, wenn er dieselbe Wirkung hat wie ein beliebiger serieller Schedule von {T 1,, T n }. Die obigen Problemfälle stellen Beispiele für nicht-serialisierbare Schedules dar. Die zentrale Konsistenzbedingung für die Ablaufsteuerung nebenläufiger Transaktionen ist: Nur serialisierbare Schedules dürfen zugelassen werden.

9 17 Techniken zur Synchronisation Pessimistische Ablaufsteuerung (Sperrverfahren, Locking) Durch Lese- und Schreibsperren wird verhindert, daß Änderungen sich auf nebenläufige Transaktionen auswirken können. Nachteil: Schreibende, aber auch nur-lesende Transaktionen müssen ggf. warten, bis andere schreibende (oder auch lesende) Transaktionen abgeschlossen sind. Vorteil: In der Regel nur wenige Rücksetzungen aufgrund von Synchronisationsproblemen nötig. > Standardverfahren in kommerziellen DBMS Optimistische Ablaufsteuerung (Zeitstempelverfahren) Transaktionen dürfen ungehindert bis zum COMMIT arbeiten. Bei COMMIT wird geprüft, ob ein Konflikt aufgetreten ist (Validierung). Die Transaktion wird ggf. zurückgesetzt. Die Validierung wird anhand von Zeitstempeln durchgeführt ( Gab es seit Beginn der Transaktion ein Commit einer anderen Transaktion, das dieselben Daten betrifft? ). > nur geeignet, falls Konflikte zwischen Schreibern sehr selten auftreten. Nur-lesende Transaktionen können sich gegenseitig nicht beeinflussen, da Synchronisationsprobleme nur im Zusammenhang mit Schreiboperationen auftreten. Es gibt deshalb die Möglichkeit, Transaktionen als nur-lesend zu markieren, wodurch die Synchronisation vereinfacht und ein höherer Parallelitätsgrad ermöglicht wird: SET TRANSACTION READ-ONLY (kein INSERT, UPDATE, DELETE) SET TRANSACTION READ-WRITE (alle Zugriffe möglich) 10.5 Datenschutz Begriff: Schutz der Daten vor Zugriffen und Manipulation durch unberechtigte Benutzer. Allgemeine Maßnahmen Identifikation des Benutzers (etwa durch Paßwort oder sogar durch Personal) Schutz vor physischen Angriffen (Diebstahl von Magnetbändern, Anzapfen von Datenübertragungsleitungen, etc.) Betriebssystem muß Zugriff auf DB-Files durch fremde Programme verhindern. Datenverschlüsselung DBS-spezifische Techniken Sichten (Views) als Schutzmechanismus (insbesondere read-only Sicht). Es ergeben sich Probleme, wenn auch Änderungen erlaubt sein sollen. Verwaltung von Rechten entsprechend einem Sicherheitsmodell Discretionary Access Control Mandatory Access Control Umsetzung: In relationalen Systemen können Rechte vom System über eine Systemtabelle verwaltet und innerhalb des Systems weitergegeben werden. 18

10 19 Das Sicherheitsmodell DAC Für das Modell Discretionary Access Control (DAC) werden die folgenden Informationen verwaltet: Wer hat das Recht? (Sicherheitssubjekte) > Benutzeridentifikator für einzelne Benutzer oder Menge von Benutzern Auf welche Teile der Datenbank bezieht sich das Recht? (Sicherheitsobjekte) > beschrieben durch Anfragesprache oder Datendefinitionssprache Worin besteht das Recht (erlaubte Operationen)? > Zugriffsrechte für Lesen und für Ändern (Einfügen, Entfernen, Modifizieren) Darf das Recht weitergegeben werden? Grundprinzipien: > Jeder Benutzer hat Rechte bzgl. der von ihm erzeugten Objekte. > Datenbankadministrator (DBA) hat alle Rechte. Bewertung: Einfaches und sehr gebräuchliches Modell Erzeuger von Daten sind mit der Verantwortung für deren Sicherheit belastet. Abhängig von der Granularität der Objekte (Datenbank, Relationen, Tupel) kann die Verwaltung der Rechte sehr aufwendig werden. 20 Das Sicherheitsmodell MAC Beim Modell Mandatory Access Control (MAC) werden Subjekte und Objekte mit einer Sicherheitseinstufung markiert (z.b. streng geheim, geheim, vertraulich, unklassifiziert ): Vertrauenswürdigkeit ( Clearance ) eines Subjektes s: clear(s) Sensitivität ( Classification ) eines Objektes o: class(o) Für die Zugriffskontrolle werden die folgenden Regeln verwendet: Ein Subjekt s darf ein Objekt o nur lesen, wenn das Objekt eine geringere Sicherheitseinstufung besitzt: class(o) clear(s) Beim Ändern muß ein Objekt o mindestens die Einstufung des schreibenden Subjektes s erhalten: clear(s) class(o) Die zweite Regel kontrolliert den Informationsfluß, um den Mißbrauch durch autorisierte Benutzer zu verhindern. Eine streng geheime Information könnte sonst durch einen berechtigten Benutzer öffentlich zugänglich gemacht werden (Write-Down). Bewertung Potentiell größere Sicherheit durch abgestufte Sicherheitsklassen Jedes Objekt wird einzeln eingestuft > hoher Verwaltungsaufwand in der Datenbank. Benutzer mit unterschiedlicher Einstufung können nur schwer zusammenarbeiten, da von höher eingestuften Benutzern veränderte Daten von niedriger eingestuften Kollegen nicht mehr lesbar sind.

Kapitel 2 Transaktionsverwaltung

Kapitel 2 Transaktionsverwaltung LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2014 Kapitel 2 Transaktionsverwaltung Vorlesung: PD Dr. Peer

Mehr

Kapitel 8: Transaktionen

Kapitel 8: Transaktionen Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2006/2007 Vorlesung: Dr. Peer Kröger Übungen: Karsten

Mehr

Datenintegrität und Transaktionskonzept

Datenintegrität und Transaktionskonzept und Transaktionskonzept 1. / Datenkonsistenz 1 Mögliche Gefährdung der : Missachtung von Konsistenzbedingungen ("Semantische Integrität") Inkorrekte Verweise auf Datensätze in verschiedenen Tabellen ("Referentielle

Mehr

Kapitel 3 Synchronisation

Kapitel 3 Synchronisation LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2014 Kapitel 3 Synchronisation Vorlesung: PD Dr. Peer Kröger

Mehr

Transaktionsverwaltung

Transaktionsverwaltung Transaktionsverwaltung VU Datenbanksysteme vom 21.10. 2015 Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Transaktionsverwaltung

Mehr

Darunter versteht man die Anmeldung eines Benutzers beim System unter Angabe einer Benutzererkennung.

Darunter versteht man die Anmeldung eines Benutzers beim System unter Angabe einer Benutzererkennung. Datenmanagement 60 5 Datenschutz und Datensicherheit 5.1 Datenschutz Wer wird hier geschützt? Personen Ein anderer Begriff für Datenschutz ist Zugriffskontrolle. Datenschutz soll sicherstellen, dass alle

Mehr

1 Transaktionen in SQL. 2 Was ist eine Transaktion. 3 Eigenschaften einer Transaktion. PostgreSQL

1 Transaktionen in SQL. 2 Was ist eine Transaktion. 3 Eigenschaften einer Transaktion. PostgreSQL 1 Transaktionen in SQL Um Daten in einer SQL-Datenbank konsistent zu halten, gibt es einerseits die Möglichkeit der Normalisierung, andererseits sog. Transaktionen. 2 Was ist eine Transaktion Eine Transaktion

Mehr

Transaktionen Recovery Isolationslevel. Datenbanksysteme. Transaktionen. Burkhardt Renz. Fachbereich MNI Technische Hochschule Mittelhessen

Transaktionen Recovery Isolationslevel. Datenbanksysteme. Transaktionen. Burkhardt Renz. Fachbereich MNI Technische Hochschule Mittelhessen Transaktionen Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2015 Motivation ACID-Eigenschaften Übersicht Transaktionen Motivation ACID-Eigenschaften Ursachen für Logging und Backup

Mehr

Transaktionsverwaltung

Transaktionsverwaltung Transaktionsverwaltung Commit Eigenschaften von Transaktionen (ACID) Transaktionen in SQL Kapitel 9 1 Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1. Lese den Kontostand

Mehr

View. Arbeiten mit den Sichten:

View. Arbeiten mit den Sichten: View "individuelle Sicht" (vgl. 3-Schichten-Modell) virtuelle Tabellen: in der DB wird nicht deren Inhalt, sondern nur die Ableitungsregel gespeichert. Arbeiten mit den Sichten: Anfragen: kein Problem.

Mehr

Datenbanken: Transaktionskonzept und Concurrency Control

Datenbanken: Transaktionskonzept und Concurrency Control Wesentlich für das Arbeiten mit Datenbanken sind konsistente Datenbestände! Folgerung: es muss sichergestellt werden, dass Datenmanipulationen von Benutzern immer in einem erneut konsistenten Zustand der

Mehr

Software-Engineering und Datenbanken

Software-Engineering und Datenbanken Software-Engineering und Datenbanken Transaktionskonzepte 1 Der Transaktionsbegriff Eine Transaktion ist eine Folge von Operationen, die die Datenbank von einem konsistenten Zustand in einen neuen überführen.

Mehr

Datenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer

Datenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Wesentliche Inhalte Begriff DBS Datenbankmodelle Datenbankentwurf konzeptionell, logisch und relational

Mehr

Synchronisation in Datenbanksystemen in a nutshell

Synchronisation in Datenbanksystemen in a nutshell Synchronisation in Datenbanksystemen in a nutshell 1. Modell für nebenläufige Transaktionen und Korrektheitskriterium Transaktionsmodell: Folgen von Lese und Schreiboperationen abgeschlossen durch c=commit.

Mehr

Datenbanken: Backup und Recovery

Datenbanken: Backup und Recovery Der Prozess der Wiederherstellung der Daten einer Datenbank nach einem Fehler im laufenden Betrieb in einen konsistenten, möglichst verlustfreien Zustand heißt Recovery. Beteiligt an diesem Recovery sind

Mehr

Tag 4 Inhaltsverzeichnis

Tag 4 Inhaltsverzeichnis Tag 4 Inhaltsverzeichnis Normalformen Problem Formen (1-4) Weitere Formen Transaktionen Synchronisationsprobleme Überblick Autocommit Locking Savepoints Isolation levels Übungen RDB 4-1 Normalformen Problematik

Mehr

Datenbanksysteme Technische Grundlagen Transaktions-Konzept, Mehrbenutzer-Synchronisation, Fehlerbehandlung

Datenbanksysteme Technische Grundlagen Transaktions-Konzept, Mehrbenutzer-Synchronisation, Fehlerbehandlung Datenbanksysteme Technische Grundlagen Transaktions-Konzept, Mehrbenutzer-Synchronisation, Fehlerbehandlung Prof. Dr. Manfred Gruber FH München Transaktions-Konzept (1) Beispiel: op 1 BOT op 2 read(k 1

Mehr

Wiederherstellung (Recovery)

Wiederherstellung (Recovery) Fragestellungen Aufgaben der Komponenten für das Recovery: Sicherstellung der Dauerhaftigkeit der gespeicherten Daten, d.h. Daten, die in einer Transaktion einmal bestätigt wurden (commit), bleiben auch

Mehr

Koordination des Mehrbenutzerbetriebs 9. Koordination des Mehrbenutzerbetriebs

Koordination des Mehrbenutzerbetriebs 9. Koordination des Mehrbenutzerbetriebs 9. Mehrbenutzerbetrieb: DBS bedient gleichzeitig mehrere Benutzer Benutzer arbeiten zwar unabhängig voneinander, können aber die gleiche Relation oder sogar den gleichen Datensatz bearbeiten! Aktivität

Mehr

Transaktionen und Synchronisation konkurrierender Zugriffe

Transaktionen und Synchronisation konkurrierender Zugriffe Transaktionen und Synchronisation konkurrierender Zugriffe Fragestellungen Aufgaben des Transaktionsmanagers Aktivieren von Transaktionen entsprechend den Anforderungen von Anwendungsprogrammen. Dabei

Mehr

Software-Engineering und Datenbanken

Software-Engineering und Datenbanken Software-Engineering und Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Prof. Dr. Bernhard Schiefer 1-1 Wesentliche Inhalte Begriff DBS Datenbankmodelle

Mehr

Datenbanken: Datenintegrität. www.informatikzentrale.de

Datenbanken: Datenintegrität. www.informatikzentrale.de Datenbanken: Datenintegrität Definition "Datenkonsistenz" "in der Datenbankorganisation (...) die Korrektheit der gespeicherten Daten im Sinn einer widerspruchsfreien und vollständigen Abbildung der relevanten

Mehr

Informations- und Wissensmanagement

Informations- und Wissensmanagement Übung zur Vorlesung Informations- und Wissensmanagement (Übung 1) Frank Eichinger IPD, Lehrstuhl für Systeme der Informationsverwaltung Zur Person Beruflicher Hintergrund Studium an der TU Braunschweig

Mehr

Übungen zur Vorlesung. Datenbanken I

Übungen zur Vorlesung. Datenbanken I Prof. Dr. S. Böttcher Adelhard Türling Übungen zur Vorlesung Datenbanken I WS 2002/2003 Blatt 6 Aufgabe 1: In der Vorlesung haben Sie für die Einbringstrategie Update in Place die Vorgehensweisen steal,

Mehr

Datenbanken II Literatur

Datenbanken II Literatur Datenbanken II Literatur C. J. Date: An Introduction to Database Systems; Addison-Wesley Systems Programming Series. 6th ed. 1995 H. E. Erbs, S. Karczewski und I. Schestag: Datenbanken (Datenmodelle, Objekte,

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

P.A. Bernstein, V. Hadzilacos, N. Goodman

P.A. Bernstein, V. Hadzilacos, N. Goodman TRANSAKTIONEN UND DATENINTEGRITÄT Concurrency Control and Recovery in Database Systems P.A. Bernstein, V. Hadzilacos, N. Goodman Addison Wesley, 1987. Kapitel 1. und 6. Grundlagen der Datenbanksysteme

Mehr

Die Grundbegriffe Die Daten Die Informationen

Die Grundbegriffe Die Daten Die Informationen Die Grundbegriffe Die Daten sind diejenigen Elemente, die vom Computer verarbeitet werden. Die Informationen sind Wissenselemente, welche durch die Analyse von Daten erhalten werden können. Die Daten haben

Mehr

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

Mehr

Literatur und Quellen. Datenbanken. Inhalt. Inhalt. Transaktionen. Nikolaus Augsten. Wintersemester 2013/14

Literatur und Quellen. Datenbanken. Inhalt. Inhalt. Transaktionen. Nikolaus Augsten. Wintersemester 2013/14 Literatur und Quellen Datenbanken Nikolaus Augsten nikolaus.augsten@sbg.ac.at FB Computerwissenschaften Universität Salzburg Wintersemester 2013/14 Lektüre zu den Themen : Kapitel 9 () aus Kemper und Eickler:

Mehr

Tag 4 Inhaltsverzeichnis

Tag 4 Inhaltsverzeichnis Tag 4 Inhaltsverzeichnis Normalformen Problem Formen (1-4) Weitere Formen Transaktionen Synchronisationsprobleme Überblick Autocommit Locking Savepoints Isolation levels Übungen RDB 4-1 Normalformen Problematik

Mehr

Recovery- und Buffermanager

Recovery- und Buffermanager Recovery- und Buffermanager Gesamtübersicht der Komponenten beim Zusammenspiel des lokalen Recovery Manager und des Datenbank Buffer Manager: persistenter Log Main memory Lokaler Recovery Manager (LRM)

Mehr

Vorlesung 30.03.2009 1) Einführung

Vorlesung 30.03.2009 1) Einführung Vorlesung 30.03.2009 1) Einführung Was versteht man unter dem Begriff Datenbank? - Eine Datenbank ist eine Struktur zur Speicherung von Daten mit lesendem und schreibendem Zugriff - Allgemein meint man

Mehr

Kapitel 12 Integrität der Datenbank

Kapitel 12 Integrität der Datenbank Kapitel 12 Integrität der Datenbank 12 Integrität der Datenbank 12 Integrität der Datenbank...1 12.1 Aspekte des Integritätsproblems...3 12.2 Semantische Integrität...4 12.3 Das Konzept der Transaktion...6

Mehr

Kapitel 1: Einführung

Kapitel 1: Einführung Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Sommersemester 2006 Vorlesung: Christian Böhm Übungen: Elke Achtert,

Mehr

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird. Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,

Mehr

Inhaltsverzeichnis. Inhaltsverzeichnis

Inhaltsverzeichnis. Inhaltsverzeichnis Inhaltsverzeichnis Das Script für die Lehrveranstaltung Datenmanagement wurde im Wintersemester 2007/2008 komplett überarbeitet und neu strukturiert. Wir bitten darum, eventuelle Fehler im Script an Milan

Mehr

Teil I Einführung & Grundlagen. 1.1 Was ist eine Transaktion?

Teil I Einführung & Grundlagen. 1.1 Was ist eine Transaktion? Teil I Einführung & Grundlagen Kapitel 1: Einführung in das Transaktionskonzept 1.1 Was ist eine Transaktion? 1.2 Transaktionseigenschaften 1.3 Beispiele Datenbanktransaktionen: Banküberweisung Moderne

Mehr

Datenbanken Konsistenz und Mehrnutzerbetrieb III

Datenbanken Konsistenz und Mehrnutzerbetrieb III Datenbanken Konsistenz und Mehrnutzerbetrieb III 1. Oracle Architektur! Komponenten des Oracle Servers! Zugriff über Netzwerk 2. Zugriffsrechte! Starten und Schließen der Datenbank! Nutzer und Rollen!

Mehr

SQL: statische Integrität

SQL: statische Integrität SQL: statische Integrität.1 SQL: statische Integrität Im allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen erfüllen. Integritätsbedingungen

Mehr

Datenbank- Verwaltungssysteme

Datenbank- Verwaltungssysteme Datenbank- Verwaltungssysteme Diana Troancă Babeș-Bolyai Universität Fakultät Mathematik und Informatik Dozent: Diana Troancă E-mail: dianat [at] cs.ubbcluj.ro Website: www.cs.ubbcluj.ro/~dianat/ Feedback

Mehr

Datensicherheit. 8. Datensicherheit

Datensicherheit. 8. Datensicherheit 8. Anforderungen an ein DBMS Identifikation und Authentisieren von Benutzern Autorisierung und Zugriffskontrolle Aufzeichnung von sicherheitsrelevanten Aktionen eines Benutzers typische Schwachstellen

Mehr

Gliederung Datenbanksysteme

Gliederung Datenbanksysteme Gliederung Datenbanksysteme 5. Datenbanksprachen 1. Datendefinitionsbefehle 2. Datenmanipulationsbefehle 3. Grundlagen zu SQL 6. Metadatenverwaltung 7. DB-Architekturen 1. 3-Schema-Modell 2. Verteilte

Mehr

Grundlagen von Datenbanken

Grundlagen von Datenbanken Grundlagen von Datenbanken Aufgabenzettel 1 Grundlagen Datenbanken: Kurzer historischer Überblick (1) Anwendung 1 Anwendung 2 Datei 1 Datei 2 Datei 3 Zugriff auf Dateien ohne spezielle Verwaltung 2 Exkurs:

Mehr

Datenbanken 16.1.2008. Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt:

Datenbanken 16.1.2008. Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt: Datenbanksysteme Entwicklung der Datenbanksysteme Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt: 1. Generation: In den fünfziger

Mehr

Vorlesung Informationssysteme

Vorlesung Informationssysteme Saarbrücken, 25.06.2015 Information Systems Group Vorlesung Informationssysteme Vertiefung Kapitel 8: Transaktionen und wann sie gebraucht werden Erik Buchmann (buchmann@cs.uni-saarland.de) Foto: M. Strauch

Mehr

Teil VIII Transaktionen, Integrität und Trigger

Teil VIII Transaktionen, Integrität und Trigger page.1 Teil VIII Transaktionen, Integrität und Trigger page.2 Transaktionen, Integrität und Trigger Transaktionen, Integrität und Trigger 1 Grundbegriffe 2 Transaktionsbegriff 3 Transaktionen in SQL 4

Mehr

7. Datenintegrität/-Sicherheit

7. Datenintegrität/-Sicherheit 7. Datenintegrität/-Sicherheit 7.1 Datenintegrität 7.2 Datensicherheit 7.2.1 Einleitung 7.2.2 Einfache Zugriffskontrolle in SQL 7.2.3 Verfeinerte Zugriffkontrolle 7.2.4 MAC und Multilevel DBs 33 7.2 Datensicherheit

Mehr

Synchronisierung von Transaktionen ohne Sperren. Annahme: Es gibt eine Methode, zu erkennen, wann eine Transaktion die serielle Ordnung verletzt.

Synchronisierung von Transaktionen ohne Sperren. Annahme: Es gibt eine Methode, zu erkennen, wann eine Transaktion die serielle Ordnung verletzt. OPTIMISTIC CONCURRENCY CONTROL Synchronisierung von Transaktionen ohne Sperren. Annahme: Es gibt eine Methode, zu erkennen, wann eine Transaktion die serielle Ordnung verletzt. Abbruch einer Transaktion

Mehr

Vorlesungsinhalt. Recovery. G. Specht: Datenbanksysteme 11-1. Kapitel XI. Vorlesung Datenbanksysteme Univ.-Prof. Dr.

Vorlesungsinhalt. Recovery. G. Specht: Datenbanksysteme 11-1. Kapitel XI. Vorlesung Datenbanksysteme Univ.-Prof. Dr. Recovery Kapitel XI Vorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht Universität Innsbruck Institut für Informatik Datenbanken und Informationssysteme (DBIS) Vorlesungsinhalt 11. Recovery Fehler

Mehr

PostgreSQL im praktischen Einsatz. Stefan Schumacher

PostgreSQL im praktischen Einsatz. Stefan Schumacher PostgreSQL im praktischen Einsatz 2. Brandenburger Linux Infotag 2005 Stefan Schumacher , PGP Key http:/// $Header: /home/daten/cvs/postgresql/folien.tex,v 1.11 2005/04/25

Mehr

Vom Datenmodell zur Datenbank

Vom Datenmodell zur Datenbank Vom Datenmodell zur Datenbank Eine Einführung in Relationale Datenbanksysteme am Beispiel MS-ACCESS 1-1 Inhaltsverzeichnis Inhalt Kapitel 1: Grundlagen Inhaltsverzeichnis... 1-2 1 Was versteht man unter

Mehr

Unterabfragen (Subqueries)

Unterabfragen (Subqueries) Unterabfragen (Subqueries) Die kürzeste Formulierung ist folgende: SELECT Felderliste FROM Tabelle1 WHERE Tabelle1.Feldname Operator (SELECT Feldname FROM Tabelle2 WHERE Bedingung); wobei Tabelle1 und

Mehr

Transaktionsverwaltung read write read write

Transaktionsverwaltung read write read write Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1. Lese den Kontostand von A in die Variable a: read(a,a); 2. Reduziere den Kontostand um 50.- Euro: a:= a 50; 3. Schreibe

Mehr

Datenadminstrator, Datenbankdesigner, Systemanalytiker (für die logische Sicht zuständig)

Datenadminstrator, Datenbankdesigner, Systemanalytiker (für die logische Sicht zuständig) 1 Grundlagen Begriffe Daten bekannte zutreffende Tatsachen über die Domäne/Miniwelt DBS Einsatz eines DBMS für eine Datenbank, DBS besteht aus folgenden Komponenten: 1. DBMS 2. Datenbank DBMS Software

Mehr

In diesem Abschnitt stehen Transaktionen im Mittelpunkt. Hierbei geht es darum, wie bei Mehrbenutzerbetrieb die Integrität von Datenbanken

In diesem Abschnitt stehen Transaktionen im Mittelpunkt. Hierbei geht es darum, wie bei Mehrbenutzerbetrieb die Integrität von Datenbanken In diesem Abschnitt stehen Transaktionen im Mittelpunkt. Hierbei geht es darum, wie bei Mehrbenutzerbetrieb die Integrität von Datenbanken gewährleistet wird. 1 Im einzelnen geht es in diesem Abschnitt

Mehr

Beispielszenarien. 12. Transaktionen. ACID-Eigenschaften. Transaktion

Beispielszenarien. 12. Transaktionen. ACID-Eigenschaften. Transaktion 12. Transaktionen Beispielszenarien Transaktionsbegriff Probleme im Mehrbenutzerbetrieb Serialisierbarkeit Sperrprotokolle zur Synchronisation Isolationsebenen in SQL Platzreservierung für Flüge quasi

Mehr

Wiederanlauf (Recovery)

Wiederanlauf (Recovery) DEVO 8.1 Wiederanlauf (Recovery) DEVO 8.2 Ziele Wiederherstellung eines konsistenten Datenbankzustandes nach einem Fehler. Fehler: Transaktionsabbruch: eine Transaktion muß nach einem logischen Fehler

Mehr

Relationale Datenbanken Datenbankgrundlagen

Relationale Datenbanken Datenbankgrundlagen Datenbanksystem Ein Datenbanksystem (DBS) 1 ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern

Mehr

6. Datenintegrität. Integritätsbedingungen

6. Datenintegrität. Integritätsbedingungen 6. Integritätsbedingungen dienen zur Einschränkung der Datenbankzustände auf diejenigen, die es in der realen Welt tatsächlich gibt. sind aus dem erstellten Datenmodell ableitbar (semantisch) und können

Mehr

7. Datenkontrolle. Klassifikation von Integritästbedingungen Integritätsbedingungen in SQL. Zugriffskontrolle/Autorisierung in SQL 7-1

7. Datenkontrolle. Klassifikation von Integritästbedingungen Integritätsbedingungen in SQL. Zugriffskontrolle/Autorisierung in SQL 7-1 7. Datenkontrolle ACID und Datenkontrolle Synchronisation i Anomalien Isolation Level Integritätskontrolle Klassifikation von Integritästbedingungen Integritätsbedingungen in SQL Integritätsregeln / Trigger

Mehr

Datenbanken. Dateien und Datenbanken:

Datenbanken. Dateien und Datenbanken: Dateien und Datenbanken: Professionelle Anwendungen benötigen dauerhaft verfügbare, persistent gespeicherte Daten. Datenbank-Systeme bieten die Möglichkeit, Daten persistent zu speichern. Wesentliche Aspekte

Mehr

9.3 Fehlerbehandlung

9.3 Fehlerbehandlung 9.3 Fehlerbehandlung Schutz vor Beeinträchtigungen durch Fehler des Systems oder eines Benutzers nach Systemzusammensturz innerhalb einer TA inkonsistenter Zustand der DB physische und logische Inkonsistenz

Mehr

fbi h_da Datenbanken Kapitel 7: Transaktionsmanagement Schestag Datenbanken (Cnam) Kapitel 7-1

fbi h_da Datenbanken Kapitel 7: Transaktionsmanagement Schestag Datenbanken (Cnam) Kapitel 7-1 Datenbanken Kapitel 7: Transaktionsmanagement Schestag Datenbanken (Cnam) Kapitel 7-1 Transaktionsmanagement Inhalte des Kapitels Das Transaktionskonzept Konkurrierende Zugriffe und Sperren (Concurrency

Mehr

9 Transaktionskonzept

9 Transaktionskonzept 9 Transaktionskonzept Transaktionskonzept 9.1 Das Transaktionskonzept 9.2 Concurrency & Locking 9.3 Recovery 9.4 JDBC Teil II 9.4.1 Transaktionsmanagement 9.4.2 Objektrelationale Konzepte Schestag Datenbanken

Mehr

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL Betreuer: Sascha Kriewel, Tobias Tuttas Raum: LF 230 Bearbeitung: 26., 27. und 29. Juni 2006 Datum Team (Account) Vorbereitung Präsenz Aktuelle Informationen, Ansprechpartner und Material unter: http://www.is.inf.uni-due.de/courses/dbp_ss07/index.html

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur

Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur Moderne Datenbanksysteme sind nach der 3-Ebenen-Architektur gebaut: Anwendung 1 Web-Anwendung Anwendung 2 Java-Programm... Anwendung n Applikation

Mehr

Übung Datenbanksysteme I Transaktionen, Selektivität und XML. Thorsten Papenbrock

Übung Datenbanksysteme I Transaktionen, Selektivität und XML. Thorsten Papenbrock Übung Datenbanksysteme I Transaktionen, Selektivität und XML Thorsten Papenbrock Übersicht: Übungsthemen 2 Transaktionen Selektivität XML Thorsten Papenbrock Übung Datenbanksysteme I JDBC Transaktionen:

Mehr

In die Zeilen würden die Daten einer Adresse geschrieben werden. Das Ganze könnte in etwa folgendermaßen aussehen:

In die Zeilen würden die Daten einer Adresse geschrieben werden. Das Ganze könnte in etwa folgendermaßen aussehen: 1 Einführung in Datenbanksysteme Fast jeder kennt Excel und hat damit in seinem Leben schon einmal gearbeitet. In Excel gibt es Arbeitsblätter, die aus vielen Zellen bestehen, in die man verschiedene Werte

Mehr

Themen. M. Duffner: Datenbanksysteme

Themen. M. Duffner: Datenbanksysteme Datenbanksysteme Themen Theorie Einführung Datenbank, Datenbankmanagementsystem (DBMS), Aufgaben eines DBMS Relationale Datenbanken Daten als Tabellen Datenbankentwurf im Entity-Relationship-Modell Abfragesprache

Mehr

9. Transaktionsverwaltung 9.3. Fehlerbehandlung Seite 1

9. Transaktionsverwaltung 9.3. Fehlerbehandlung Seite 1 9. Transaktionsverwaltung 9.3. Fehlerbehandlung Seite 1 9.3 Fehlerbehandlung Im realen Betrieb eines Datenbanksystems muss mit Fehlersituationen gerechnet werden. Transaktionsfehler: Hierunter verstehen

Mehr

Daten- und Transaktionskontrolle mit SQL DCL, TCL

Daten- und Transaktionskontrolle mit SQL DCL, TCL Daten- und Transaktionskontrolle mit SQL DCL, TCL 1 Zugriffsrechte für Datenbankobjekte Zugriff zu einer Relation (inkl. Daten) mit allen Rechten hat zunächst nur der Benutzer, der sie erzeugt hat Situation

Mehr

Carl-Christian Kanne. Einführung in Datenbanken p.1/513

Carl-Christian Kanne. Einführung in Datenbanken p.1/513 Einführung in Datenbanken Carl-Christian Kanne Einführung in Datenbanken p.1/513 Kapitel 1 Einführung Einführung in Datenbanken p.2/513 Einführung Was ist ein Datenbanksystem (DBS)? Ein System zum Speichern

Mehr

Datenbank-Administration im WS 2012/13 - Einführung in Projekt 3 - Prof. Dr. Klaus Küspert Dipl.-Math. Katharina Büchse Dipl.-Inf.

Datenbank-Administration im WS 2012/13 - Einführung in Projekt 3 - Prof. Dr. Klaus Küspert Dipl.-Math. Katharina Büchse Dipl.-Inf. Datenbank-Administration im WS 2012/13 - Einführung in Projekt 3 - Prof. Dr. Klaus Küspert Dipl.-Math. Katharina Büchse Dipl.-Inf. Andreas Göbel Friedrich-Schiller-Universität Jena Lehrstuhl für Datenbanken

Mehr

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL XAMPP-Systeme Teil 3: My SQL Daten Eine Wesenseigenschaft von Menschen ist es, Informationen, in welcher Form sie auch immer auftreten, zu ordnen, zu klassifizieren und in strukturierter Form abzulegen.

Mehr

Teil VI. Datenbanken

Teil VI. Datenbanken Teil VI Datenbanken Überblick 1 Grundlegende Begriffe Motivation 2 Relationale Datenbanksysteme Das Relationale Datenmodell SQL 3 Entwurf von Datenbanken Das Enity Relationship (ER) Modell Abbildung von

Mehr

Datenintegrität. Daten. Dateneingabe. Datenverwendung. Datenkonsistenz? logisch. Datenschutz? juristisch. Transaktionen. Datensicherheit?

Datenintegrität. Daten. Dateneingabe. Datenverwendung. Datenkonsistenz? logisch. Datenschutz? juristisch. Transaktionen. Datensicherheit? Datenintegrität Dateneingabe Datenkonsistenz? logisch Daten Datenverwendung Transaktionen Datenschutz? juristisch sc Datensicherheit? physisch 1 Datenintegrität: Begriffsbildung Datenkonsistenz "Widerspruchsfreiheit";

Mehr

IT-Kompaktkurs. Datenbanken Skript zur Folge 4. Prof. Dr. Manfred Gruber Fachhochschule München

IT-Kompaktkurs. Datenbanken Skript zur Folge 4. Prof. Dr. Manfred Gruber Fachhochschule München Fachhochschule München Munich University of Applied Sciences IT-Kompaktkurs Skript zur Folge 4 Prof. Dr. Manfred Gruber Fachhochschule München manfred.gruber@informatik.fh-muenchen.de Nov 1, 2000 Transaktions-Konzept,

Mehr

Datenbankadministration

Datenbankadministration Datenbankadministration 11. Synchronisation AG DBIS University of Kaiserslautern, Germany Karsten Schmidt kschmidt@informatik.uni-kl.de (Vorlage TU-Dresden) Wintersemester 2008/2009 Transaktion Transaktion

Mehr

Übersicht über Datenbanken

Übersicht über Datenbanken Übersicht über Datenbanken Vergleich zwischen normaler Datenorganisation und Datenbanken Definition einer Datenbank Beispiel (inkl. Zugriff) Der Datenbankadministrator Relationale Datenbanken Transaktionen

Mehr

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96 Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96 Dieser Fragenkatalog wurde aufgrund das Basistextes und zum Teil aus den Prüfungsprotokollen erstellt, um sich auf mögliche

Mehr

10. Übungsblatt. Für die Übung am Donnerstag, 15. Januar 2009, von 15:30 bis 17:00 Uhr in 13/222.

10. Übungsblatt. Für die Übung am Donnerstag, 15. Januar 2009, von 15:30 bis 17:00 Uhr in 13/222. AG Datenbanken und Informationssysteme Wintersemester 2008 / 2009 Prof. Dr.-Ing. Dr. h. c. Theo Härder Fachbereich Informatik Technische Universität Kaiserslautern http://wwwlgis.informatik.uni-kl.de/cms

Mehr

Profilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken

Profilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken Profilbezogene informatische Bildung in den Klassenstufen 9 und 10 Schwerpunktthema Robby Buttke Fachberater für Informatik RSA Chemnitz Fachliche Einordnung Phasen relationaler Modellierung Fachlichkeit

Mehr

3.6 Transaktionsverwaltung

3.6 Transaktionsverwaltung 3.6 Transaktionsverwaltung Transaktionen erlauben Bündelung von Operationen und gelten als wichtigster Beitrag des Bereichs Datenbanken zur Informatik; sie werden heute auch außerhalb von Datenbanksystemen

Mehr

Integritätsbedingungen / Normalformen- Beispiel: Kontoführung

Integritätsbedingungen / Normalformen- Beispiel: Kontoführung Technische Universität München WS 2003/04, Fakultät für Informatik Datenbanksysteme I Prof. R. Bayer, Ph.D. Lösungsblatt 8 Dipl.-Inform. Michael Bauer Dr. Gabi Höfling 12.01. 2004 Integritätsbedingungen

Mehr

Einführung. Kapitel 1 2 / 508

Einführung. Kapitel 1 2 / 508 Kapitel 1 Einführung 2 / 508 Einführung Was ist ein Datenbanksystem (DBS)? Ein System zum Speichern und Verwalten von Daten. Warum kein herkömmliches Dateisystem verwenden? Ausfallsicherheit und Skalierbarkeit

Mehr

Vorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht. Universität Innsbruck Institut für Informatik Datenbanken und Informationssysteme (DBIS)

Vorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht. Universität Innsbruck Institut für Informatik Datenbanken und Informationssysteme (DBIS) Synchronisation paralleler Transaktionen Kapitel X Vorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht Universität Innsbruck Institut für Informatik Datenbanken und Informationssysteme (DBIS) Vorlesungsinhalt

Mehr

6.3 Verteilte Transaktionen

6.3 Verteilte Transaktionen 6.3 Verteilte Transaktionen Situation: Fragmentierung: Ein Datenbestand ist über mehrere Stationen verteilt (z.b. verteilte Datenbank, verteiltes Dateisystem,...) d.h. in Fragmente aufgeteilt, für die

Mehr

Referentielle Integrität

Referentielle Integrität Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische

Mehr

Beuth Hochschule BEUTH HOCHSCHULE FÜR TECHNIK BERLIN University of Applied Sciences

Beuth Hochschule BEUTH HOCHSCHULE FÜR TECHNIK BERLIN University of Applied Sciences Beuth Hochschule BEUTH HOCHSCHULE FÜR TECHNIK BERLIN University of Applied Sciences WISSENSCHAFTLICHE WEITERBILDUNG Fernstudium Industrial Engineering Produktions- und Betriebstechnik Kurseinheit 98 und

Mehr

4.14.3 Bedingungen über Werte. 4.14.4 Statische Integrität. CHECK-Klausel

4.14.3 Bedingungen über Werte. 4.14.4 Statische Integrität. CHECK-Klausel 4.14.3 Bedingungen über Werte 4.14.4 Statische Integrität Zu jeder Tabelle werden typischerweise ein Primärschlüssel und möglicherweise weitere Schlüssel festgelegt (UNIQUE-Klausel). In jeder Instanz zu

Mehr

TAV Übung 3. Übung 3: Verteilte Datenhaltung

TAV Übung 3. Übung 3: Verteilte Datenhaltung Übung 3: Verteilte Datenhaltung 1. Serialisierung Konstruieren Sie Historien aus drei Transaktionen T1, T2 und T3, die folgende Merkmale aufweisen: 1. Die serielle Reihenfolge ist T1 vor T2 vor T3. 2.

Mehr

Datenbanken. Ein DBS besteht aus zwei Teilen:

Datenbanken. Ein DBS besteht aus zwei Teilen: Datenbanken Wikipedia gibt unter http://de.wikipedia.org/wiki/datenbank einen kompakten Einblick in die Welt der Datenbanken, Datenbanksysteme, Datenbankmanagementsysteme & Co: Ein Datenbanksystem (DBS)

Mehr

Grundlagen von Datenbanken. Referentielle Aktionen, Sichten, Serialisierbarkeit und Locking

Grundlagen von Datenbanken. Referentielle Aktionen, Sichten, Serialisierbarkeit und Locking Grundlagen von Datenbanken Referentielle Aktionen, Sichten, Serialisierbarkeit und Locking SQL DDL: Referentielle Aktionen (1/3) Potentielle Gefährdung der referentiellen Integrität durch Änderungsoperationen

Mehr

www.informatik-aktuell.de

www.informatik-aktuell.de www.informatik-aktuell.de Flashback Reise in die Vergangenheit einfach. gut. beraten. Warum Oracle Zeitreisen anbieten kann, der Microsoft SQL Server aber leider nicht. IT-Tage Datenbanken 18.12.2015,

Mehr

Transaktionen: Wiederholung und Vertiefung

Transaktionen: Wiederholung und Vertiefung Wirtschaftsinformatik II Datenorganisation Datenbanken - Kommunikation Transaktionen: Wiederholung und Vertiefung 7. Datenbankorganisation 7.1. Architektur und Klassifizierung von Datenbanksystemen 7.2

Mehr

Mehrbenutzersynchronisation

Mehrbenutzersynchronisation Kapitel 10 Mehrbenutzersynchronisation 381 / 520 Mehrbenutzersynchronisation Alle TAs strikt seriell (also nacheinander) auszuführen ist sicher, aber langsam Oft werden Systemressourcen nicht voll ausgenutzt,

Mehr

Mächtigkeit von 2PL. Geben Sie einen Schedule S an, der. konfliktserialisierbar, jedoch nicht bei Anwendung von 2PL entstehbar. ist.

Mächtigkeit von 2PL. Geben Sie einen Schedule S an, der. konfliktserialisierbar, jedoch nicht bei Anwendung von 2PL entstehbar. ist. 9. Transaktionsverwaltung 9.2. Mehrbenutzerkontrolle Rückblick Rückblick Geben Sie einen Schedule S an, der ist. konfliktserialisierbar, jedoch nicht bei Anwendung von 2PL entstehbar Mächtigkeit von 2PL

Mehr

1 Referentielle Aktionen

1 Referentielle Aktionen 1 Referentielle Aktionen Betrachten Sie das folgende Datenbankschema: Person(Vorname, Nachname, DOB, Wohnort, Lieblingsfilm Film.IMDb-ID, Videothek Videothek.VID) Film(IMDb-ID, Titel, (ProduzentVN, ProduzentNN)

Mehr