8. Transaktionsverarbeitung. Architektur von Datenbanksystemen I
|
|
- Alexander Goldschmidt
- vor 7 Jahren
- Abrufe
Transkript
1 8. Transaktionsverarbeitung Architektur von Datenbanksystemen I
2 Einordnung ARCHITEKTUR VON DATENBANKSYSTEMEM I - Key/Value Store - Row Store - Column Store - Data Compression - Transaction Processing - CAP Theorem Transaction Service Storage Service Durability Service - Logging - Recovery 2
3 Prinzip transaktionaler Verarbeitung TRANSAKTIONEN Zusammenfassung von aufeinanderfolgenden DB-Operationen, die eine Datenbank von einem konsistenten Zustand wieder in einen konsistenten Zustand überführt. MERKE das Ende einer Transaktion muss nicht notwendigerweise in einem anderen konsistenten Zustand enden Transaktionen werden immer beendet - normal (commit): Änderungen sind permanent in DB - abnormal (abort / rollback): bereits durchgeführte Änderungen werden zurückgenommen 3
4 ACID-Eigenschaften ATOMARITÄT (ATOMICITY) Unteilbarkeit durch Transaktionsdefinition (Begin End) Alles-oder-Nichts Prinzip, d.h. das DBS garantiert - entweder die vollständige Ausführung einer Transaktion - oder die Wirkungslosigkeit der gesamten Transaktion (und damit aller beteiligten Operationen) KONSISTENZERHALTUNG (CONSISTENCY) Eine erfolgreiche Transaktion garantiert, dass alle Konsistenzbedingungen (Integritätsbedingungen) eingehalten worden sind ISOLATION (ISOLATION) Mehrere Transaktionen laufen voneinander isoliert ab und benutzen keine (inkonsistenten) Zwischenergebnisse anderer Transaktionen DAUERHAFTIGKEIT (DURABILITY) Alle Ergebnisse erfolgreicher Transaktionen müssen persistent gemacht werden (worden sein) 4
5 Anmerkungen zur Konsistenz in DBS BEISPIEL vorgegebene Konsistenzbedingung: x=y BOT // DB ist konsistent read(x) read(y) x := x+1 write(x) // DB ist zeitweilig inkonsistent y := y+1 write(y) EOT // DB ist wieder konsistent ARTEN VON KONSISTENZ Datenbankkonsistenz - alle (auf der DB definierten) Konsistenzbedingungen sind erfüllt Transaktionskonsistenz - der nebenläufige Ablauf der Transaktionen ist korrekt - Gefahr der Anomalien 5
6 Gefährdung der Datenbankkonsistenz UNTERSCHIEDLICHE SICHTWEISEN Korrektheit der Abbildungshierarchie Übereinstimmung zwischen DB und Miniwelt durch das Anwendungsprogramm durch das DBS und die Betriebsumgebung Mehrbenutzer-Anomalien Synchronisation Fehler auf den Externspeichern, Inkonsistenzen in den Zugriffspfaden Fehlertolerante Implementierung unzulässige Änderungen Integritätsüberwachung des DBS TA-orientierte Verarbeitung Undefinierter DB-Zustand nach einem Systemausfall Transaktionsorientierte Fehlerbehandlung (Recovery) 6
7 Synchronisation 7
8 Synchronisation ZIEL Erhaltung der Transaktionskonsistenz (= operationelle Integrität) im Mehrbenutzerbetrieb GRÜNDE FÜR DEN MEHRBENUTZERBETRIEB Verteilung generell (z.b. EC-Automat) CPU-Nutzung während systemgetriebenen und benutzergetriebenen TA-Unterbrechungen Kommunikationsvorgänge in verteilten Systemen MÖGLICHE ANOMALIEN OHNE SYNCHRONISATION Verlorengegangene Änderungen (lost update) Abhängigkeiten von nicht freigegebenen Änderungen (dirty read, dirty overwrite) Inkonsistente Analyse (non-repeatable read) Phantom-Problem GEGENSTAND DER SYNCHRONISATION Vermeidung der gegenseitigen Beeinflussung von Lese- und Schreiboperationen Verhinderung von Anomalien im Mehrbenutzerbetrieb 8
9 Anomalien BEISPIEL FÜR LOST UPDATES BESCHREIBUNG Konkurrierendes Verändern eines Datenelementes 9
10 Anomalien (2) BEISPIEL FÜR DIRTY READ BESCHREIBUNG Abhängigkeiten von nicht freigegebenen Änderungen (rekursives Zurücksetzen) 10
11 Anomalien (3) BEISPIEL FÜR NON-REPEATABLE READ BESCHREIBUNG Während der Verarbeitung von T 2 wird der Datenbestand durch T 1 verändert T 2 sieht konsistente Zustände, jedoch unterschiedliche! 11
12 Anomalien (4) Phantom Problem Lesetransaktion (Gehaltssumme prüfen) Änderungstransaktion (Einfügen eines neuen Angestellten) SELECT SUM(Gehalt) INTO :summe FROM pers WHERE anr=17 SELECT Gehaltssumme INTO :gsumme FROM abt WHERE anr=17 IF gsumme <> summe THEN <Fehlerbehandlung> INSERT INTO Pers(pnr, anr, gehalt) VALUES (4567, 17, ) UPDATE Abt SET gehaltssumme = gehaltssumme WHERE anr=17 Interpretation: dirty read auf höherer Ebene (relationenübergreifend!) 12
13 Modell und Serialisierbarkeit DAS READ/WRITE-MODELL Transaktion T ist eine endliche Folge von Operationen (Schritten) p i der Form r(x i ) oder w(x i ) T = DEFINITION Eine verschränkte Ausführung mehrerer Transaktionen heißt serialisierbar, wenn ihr Effekt zum Effekt einer (beliebig gewählten) seriellen Ausführung dieser Transaktionen ist. Vollständige Transaktion T hat als letzten Schritt entweder einen Abbruch a oder ein Commit c: SCHEDULER 13
14 Verschränkte Ausführung SHUFFLE(T ) Menge aller verschränkten Ausführungen der Einzelschritte aller in der Menge T enthaltenen Transaktionen T i alle Operationen der Transaktionen T i sind genau einmal in jedem Element enthalten BEISPIEL T1 = r1(x) w1(x) T2 = r2(x) r2(y) w2(y) Shuffle (T ) = Relative Reihenfolge der Operationen einer Transaktion wird beibehalten 14
15 Schedule und Serieller Schedule SCHEDULE Ein Schedule ist ein Präfix eines vollständigen Schedules. SERIELLER SCHEDULE Ein serieller Schedule s für T ist ein vollständiger Schedule der Form Resultierender serieller Schedule für zwei Transaktionen T1 = r1(x)w1(x)c1 T2 = r2(x)w2(x)c2 s1 = s2 = 15
16 Korrektheitskriterium & Konflikte KORREKT Eine Schedule s ist korrekt, wenn der Effekt des Schedules s (Ergebnis der Ausführung) äquivalent dem Effekt eines (beliebigen) seriellen Schedules s bzgl. derselben Mengen von Transaktionen ist KONFLIKTE SERIALISIERBAR Ist ein Schedule s äquivalent zu einem seriellen Schedule s, dann ist s serialisierbar (zu s ). 16
17 Konfliktserialisierbarkeit KONFLIKTRELATION C VON S : BEREINIGTE KONFLIKTRELATION Mit conf(s) wird bereinigte Konfliktrelation bezeichnet, in der keine abgebrochenen Transaktionen mehr vorkommen KONFLIKTMATRIX aborted(s): Menge der abgebrochenen Transaktionen des Schedules s 17
18 Beispiel Konfliktrelation GEGEBEN: SCHEDULE S 18
19 Konfliktserialisierbarkeit KONFLIKTÄQUIVALENZ Zwei Schedules s und s heißen konfliktäquivalent falls - op(s) = op(s ) - conf(s) = conf(s ) KONFLIKTSERIALISIERBARKEIT Ein Schedule s ist genau dann konfliktserialisierbar, wenn s konfliktäquivalent zu einem seriellen Schedule ist. Klasse aller konfliktserialisierbaren Schedules: CSR (für engl. conflict serializable) BEISPIEL 19
20 Konfliktserialisierbarkeit TEST Auf Konfliktserialisierbarkeit durch Vergleich mit den seriellen Schedules GEGEBEN: Schedule s 20
21 Graphbasierter Test KONFLIKTGRAPH G(s) = (V,E) von Schedule s BEISPIEL Schedule s Knotenmenge V enthält alle in s vorkommenden Transaktionen Kantenmenge E enthält alle gerichteten Kanten zwischen zwei in Konflikt stehenden Transaktionen, also: 21
22 Eigenschaften EIGENSCHAFTEN VON KONFLIKTGRAPH G(S) Ist s ein serieller Schedule, dann ist der vorliegende Konfliktgraph ein azyklischer Graph KONFLIKTGRAPHEN UND SERIALISIERBARKEIT Für jeden Schedule s gilt: Für jeden azyklischen Graphen G(s) lässt sich ein serieller Schedule s konstruieren, sodass s konfliktserialisierbar zu s ist (Test bzw. durch topologisches Sortieren) Enthält ein Graph Zyklen, dann ist der zugehörige Schedule nicht konfliktserialisierbar 22
23 Probleme zur Laufzeit PROBLEME Zur Laufzeit nur unvollständige Schedule verfügbar à Überwachung unvollständiger Schedules notwendig DER SCHEDULER Transaktionen, die noch kein commit gemacht haben, können jederzeit abgebrochen werden. 23
24 Zustände einer Transaktion 24
25 Arten von Scheduler AGGRESSIVER SCHEDULER ein Scheduler ist aggressiv, wenn er Konflikte zulässt und dann versucht, aufgetretene Konflikte zu erkennen und aufzulösen KONSERVATIVER SCHEDULER ein Scheduler arbeitet konservativ, wenn er Konflikte möglichst vermeidet, dafür aber Verzögerungen von Transaktionen in Kauf nimmt maximiert die Parallelität von Transaktionen Risiko: Transaktionen werden erst am Ende ihrer Ausführung zurückgesetzt erlauben nur eine geringe Parallelität von Transaktionen minimieren den Rücksetzungsaufwand für abgebrochene Transaktionen im Extremfall findet keine Parallelisierung von Transaktionen mehr statt, d.h., es werden immer alle Transaktionen bis auf eine verzögert 25
26 Synchronisation durch Sperren 26
27 PESSIMISTISCHE SYNCHRONISATIONSVERFAHREN REALISIERUNG EINES LOGISCHEN EINBENUTZERBETRIEBS Einführung von Sperren für exklusiven Zugriff auf Datenobjekte für jedes benutzte Datenobjekt wird zentral in einer Sperrtabelle die Nutzungsart (Sperrmodus) protokolliert ARTEN VON SPERREN X (exclusive)-sperre (=Schreibsperre) S/R (shared/read)-sperre (=Lesesperre) KOMPATIBILITÄTSMATRIX gibt Auskunft, ob eine Sperranforderung für ein (möglicherweise bereits gesperrtes) Objekt gewährt werden kann 27
28 Synchronisation mit Sperren WANN SIND SPERREN ZU ERWERBEN? Statisches Sperren - zu Beginn der Transaktion alle Sperren anfordern ( preclaiming ) - Nachteil: Man muss alles sperren, was man brauchen könnte. Dynamisches Sperren - während der Transaktion werden Sperren nach Bedarf angefordert - Nachteil: Verklemmungen (deadlocks) WANN SIND SPERREN FREIZUGEBEN? Sperren müssen bis zum Ende der Transaktion gehalten werden, um Serialisierbarkeit zu garantieren Abschwächung zur Optimierung - frühzeitiges Freigeben z.b. von Lesesperren - Nachteil: wiederholtes Lesen desselben Satzes kann dann unterschiedliche Ergebnisse liefern REGELN FÜR DEN UMGANG MIT SPERREN Jedes Datenobjekt, auf das zugegriffen werden soll, muss vorher gesperrt werden Eine Transaktion fordert eine Sperre, die sie bereits besitzt, nicht noch einmal an Eine Transaktion muss die von anderen Transaktionen gesetzten Sperren beachten Am Ende einer Transaktion sind alle Sperren wieder freizugeben (Eswaran, Gray, Lorie und Traiger 1976) 28
29 Zweiphasen-Sperrprotokoll ZWEIPHASIGKEIT Anfordern von Sperren erfolgt in einer Wachstumsphase Freigabe der Sperren in Schrumpfungsphase Sperrfreigabe kann erst beginnen, wenn alle Sperren gehalten werden MIKROSKOPISCHE SICHTWEISE AUF DAS FREIGEBEN VON SPERREN 29
30 Verschärfung des Zweiphasen-Sperrprotokolls MERKE bei fehlerfreiem Betrieb ist diese Voraussetzung (fast) ausreichend, um einen korrekten Transaktionsablauf zu gewährleisten Problem des kaskadierenden Abbruchs einer Transaktion - Rücksetzen von TAs, die bereits freigegebene Daten gelesen haben - Rücksetzen von TAs, die bereits selbst schon committed sind! FREIGABE ALLER SPERREN ERST AM ENDE EINER TRANSAKTION Striktes Zweiphasen-Sperrprotokoll Profil der Sperranforderungen und Sperrfreigaben PROBLEM: FREIGABE ALLER SPERREN IST NICHT ATOMAR DURCHFÜHRBAR Einführung einer zweiphasigen Commit-Behandlung Phase 1: Sichern der isolierten Wiederholbarkeit und Schreiben des EOT-Satzes Phase 2: Freigabe aller Sperren und Beenden der Aktivität 30
31 Entstehung und Behandlung von Deadlocks BEISPIEL EINES ELEMENTAREN DEADLOCKS Transaktion T1 T1 hält X-Sperre auf A T1 benötigt B zum beenden Transaktion T2 T2 hält X-Sperre auf B T2 benötigt A zum beenden VORAUSSETZUNGEN FÜR DEADLOCK paralleler Zugriff exklusive Zugriffsanforderungen (X-Sperren) anfordernde TA besitzt bereits Sperren auf Datenobjekte keine vorzeitige Freigabe von Sperren auf Datenobjekte (non-preemption) es existieren zyklische Wartebeziehungen zwischen zwei oder mehr Transaktionen 31
32 Deadlock Lösungsmöglichkeiten TIMEOUT-VERFAHREN Transaktion wird nach festgelegter Wartezeit auf eine Sperre zurückgesetzt problematische Bestimmung des Timeout-Wertes DEADLOCK-VERHÜTUNG (PREVENTION) keine Laufzeitunterstützung zur Deadlock-Behandlung erforderlich Bsp.: Preclaiming (in DBS i. a. nicht praktikabel) DEADLOCK-VERMEIDUNG (AVOIDANCE) potentielle Deadlocks werden im voraus erkannt und durch entsprechende Maßnahmen vermieden à Laufzeitunterstützung nötig DEADLOCK-ERKENNUNG (DETECTION) Explizites Führen eines Wartegraphen (wait-for graph) und Zyklensuche zur Erkennung von Verklemmungen Deadlock-Auflösung durch Zurücksetzen einer oder mehrerer am Zyklus beteiligter TA (z. B. Verursacher oder billigste TA zurücksetzen) 32
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.
MehrSynchronisation 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.
MehrDatenintegritä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
MehrDatenbanken: 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
MehrDarunter 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
Mehr1 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
MehrKapitel 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
MehrMehrbenutzersynchronisation
Kapitel 10 Mehrbenutzersynchronisation 381 / 520 Mehrbenutzersynchronisation Alle TAs strikt seriell (also nacheinander) auszuführen ist sicher, aber langsam Oft werden Systemressourcen nicht voll ausgenutzt,
MehrDatenbanksysteme 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
MehrKoordination 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
MehrKapitel 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
MehrDatenbanksysteme I Transaktionsmanagement. 20.6.2011 Felix Naumann
Datenbanksysteme I Transaktionsmanagement 20.6.2011 Felix Naumann Motivation - Transaktionsmanagement 2 Annahmen bisher Isolation Nur ein Nutzer greift auf die Datenbank zu Lesend Schreibend In Wahrheit:
MehrTransaktionen und Synchronisation konkurrierender Zugriffe
Transaktionen und Synchronisation konkurrierender Zugriffe Fragestellungen Aufgaben des Transaktionsmanagers Aktivieren von Transaktionen entsprechend den Anforderungen von Anwendungsprogrammen. Dabei
MehrVorlesung 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
MehrP.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
MehrDieser 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,
MehrDatenbanken 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Ü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:
MehrMehrbenutzer-Synchronisation
MehrbenutzerSynchronisation KonfliktKategorien Serialisierung Historien Sperrungen Verklemmungen Optimistische Synchronisation Synchronisation in SQL Mehrbenutzersynchronisation Ausführung der drei Transaktionen,
MehrView. 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.
MehrDatenbankadministration
Datenbankadministration 11. Synchronisation AG DBIS University of Kaiserslautern, Germany Karsten Schmidt kschmidt@informatik.uni-kl.de (Vorlage TU-Dresden) Wintersemester 2008/2009 Transaktion Transaktion
MehrMehrbenutzer-Synchronisation
Mehrbenutzer-Synchronisation Konflikt-Kategorien Serialisierung Historien Sperrungen Verklemmungen Optimistische Synchronisation Synchronisation in SQL Kapitel 11 1 Mehrbenutzersynchronisation Ausführung
MehrDatenbanken und Informationssysteme
Datenbanken und Informationssysteme Serialisierbarkeit Burkhardt Renz Fachbereich MNI TH Mittelhessen Wintersemester 2015/16 Übersicht Serialisierbarkeit 2-Phasen-Sperrprotokoll (2PL) Verklemmungen Modell
MehrTransaktionen 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
MehrKapitel 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
MehrMehrbenutzersynchronisation
Mehrbenutzersynchronisation VU Datenbanksysteme vom 4.11. 2015 Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Nebenläufigkeit
Mehr9 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... T n T 1 T 2 T 3. Transaktions-Manager. Daten-Manager. Recovery-Manager Puffer-Manager. Datenbank
Techniken der Schedule-Realisierung T 1 T 2 T 3.... T n Isolations-Eigenschaft wird durch den Scheduler sichergestellt. Aufgabe: : Koordination des Ablaufs konkurrierender Transaktionen so, dass deren
MehrDer Scheduler. 9. Transaktionsverwaltung. Zustände einer Transaktion. Transaktionsoperationen
9. Transaktionsverwaltung Der Scheduler Architektur der Transaktionsverwaltung Sperrende und nicht-sperrende Verfahren Transaktionen in SQL-Systemen Transaktionsmonitore T 1 T T 2 n Transaktions- Manager
MehrScheduler. vereinfachende Annahmen: alle Transaktionen werden wirksam nur Konflikt-Serialisierbarkeit keine Versionen
Scheduler Der Scheduler des Informationssystems hat zunächst die Aufgabe, die Anweisungen von parallel auszuführenden Transaktionen in einer geeigneten Reihenfolge anzuordnen. Darüber hinaus muß er auch
MehrSerialisierbarkeit von Historien: Minimalanforderung bzgl. "akzeptabler" Synchronisation
Rücksetzbarkeit Serialisierbarkeit von Historien: Minimalanforderung bzgl. "akzeptabler" Synchronisation von Transaktionen zusätzliche Forderung: lokale Rücksetzbarkeit von Historien, d.h. Jede Transaktion
MehrLiteratur 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:
MehrBeispiel: Bankensoftware. 6 Transaktionen. 6.1 Grundlagen 6.1.1 Einführung und Begriffe. Transaktionen. Beispiel (Fortsetzung 1): Verzahnte Ausführung
6 Transaktionen Beispiel: Bankensoftware 6.1 Grundlagen 6.1.1 Einführung und Begriffe Kritische Abschnitte elementares Mittel zur Konsistenzwahrung bei nebenläufigen Zugriffen Programmierer selbst für
Mehr7. 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
MehrTransaktionsverwaltung
Transaktionsverwaltung VU Datenbanksysteme vom 21.10. 2015 Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Transaktionsverwaltung
MehrDatenbanken 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,
MehrReplikation und Synchronisation. in mobilen Datenbanksystemen
in mobilen Datenbanksystemen 6. Juni 2002 Von Thomas Hoffmann und Sebastian Seidler E-Mail: {hothomas,bastl14w}@minet.uni-jena.de 1 Inhalt Einleitung Was ist Replikation? Was ist Synchronisation? Replikationsverfahren
MehrTeil 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
MehrInhalt: Anforderungen an DBS,
Kapitel 1. Anforderungen an DBMS und Transaktionskonzept Inhalt: Wiederholung, Anforderungen an DBS, Transaktionsbegriff Dateien und DBS (1) Es gibt verschiedene Datenmodelle und sie realisierende DBS
MehrEinführung - Anomalien beim ungeschützten und konkurrierenden Zugriff von Lesern und Schreibern auf gemeinsame Daten
Synchronisation 0 Einführung - Anomalien beim ungeschützten und konkurrierenden Zugriff von Lesern und Schreibern auf gemeinsame Daten - Synchronisation von Transaktionen: Grundbegriffe und Modellannahmen
MehrVorlesung 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
MehrIT-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,
MehrTag 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
MehrGliederung Datenbanksysteme
Gliederung Datenbanksysteme 5. Datenbanksprachen 1. Datendefinitionsbefehle 2. Datenmanipulationsbefehle 3. Grundlagen zu SQL 6. Metadatenverwaltung 7. DB-Architekturen 1. 3-Schema-Modell 2. Verteilte
MehrWiederanlauf (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
Mehr8. Synchronisations-Verfahren
8. Synchronisations-Verfahren Die verschiedenen Synchronisationsverfahren unterscheiden sich i.w. dadurch, wie sie die Einhaltung des Serialisierbarkeitsprinzips gewährleisten wann die Prüfung auf Serialisierbarkeit
Mehr3.1 Schedules und Histories
3 Concurrency Control: Korrektheit Wir betrachten zunächst nur das Seitenmodell (read/write)! 3.1 Schedules und Histories Bislang: Transaktionen = (partiell) geordnete Folgen von (Daten-) Operationen...
MehrÜ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,
MehrKapitel 9 Paralleler Zugriff auf DB
Seite 1 von 8 www.jurijs-skripte.de.vu DBMS - Kapitel 9 Kapitel 9 Paralleler Zugriff auf DB FEHLERFÄLLE BEI UNKONTROLLIERTER ARBEIT Verloren gegangene Änderung - Da beide Anwendungen abwechselnd lesen
MehrTransaktionsverwaltung
Transaktionsverwaltung Commit Eigenschaften von Transaktionen (ACID) Transaktionen in SQL Kapitel 9 1 Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1. Lese den Kontostand
MehrKapitel 10: Transaktionen und Datenintegrität
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)
MehrSynchronisierung 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
MehrKapitel 4: Synchronisation: Scheduler
Kapitel 4: Synchronisation: Scheduler Ziel und Überblick Entwurf von Schedulern Sperrende Scheduler Nicht-sperrende Scheduler Hybride Scheduler 29.11.2005 TAV WS 2005 283 Kapitel 4: Synchronisation: Scheduler
MehrDie 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
MehrTag 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
MehrKapitel 15. Transaktionen, Fehlerbehandlung, Multi-User. Prof. Dr. Wolfgang Weber Vorlesung Datenbanken
Kapitel 15 Transaktionen, Fehlerbehandlung, Multi-User 1 Transaktionen, Fehlerbehandlung, Multi-User Transaktionskonzept Fehlerbehandlung Mehrbenutzersynchronisation 2 Transaktionen Warum? Beispiel 1 Was
MehrTAV Ü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.
MehrDatenbanken und SQL. Kapitel 8. Concurreny und Recovery. Edwin Schicker: Datenbanken und SQL
Datenbanken und SQL Kapitel 8 Concurreny und Recovery Concurrency und Recovery Transaktionen Recovery Einführung in die Recovery Logdateien Checkpoints Conncurrency Sperrmechanismen Deadlocks SQL-Norm
MehrUnzulänglichkeiten der ANSI-SQL-Isolationslevel [1] Intelligente Datenbanken
Unzulänglichkeiten der ANSI-SQL-Isolationslevel [1] Ausarbeitung zum Seminar Intelligente Datenbanken im Sommersemester 2005 Fabian Klingbeil Universität Bonn Institut für Informatik III am 19.7.2005 Seminar
MehrDr. H. Schuldt. Das Ziel dieser Ubung ist die Untersuchung, wie die in der Vorlesung vorgestellten
Dr. H. Schuldt Eidgenossische Technische Hochschule Zurich Swiss Federal Institute of Technology Zurich Transaktionsverwaltung in modernen IS Praktische Ubung 1 Beispiellosung Einleitung Das Ziel dieser
MehrTeil 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
MehrTransaktionen in der Praxis. Dr. Karsten Tolle
Transaktionen in der Praxis Dr. Karsten Tolle Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch (Exception e) { e.printstacktrace(); } con.setautocommit(false);
MehrDatenbanken: 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
MehrDatenadminstrator, 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
MehrCzap, Grundlagen betrieblicher IS - 1
Czap, Grundlagen betrieblicher IS - 1 8. Daten-Integrität 8.1 Integritätsaspekte Unter Integrität einer Datenbank versteht man alle die Aspekte, die mit der Erhaltung der Korrektheit der Daten in der DB
Mehr7. Synchronisation Algorithmen 1
7. Synchronisation Algorithmen 1 Scheduling-Algorithmen Entwurf von Scheduling-Algorithmen Klassifikation von Synchronisationsalgorithmen Sperrprotokolle - Zweiphasige Sperrprotokolle - Deadlocks und ihr
MehrWas ist eine Transaktion?
Frühjahrsemester 2013 CS243 Datenbanken Kapitel 8: Transaktionsverwaltung H. Schuldt Was ist eine Transaktion? Eine Transaktion ist eine Menge von logisch zusammengehörenden Operationen (zumeist in ein
MehrVorlesungsinhalt. 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
MehrPostgreSQL 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
Mehr8. März: Klausurvorbereitung (Durchgehen Klausurähnlicher Aufgaben, Fragestunde)
Organisatorisches Termine 2. März: letzte Vorlesung 8. März: Klausurvorbereitung (Durchgehen Klausurähnlicher Aufgaben, Fragestunde) 9. März: Besprechungstermin Übungsblatt 6 (Punkte bisher: siehe Aushang)
MehrIsolationslevel in SQL
Isolationslevel in SQL Zu den ACID-Eigenschaften von Transaktionen gehört auch das I, also Isolation. Streng genommen versteht man unter Isolation, dass eine Transaktion unbeeinflusst durch andere Transaktionen
MehrDeadlocks. System hat nur begrenzte Ressourcen (Ressourcentypen) Hauptspeicher Externer Speicher Drucker File
Kapitel V Deadlocks (Verklemmungen) 1 Deadlocks System hat nur begrenzte Ressourcen (Ressourcentypen) Hauptspeicher Externer Speicher Drucker File Prozesse benötigen Genehmigung vor der Benutzung von Ressourcen.
MehrKapitel 8: Transaktionen und ihre Realisierung
Vorlesung " WS 98/99 Kapitel 8: Transaktionen und ihre Realisierung Lernziele und Überblick: Transaktionen als Kooperationsmodell, Eigenschaften von Transaktionen Isolation von Transaktionen: Terminologie
Mehr4 Concurrency Control: Algorithmen. Ziel: Entwicklung von Schedulern (Scheduling Algorithmen, Scheduling Protokollen), die konfliktserialisierbare
4 Concurrency Control: Algorithmen 4.1 Vorüberlegungen Ziel: Entwicklung von Schedulern (Scheduling Algorithmen, Scheduling Protokollen), die konfliktserialisierbare Schedules erzeugen. Wie im vorherigen
Mehr1. Transaktionskonzept
1. Transaktionskonzept Ein wesentliches Charakteristikum für (relationale) Datenbanksysteme stellt die Unterstützung des Transaktions-Konzepts dar. Transaktionen sind Verarbeitungseinheiten, die vom DBMS
MehrOracle Datenbank - Recovery
Oracle Datenbank - Recovery H.-G. Hopf Georg-Simon-Ohm Fachhochschule Nürnberg Datenbank-Recovery / 1 Η. G.Hopf / 10.04.2003 Inhaltsverzeichnis Transaktionsablauf Prozess - Recovery Instanz - Recovery
Mehr10. Updates in SQL 10-1 Teil 10: Updates in SQL. Literatur:
10. Updates in SQL 10-1 Teil 10: Updates in SQL Literatur: Elmasri/Navathe:Fundamentals of Database Systems, 3rd Edition, 1999. Chap. 8, SQL The Relational Database Standard Kemper/Eickler: Datenbanksysteme
Mehr12. Views und Datenbankverwaltung. Views Änderungen in Views. Organisation der DB. Zugriffsrechte. Datenbanksysteme Prof. Dr.
12. Views und Datenbankverwaltung Views Änderungen in Views Organisation der DB Zugriffsrechte 282 Sichtkonzept (Views 1/2) Sicht (View): mit eigenem Namen bezeichnete, aus Basisrelation abgeleitete, virtuelle
MehrDatenbanken und SQL. Kapitel 1. Übersicht über Datenbanken. Edwin Schicker: Datenbanken und SQL (1)
Datenbanken und SQL Kapitel 1 Übersicht über Datenbanken Übersicht über Datenbanken Vergleich: Datenorganisation versus Datenbank Definition einer Datenbank Bierdepot: Eine Mini-Beispiel-Datenbank Anforderungen
MehrInformations- 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
Mehr9 Verteilte Verklemmungserkennung
9 Verteilte Verklemmungserkennung 9.1 Grundlagen Für die Existenz einer Verklemmung notwendige Bedingungen Exklusive Betriebsmittelbelegung Betriebsmittel können nachgefordert werden Betriebsmittel können
MehrKapitel 10: Transaktionsverwaltung
10. Transaktionsverwaltung Seite 1 Kapitel 10: Transaktionsverwaltung Umfasst diejenigen Komponenten eines Datenbankmanagementsystems, deren Aufgabe die Gewährleistung der Atomizität, Isolation und Dauerhaftigkeit
MehrImplementierung und Analyse von Synchronisationsverfahren für das CbDBC
Technische Universität Kaiserslautern Diplomarbeit Implementierung und Analyse von Synchronisationsverfahren für das CbDBC Susanne Margot Maria Braun September 2008 Fachbereich Informatik AG Datenbanken
MehrIsolationsstufen für. Dr. Karsten Tolle Dienstag 31. Januar 2012
Isolationsstufen für Transaktionen / Sicherheit Dr. Karsten Tolle Dienstag 31. Januar 2012 Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch
MehrVorlesung Datenbankmanagementsysteme
Vorlesung Datenbankmanagementsysteme (auf Basis von Oracle) M. Lange, S. Weise Folie #14-1 Themen der Vorlesung Grundlagen Architekturen Modellierung Relationale Datenbanken Relationaler DB-Entwurf SQL
MehrIn 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
MehrMulticore Programming: Transactional Memory
Software (STM) 07 Mai 2009 Software (STM) 1 Das Problem 2 Probleme mit 3 Definitionen Datenspeicherung Konflikterkennung Granularität Optimierungsmöglichkeiten Software (STM) 4 Software (STM) Beispielimplementation
MehrDatenbanksysteme II SS 2010. Übungsblatt 9: Wiederholung
Ludwig-Maximilians-Universität München München, 02.07.2010 Department Institut für Informatik PD Dr. Peer Kröger Andreas Züfle Datenbanksysteme II SS 2010 Übungsblatt 9: Wiederholung Besprechung: 20.07.2010
MehrData Sharing im Cluster am Beispiel von Adabas Arno Zude, Adabas-Entwicklung Vortrag an der Universität Jena
Data Sharing im Cluster am Beispiel von Arno Zude, -Entwicklung Vortrag an der Universität Jena 2. Februar 2006 Themen Cluster Services Data Sharing im Cluster mit / 2.2.06 / 2 Software AG Cluster Services
MehrRECOVERY. "Concurrency Control and Recovery in Database Systems" Bernstein, Hadzilacos, Goodman. Addison-Wesley. Kapitel 1, 6
Recovery 1 RECOVERY "Concurrency Control and Recovery in Database Systems" Bernstein, Hadzilacos, Goodman Addison-Wesley Kapitel 1, 6 (Online: http://research.microsoft.com/enus/people/philbe/ccontrol.aspx
MehrVorlesung mit Übung Datenbanksysteme 2
Vorlesung mit Übung Datenbanksysteme 2 Sommersemester 2012 Institut für Informatik Lehrstuhl für Datenbanken und Informationssysteme http://www.minet.uni-jena.de/dbis/lehre Prof. Dr. Klaus Küspert (Vorlesung)
MehrKapitel 12: Transaktionen für XML
Kapitel 12: Transaktionen für XML Transaktionelle Garantien für Zugriff auf XMLDatenbestände. Stoßrichtung insbesondere: XMLDaten, die relational gespeichert sind. Verwendung der Transaktionsmechanismen
MehrKonsistenzproblematik bei der Cloud-Datenspeicherung
Konsistenzproblematik bei der Cloud-Datenspeicherung ISE Seminar 2012 Adrian Zylla 1 Cloud Bereitstellung von Speicher- und Rechenkapazität Die Cloud ist für den Anwender eine Blackbox Besitzt drei Servicemodelle
MehrRecovery- 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)
MehrVorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht. Universität Innsbruck Institut für Informatik Datenbanken und Informationssysteme (DBIS)
Verteilte DB-Systeme Kapitel XIII Vorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht Universität Innsbruck Institut für Informatik Datenbanken und Informationssysteme (DBIS) Vorlesungsinhalt 13.
MehrVom 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
MehrWiederherstellung (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
MehrDatenbank-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
MehrFragenkatalog 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
Mehr9 Mehrbenutzeraspekte, Transaktionen, Parallelität und Fehlertoleranz
c M. Scholl, 2005/06 Informationssysteme: 9. Mehrbenutzeraspekte, Transaktionen, Parallelität und Fehlertoleranz 9-1 9 Mehrbenutzeraspekte, Transaktionen, Parallelität und Fehlertoleranz Informationssysteme
Mehr