Einführung - Anomalien beim ungeschützten und konkurrierenden Zugriff von Lesern und Schreibern auf gemeinsame Daten

Größe: px
Ab Seite anzeigen:

Download "Einführung - Anomalien beim ungeschützten und konkurrierenden Zugriff von Lesern und Schreibern auf gemeinsame Daten"

Transkript

1 Synchronisation 0 Einführung - Anomalien beim ungeschützten und konkurrierenden Zugriff von Lesern und Schreibern auf gemeinsame Daten - Synchronisation von Transaktionen: Grundbegriffe und Modellannahmen - Serialisierbarkeit: Definition und Eigenschaften Sperrverfahren (pessimistische Synchronisation) - Zweiphasen-Sperrprotokolle (RX, RAX, RAC) - Implementierungsaspekte - Konsistenzstufen von Transaktionen - Hierarchische Sperrverfahren - Deadlock-Behandlung Optimistische Synchronisation - BOCC - FOCC Überblick über weitere Konzepte - Allgemeines Mehrversionenkonzept - Zeitstempel-Verfahren - Prädikatsperren - Synchronisation bei High Traffic-Elementen Thomasian, A.: Concurrency Control: Methods, Performance, and Analysis, in: ACM Computing Surveys 30:1, March 1998, pp Synchronisation 0

2 Gefährdung der DB-Konsistenz 1 Korrektheit der Abbildungshierarchie Mehrbenutzer- Anomalien, Synchronisation durch das Anwendungsprogramm durch das DBVS und die Betriebsumgebung Fehler auf den Externspeichern, Inkonsistenzen in den Zugriffspfaden, Fehlertolerante Implementierung Übereinstimmung zwischen DB und Miniwelt unzulässige Änderungen, Integritätsüberwachung des DBVS TAorientierte Verarbeitung undefinierter DB-Zustand nach einem Systemausfall Transaktionsorientierte Fehlerbehandlung (Recovery) Gefährdung der DB-Konsistenz 1

3 Anomalien im Mehrbenutzerbetrieb ohne Synchronisation 2 1. Verlorengegangene Änderungen (lost updates) 2. Abhängigkeiten von nicht freigegebenen Änderungen (dirty read, dirty overwrite) 3. Inkonsistente Analyse (non-repeatable read) 4. Phantom-Problem nur durch Änderungs-TA verursacht Anomalien im Mehrbenutzerbetrieb ohne Synchronisation 2

4 Anomalien im Mehrbenutzerbetrieb ohne Synchronisation 3 Anomalien im Mehrbenutzerbetrieb ohne Synchronisation 3

5 Inkonsistente Analyse (Non-repeatable Read)4 Inkonsistente Analyse (Non-repeatable Read)4

6 Phantom-Problem 5 Phantom-Problem 5

7 Synchronisation von Transaktionen: Modellannahmen 6 TRANSAKTION: Ein Programm T mit DML-Anweisungen, das folgende Eigenschaft erfüllt: Wenn T allein auf einer konsistenten DB ausgeführt wird, dann terminiert T (irgendwann) und hinterläßt die DB in einem konsistenten Zustand. (Während der TA-Verarbeitung werden keine Konsistenzgarantien eingehalten) Wenn Transaktionen seriell ausgeführt werden, dann bleibt die Konsistenz der DB erhalten. Modellbildung für die Synchronisation DML-Anweisungen lassen sich nachbilden durch Leseund Schreiboperationen auf Objekten (z. B. Seiten) - READ (O) - WRITE (O:=4) DBVS sieht eine TA wie folgt: BOT, Folge von READ- und WRITE-Anweisungen auf Objekte, EOT Ablauffolge von TA mit Operationen kann durch Plan (Schedule) beschrieben werden: Beispiel: r 1 (x), r 2 (x), r 3 (y), w 1 (x), w 3 (y), r 1 (y), c 1, r 3 (x), w 2 (x), a 2, w 3 (x), c 3,. Beispiel eines seriellen Plans: r 1 (x), w 1 (x), r 1 (y), c 1, r 3 (y), w 3 (y), r 3 (x), c 3, r 2 (x), w 2 (x), c 2,... BOT ist implizit, EOT wird durch c i (commit) oder a i (abort) dargestellt Synchronisation von Transaktionen: Modellannahmen 6

8 Korrektheitskriterium der Synchronisation 7 Ziel der Synchronisation: logischer Einbenutzerbetrieb, d. h. Vermeidung aller Mehrbenutzeranomalien Gleichbedeutend mit dem formalen Korrektheitskriterium der Serialisierbarkeit: Die parallele Ausführung einer Menge von Transaktionen ist serialisierbar, wenn es eine serielle Ausführung derselben TA-Menge gibt, die den gleichen DB-Zustand und die gleichen Ausgabewerte wie die ursprüngliche Ausführung erzielt. Hintergrund: - serielle Ablaufpläne sind korrekt - jeder Ablaufplan, der denselben Effekt wie ein serieller erzielt, ist akzeptierbar Korrektheitskriterium der Synchronisation 7

9 Korrektheitskriterium der Synchronisation 8 Nachweis der Serialisierbarkeit: - Führen von zeitlichen Abhängigkeiten zwischen TA in einem Abhängigkeitsgraphen - Abhängigkeit (Konflikt) besteht, wenn zwei TA auf dasselbe Objekt mit nicht reihenfolgeunabhängigen Operationen zugreifen (z. B. Schreib-/Lese-, Lese-/Schreib-, Schreib- /Schreib-Konflikte) - Serialisierbarkeit liegt vor, wenn der Abhängigkeitsgraph keine Zyklen enthält Abhängigkeitsgraph beschreibt partielle Ordnung zwischen TA, die sich zu einer vollständigen erweitern läßt (Serialisierungsreihenfolge) Korrektheitskriterium der Synchronisation 8

10 Historische Entwicklung von Synchronisationsverfahren 9 Historische Entwicklung von Synchronisationsverfahren 9

11 Zweiphasen-Sperrprotokolle (2PL) 10 Einhaltung folgender Regeln gewährleistet Serialisierbarkeit : 1. Vor jedem Objektzugriff muß Sperre mit ausreichendem Modus angefordert werden 2. Gesetzte Sperren anderer TA sind zu beachten 3. Eine TA darf nicht mehrere Sperren für ein Objekt anfordern 4. Zweiphasigkeit: - Anfordern von Sperren erfolgt in einer Wachstumsphase - Freigabe der Sperren in Schrumpfungsphase - Sperrfreigabe kann erst beginnen, wenn alle Sperren gehalten werden 5. Spätestens bei EOT sind alle Sperren freizugeben Eswaran, K.P. et al.: The notions of consistency and predicate locks in a data base system. Comm. ACM 19: Zweiphasen-Sperrprotokolle (2PL) 10

12 Zweiphasen-Sperrprotokolle (2PL) 11 Zweiphasen-Sperrprotokolle (2PL) 11

13 RX - Sperrverfahren 12 - Gewährter Sperrmodus des Obj.: NL, R, X - Sperranforderung einer Transaktion: R, X - Kompatibilitätsmatrix: Deadlock-Gefahr durch Sperrkonversionen: RX - Sperrverfahren 12

14 RX - Sperrverfahren 13 Erweitertes Sperrverfahren: - Ziel: Verhinderung von Konversions-Deadlocks - U-Sperre für Lesen mit Änderungsabsicht - bei Änderung Konversion U X, andernfalls U R (downgrading) - u. a. in IBM DB2 eingesetzt - das Verfahren ist unsymmetrisch was würde eine Symmetrie bei U bewirken? RX - Sperrverfahren 13

15 RAX-Sperrverfahren 14 - Änderungen erfolgen in temporärer Objektkopie, paralleles Lesen der gültigen Version wird zugelassen - Schreiben wird nach wie vor sequentialisiert (A-Sperre) - bei EOT Konversion der A- und X-Sperren, ggf. auf Freigabe von Lesesperren warten (Deadlock-Gefahr) - höhere Parallelität als beim RX-Verfahren, jedoch i. a. andere Serialisierungsreihenfolge: - starke Behinderungen von Update-TA durch (lange) Leser möglich RAX-Sperrverfahren 14

16 RAC-Sperrverfahren 15 - Änderungen erfolgen ebenfalls in temporärer Objektkopie, A-Sperre erforderlich - bei EOT Konversion von A C-Sperre - C-Sperre zeigt Existenz zweier gültiger Objektversionen an kein Warten auf Freigabe von Lesesperren auf alter Version (R- und C- Modus sind verträglich) - maximal 2 Versionen, da C-Sperren mit sich selbst und mit A-Sperren unverträglich sind RAC-Sperrverfahren 15

17 RAC-Sperrverfahren 16 - Leseanforderungen bewirken nie Blockierung/Rückse jedoch: Auswahl der richtigen Version erforderlich (z. B. über Abhängigkeitsgraphen) - Änderungs-TA, die auf C-Sperre laufen, müssen warten, bis alle Leser der alten Version beendet, weil nur 2 Versionen Abhilfe: allgemeines Mehrversionen-Konzept RAC-Sperrverfahren 16

18 Konsistenzebenen von Transaktionen 17 Ebene 3: Transaktion T sieht Konsistenzebene 3, wenn gilt: a) T verändert keine schmutzigen Daten anderer Transaktionen b) T gibt keine Änderungen vor EOT frei c) T liest keine schmutzigen Daten anderer Transaktionen d) Von T gelesene Daten werden durch andere Transaktionen erst nach EOT von T verändert Ebene 2: Transaktion T sieht Konsistenzebene 2, wenn sie die Bedingungen a, b und c erfüllt Ebene 1: Transaktion T sieht Konsistenzebene 1, wenn sie die Bedingungen a und b erfüllt Ebene 0: Transaktion T sieht Konsistenzebene 0, wenn sie nur Bedingung a erfüllt Konsistenzebenen von Transaktionen 17

19 Konsistenzebenen 18 Konsistenzebene 3 (Serialisierbarkeit): - wünschenswert, jedoch oft viele Sperrkonflikte wegen langer Schreib- und Lesesperren Konsistenzebene 2: - nur lange Schreibsperren, jedoch kurze Lesesperren - unrepeatable read möglich Konsistenzebene 1: - lange Schreibsperren, keine Lesesperren - dirty read (und lost update) möglich Konsistenzebene 0: - kurze Schreibsperren (Chaos) Kommerzielle DBS verwenden meist Konsistenzebene 2 Wahlangebot Einige DBS (DB2, Tandem NonStop SQL,...) bieten Wahlmöglichkeit zwischen: - repeatable read (Ebene 3) und - cursor stability (Ebene 2) Einige DBS bieten auch BROWSE-Funktion, d. h. Lesen ohne Setzen von Sperren (Ebene 1) Konsistenzebenen 18

20 Konsistenzebenen in SQL SQL2 erlaubt Wahl zwischen vier Konsistenzebenen (Isolation Level) bezüglich Synchronisation SQL2 definiert die Konsistenzebenen über die Anomalien, die jeweils in Kauf genommen werden - 0 : uncommitted read - 1 : committed read - 2 : repeatable read - 3 : serializable Zuordnung der Anomalien - Lost-Update muß generell vermieden werden - SQL-Anweisung zum Setzen der Konsistenzebene: SET TRANSACTION <tx mode>, <isolation level> TA-Modus: READ WRITE (Default) o. READ ONLY Bsp.: SET TRANSACTION READ ONLY, 1 Konsistenzebenen in SQL2 19

21 Hierarchische Sperrverfahren 20 Sperrgranulat bestimmt Parallelität/Aufwand feines Granulat reduziert Sperrkonflikte, jedoch sind viele Sperren anzufordern und zu verwalten Hierarchische Verfahren erlauben Flexibilität bei Wahl des Granulates (multigranularity locking), z. B. - lange TA auf Relationenebene - kurze TA auf Tupelebene synchronisieren kommerzielle DBS unterstützen zumeist mindestens 2-stufige Objekthierarchie, z. B. Hierarchische Sperrverfahren 20

22 Hierarchische Sperrverfahren 21 Verfahren nicht auf reine Hierarchien beschränkt, sondern auch auf halbgeordnete Objektmengen erweiterbar. Verfahren erheblich komplexer als einfache Sperrverfahren (mehr Sperrmodi, Konversionen, Deadlock Behandlung,...) Hierarchische Sperrverfahren 21

23 Beispiel einer Sperrhierarchie 22 Beispiel einer Sperrhierarchie 22

24 Hierarchische Sperrverfahren: Anwartschaftssperren 23 Mit R- und X-Sperre werden alle Nachfolgerknoten implizit mitgesperrt Einsparungen möglich Alle Vorgängerknoten sind ebenfalls zu sperren, um Unverträglichkeiten zu vermeiden Verwendung von Anwartschaftssperren (intention locks) Allgemeine Anwartschaftssperre (I-Sperre) Unverträglichkeit von I- u. R-Sperren zu restriktiv zwei Arten von Anwartschaftssperren (IR und IX) Hierarchische Sperrverfahren: Anwartschaftssperren 23

25 Anwartschaftssperren 24 Anwartschaftssperren für Leser und Schreiber IR-Sperre (intent read), falls auf untergeordneten Objekten nur lesend zugegriffen wird, sonst IX-Sperre Anwartschaftssperren 24

26 Anwartschaftssperren 25 Weitere Verfeinerung sinnvoll, um den Fall zu unterstützen, wo alle Tupel eines Satztyps gelesen und nur einige davon geändert werden sollen - X-Sperre auf Satztyp sehr restriktiv - IX-Sperre auf Satztyp verlangt Sperren jedes Tupels neuer Typ von Anwartschaftssperre: RIX = R + IX - sperrt das Objekt in R-Modus und verlangt - X-Sperren auf tieferer Hierarchieebene nur für zu ändernde Objekte Anwartschaftssperren 25

27 Anwartschaftssperren 26 Vollständiges Protokoll der Anwartschaftssperren - RIX gibt ein Leserecht auf den Knoten und seine Nachfolger. Weiterhin ist damit das Recht verbunden, auf Nachfolger-Knoten IX, U und X-Sperren anzufordern. - U gewährt ein Leserecht auf den Knoten und seine Nachfolger. Dieser Modus repräsentiert die Absicht, den Knoten in der Zukunft zu verändern. Bei Änderung Konversion U X, sonst U R. Anwartschaftssperren 26

28 Anwartschaftssperren 27 Sperrdisziplin erforderlich - Sperranforderungen von der Wurzel zu den Blättern - Bevor T eine R- oder IR-Sperre für einen Knoten anfordert, muß sie für alle Vorgängerknoten IX- oder IR-Sperren besitzen - Bei einer X-, U-, RIX- oder IX-Anforderung müssen alle Vorgängerknoten in RIX oder IX gehalten werden - Sperrfreigaben von den Blättern zu der Wurzel - Bei EOT sind alle Sperren freizugeben Anwartschaftssperren 27

29 Deadlock-Behandlung 28 Voraussetzungen für Deadlock: - paralleler Zugriff - exklusive Zugriffsanforderungen - anfordernde TA besitzt bereits Objekte/Sperren - keine vorzeitige Freigabe von Objekten/Sperren (non-preemption) - zyklische Wartebeziehung zwischen zwei oder mehr TA Lösungsmöglichkeiten: 1. Timeout-Verfahren - TA wird nach festgelegter Wartezeit auf Sperre zurückgesetzt - problematische Bestimmung des Timeout- Wertes 2. Deadlock-Verhütung (Prevention) - keine Laufzeitunterstützung zur Deadlock- Behandlung erforderlich - Bsp.: Preclaiming (in DBS i. a. nicht praktikabel) Deadlock-Behandlung 28

30 Deadlock-Behandlung Deadlock-Vermeidung (Avoidance) - potentielle Deadlocks werden im voraus erkannt und durch entsprechende Maßnahmen vermieden Laufzeitunterstützung nötig 4. Deadlock-Erkennung (Detection) Deadlock-Behandlung 29

31 Deadlock-Erkennung 30 Explizites Führen eines Wartegraphen (waitfor 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) Zyklensuche entweder - bei jedem Sperrkonflikt bzw. - verzögert (z. B. über Timeout gesteuert) Deadlock-Erkennung 30

32 Sperrverfahren in Datenbanksystemen 31 Aufgabe von Sperrverfahren: Vermeidung von Anomalien, indem - zu ändernde Objekte dem Zugriff aller anderen Transaktionen entzogen werden - zu lesende Objekte vor Änderungen geschützt werden Standardverfahren: Hierarchisches Zweiphasen- Sperrprotokoll - mehrere Sperrgranulate - Verringerung der Anzahl der Sperranforderungen Probleme bei der Implementierung von Sperren - kleine Sperreinheiten (wünschenswert) erfordern hohen Aufwand - Sperranforderung und -freigabe sollten sehr schnell erfolgen, da sie sehr häufig benötigt werden Sperrverfahren in Datenbanksystemen 31

33 Sperrverfahren in Datenbanksystemen 32 - explizite, satzweise Sperren führen u. U. zu umfangreichen Sperrtabellen und großem Zusatzaufwand - Zweiphasigkeit der Sperren führt häufig zu langen Wartezeiten (starke Serialisierung) - häufig berührte Zugriffspfade können zu Engpässen werden - Eigenschaften des Schemas können hot spots erzeugen Optimierungen: - Änderungen auf privaten Objektkopien (verkürzte Dauer exklusiver Sperren) - Nutzung mehrerer Objektversionen - spezialisierte Sperren (Nutzung der Semantik von Änderungsoperationen) Sperrverfahren in Datenbanksystemen 32

34 Optimistische Synchronisation 33 3-phasige Verarbeitung: Lesephase - eigentliche TA-Verarbeitung - Änderungen einer Transaktion werden in privatem Puffer durchgeführt Optimistische Synchronisation 33

35 Optimistische Synchronisation 34 Validierungsphase - Überprüfung, ob ein Lese-/Schreib- oder Schreib- /Schreib-Konflikt mit einer der parallel ablaufenden Transaktionen passiert ist - Konfliktauflösung durch Zurücksetzen von Transaktionen Schreibphase - nur bei positiver Validierung - Lese-Transaktion ist ohne Zusatzaufwand beendet - Schreib-Transaktion schreibt hinreichende Log- Information und propagiert ihre Änderungen Optimistische Synchronisation 34

36 Optimistische Synchronisation (OCC) 35 Grundannahme: geringe Konfliktwahrscheinlichkeit Allgemeine Eigenschaften von OCC: + einfache TA-Rücksetzung + keine Deadlocks + potentiell höhere Parallelität als bei Sperrverfahren - mehr Rücksetzungen als bei Sperrverfahren - Gefahr des Verhungerns von TA zur Durchführung der Validierungen werden pro Transaktion der - Read-Set (RS) und - Write-Set (WS) geführt Forderung: eine TA kann nur erfolgreich validieren, wenn sie alle Änderungen von zuvor validierten TA gesehen hat Validierungsreihenfolge bestimmt Serialisierungsreihenfolge Validierungsstrategien: - Backward Oriented (BOCC): Validierung gegenüber bereits beendeten (Änderungs-) TA - Forward Oriented (FOCC): Validierung gegenüber laufenden TA Optimistische Synchronisation (OCC) 35

37 BOCC 36 erstes publizierte Verfahren zur optimistischen Synchronisation Validierung von Transaktion T: BOCC-Test gegenüber allen Änderungs-TA T j, die seit BOT von T erfolgreich validiert haben: IF RS(T ) W S(T j ) THEN ABORT T; ELSE SCHREIBPHASE Kung, H.T., Robinson, J.T.: On optimistic method for concurrency control. ACM Trans. on Database Systems 6: BOCC 36

38 BOCC 37 Nachteile/Probleme: - unnötige Rücksetzungen wegen ungenauer Konfliktanalyse - Aufbewahren der Write-Sets beendeter TA erforderlich - hohe Anzahl von Vergleichen bei Validierung - Rücksetzung erst bei EOT viel unnötige Arbeit - es kann nur die validierende TA zurückgesetzt werden Gefahr von starvation - hohes Rücksetzrisiko für lange TA und bei Hot-Spots BOCC 37

39 FOCC 38 nur Änderungs-TA validieren gegenüber laufenden TA T i Validierungstest: W S(T ) RS(T j ) Vorteile: - Wahlmöglichkeit des Opfers (Kill, Abort, Prioritäten,...) - keine unnötigen Rücksetzungen - frühzeitige Rücksetzung möglich Einsparen unnötiger Arbeit - keine Aufbewahrung von Write-Sets, geringerer Validierungsaufwand als bei BOCC Härder, T.: Observations on optimistic concurrency control schemes. Information Systems 9: FOCC 38

40 FOCC 39 Probleme: - Während Validierungs- und Schreibphase muß W S(T ) gesperrt sein, damit sich die RS(T i ) nicht ändern (keine Deadlocks damit möglich) - immer noch hohe Rücksetzrate möglich - es kann immer nur einer TA Durchkommen definitiv zugesichert werden FOCC 39

41 Mehrversionen-Konzept 40 - jede Änderung erzeugt neue Objektversion - Lese-TA sehen den bei ihrem BOT gültigen DB-Zustand brauchen bei Synchronisation nicht mehr berücksichtigt zu werden - keine Blockierungen und Rücksetzungen für Lese-TA, dafür ggf. Zugriff auf veraltete Objektversionen Änderungs-TA werden untereinander über ein allgemeines Verfahren (Sperren, OCC,...) synchronisiert weniger Synchronisationskonflikte zusätzlicher Speicher- und Wartungsaufwand - Versionenpoolverwaltung - Auffinden von Versionen - Garbage Collection bereits in einigen kommerziellen DBVS eingesetzt (Oracle, RDB) Mehrversionen-Konzept 40

42 Zugriff auf Objektversionen 41 Objekt O k zeitliche Reihenfolge der Zugriffe auf O k Speicherungsschema für Versionen - Versionenpool: Teil des DBS-Puffers - Speicherplatzoptimierung: Versionen auf Satzebene, Einsatz von Komprimierungstechniken Zugriff auf Objektversionen 41

43 Zeitstempel-Verfahren 42 Grundsätzliche Idee - TA bekommt bei BOT einen systemweit eindeutigen Zeitstempel - TA hinterläßt den Wert ihres Zeitstempels (als Lese- oder Schreibstempel RTS bzw. WTS) bei jedem Objekt O i, auf das sie zugreift - Prüfung der Serialisierbarkeit ist sehr einfach (Zeitstempelvergleich) Prinzipielle Arbeitsweise - Vergabe von eindeutigen TA-IDs (Zeitstempel ts der TA) in aufsteigender Reihenfolge - Zeitstempel des Objektes O: T S(O) - Zugriffe von T i auf O (r/w): T S(O) := ts(t i ) - Konfliktprüfung: if T S(T i ) < T S(O) then ABORT; else verarbeite; - Zugriffsfolge auf Objekt O: kein Konflikt bei r 9! Zeitstempel-Verfahren 42

44 Zeitstempel-Verfahren 43 Verfeinerung des Zeitstempelverfahrens - 2 Zeitstempel pro Objekt (a) Erhöhung beim Schreiben: WTS (b) Erhöhung beim Lesen: RTS - Regeln für T i und O: (Abk. ts(t i ) = i) - Zugriffsfolge auf Objekt O: Zeitstempel-Verfahren 43

45 Zeitstempel-Verfahren 44 TA T wird zurückgesetzt, falls ts(t ) < W T S - bei Lesezugriff - und bei Schreibzugriff gilt (ohne Berücksichtigung von blind updates) Vorkehrungen für den ABORT-Fall - sofortige Zulassung aller Schreiboperationen erzeugt inkonsistente DB - Einfrieren der Zeitstempel bis COMMIT der ändernden TA - Erwerb von Anwartschaften: Prewrites - Prewrite i verzögert r j, w j mit j > i - Einführung von Read-queues, Prewrite-queues und Write-queues Zeitstempel-Verfahren 44

46 Zeitstempel-Verfahren 45 Eigenschaften - Serialisierungsreihenfolge einer Transaktion wird bei BOT festgelegt - Deadlocks sind ausgeschlossen - aber: (viel) höhere Rücksetzraten als pessimistische Verfahren - ungelöste Probleme, z. B. wiederholter AB- ORT einer Transaktion Hauptsächlicher Einsatz - Synchronisation in Verteilten DBS - lokale Prüfung der Serialisierbarkeit direkt am Objekt O i (geringer Kommunikationsaufwand) Zeitstempel-Verfahren 45

47 Prädikatssperren 46 Verhütung des Phantomproblems Prädikatssperren oder Logische Sperren - minimaler Sperrbereich - Form: - Lock (R, P, write) sperrt alle möglichen Tupeln von R exklusiv, die Prädikat P erfüllen Eswaran, K.P. et al.: The notions of consistency and predicate locks in a data base system. Commm. ACM 19: Prädikatssperren 46

48 Prädikatssperren 47 Wie kann Konflikt zwischen zwei Prädikaten festgestellt werden? - im allgemeinen Fall rekursiv unentscheidbar, selbst mit eingeschränkten arithmetischen Operatoren - entscheidbare Klasse von Prädikaten: einfache Prädikate (AΘ Wert){, }(... Prädikatssperren 47

49 Prädikatssperren 48 Entscheidungsprozedur 1. Wenn R R, kein Konflikt 2. Wenn a =read und a =read, kein Konflikt 3. Wenn P (t) P (t) =TRUE für irgendein t, dann besteht ein Konflikt Prädikatssperren 48

50 Prädikatssperren 49 T1: LOCK (PERS, ALTER > 50, read) T2: LOCK (PERS, PNR = 4711, write) Entscheidung Bewertung - aufwendige Entscheidungsprozedur mit vielen Prädikaten (N > 100) (wird in innerer Schleife des Lock-Mgr. häufig aufgerufen) - pessimistische Entscheidungen Einschränkung der Parallelität (es wird auf Erfüllbarkeit getestet!) - Sonderfall: P = T RUE entspricht einer Relationensperre große Sperrgranulate, geringe Parallelität Prädikatssperren 49

51 Prädikatssperren 50 effizientere Implementierung: Präzisionssperren - nur gelesene Daten werden durch Prädikat gesperrt, Schreibsperren werden für Tupel gesetzt kein Disjunktheitstest für Prädikate mehr erforderlich, sondern lediglich zu überprüfen, ob Tupel ein Prädikat erfüllt Datenstrukturen: - Prädikatliste: pro Relation werden Lesesperren laufender TA durch Prädikate beschrieben - Update-Liste: enhält geänderte Tupel laufender TA Leseanforderung (Prädikat P): - für jedes Tupel der Update-Liste ist zu prüfen, ob es P erfüllt - wenn ja Sperrkonflikt Schreibanforderung (Tupel T): - für jedes Prädikat P der Prädikatliste ist zu prüfen, ob T es erfüllt - wenn T keines erfüllt Schreibsperre wird gewährt J.R. Jordan, J. Banerjee, R.B. Batman: Precision Locks, Proc. ACM SIGMOD, 1981, pp Prädikatssperren 50

52 Synchronisation von High-Traffic-Objekten 51 High-Traffic-Objekte: meist numerische Felder mit aggregierten Informationen z. B. - Anzahl freier Plätze - Summe aller Kontostände - einfachste Lösung der Sperrprobleme: Vermeidung solcher Felder beim DB-Entwurf - Alternative: Nutzung von semantischem Wissen zur Synchronisation wie Kommutativität von Änderungsoperationen auf solchen Feldern - Bsp.: Inkrement-/Dekrement-Operation Synchronisation von High-Traffic-Objekten 51

53 Escrow-Ansatz 52 - Deklaration von High-Traffic-Attributen als Escrow-Felder Benutzung spezieller Operationen auf Escrow- Feldern: - Anforderung einer bestimmten Wertemenge IF ESCROW (field=f1, quantity=c1, test=(condition)) THEN continue with normal processing ELSE perform exception handling - Benutzung der reservierten Wertmengen: USE (field=f1, quantity=c2) P. ONeil: The Escrow Transactional Method. ACM Trans. on Database Systems 11: 4, 1986, Escrow-Ansatz 52

54 Escrow-Ansatz 53 - optionale Spezifizierung eines Bereichtests bei Escrow-Anforderung - wenn Anforderung erfolgreich ist, kann Prädikat nicht mehr nachträglich invalidiert werden (keine spätere Validierung/Zurücksetzung) Aktueller Wert eines Escrow-Feldes ist unbekannt, wenn laufende TA Reservierungen angemeldet haben Führen eines Werteintervalls, das alle möglichen Werte nach Abschluß der laufenden TA umfaßt - für Wert Q k des Escrow-Feldes k gilt: LO k IN k Q k SUP k HI k - Anpassung von INF, Q, SUP bei Anforderung, Commit und Abort einer TA Escrow-Ansatz 53

55 Escrow-Ansatz 54 - Beispiel: Zugriffe auf Feld mit LO = 0, HI = 500 (Anzahl freier Plätze) - Durchführung von Bereichstests bezüglich des Werteintervalls - Minimal-/Maximalwerte (LO, HI) dürfen nicht überschritten werden - hohe Parallelität ändernder Zugriffe möglich Nachteile: - spezielle Programmierschnittstelle - tatsächlicher Wert ggf. nicht abrufbar Escrow-Ansatz 54

56 Zusammenfassung 55 Korrektheitskriterium der Synchronisation: Serialisierbarkeit Sperrverfahren sind universell einsetzbar - Zweiphasen-Sperrprotokolle - reine OCC- und Zeitstempelverfahren erzeugen zuviele Rücksetzungen Hierarchische Synchronisationsverfahren - erlauben Begrenzung des Verwaltungsaufwands generelle Optimierungen: - reduzierte Konsistenzebene - Mehrversionen-Ansatz Harte Synchronisationsprobleme: (a) Hot Spots / High Traffic-Elemente (b) lange (Änderung-) TA Zusammenfassung 55

57 Zusammenfassung 56 - wenn Vermeidungsstrategie nicht möglich, sind zumindest für Hochleistungssysteme Spezialprotokolle anzuwenden - Nutzung semantischen Wissens über Operationen / Objekte zur Reduzierung von Synchronisationskonfliken - allerdings (a) ggf. Erweiterung der Programmierschnittstelle (b) begrenzte Einsetzbarkeit (c) Zusatzaufwand Zusammenfassung 56

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

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

Kapitel 3 Teil 3 Synchronisation - Algorithmen II

Kapitel 3 Teil 3 Synchronisation - Algorithmen II Kapitel 3 Teil 3 Synchronisation - Algorithmen II Inhalt: Hierarchische Sperrverfahren, Mehrversionenverfahren, Prädikatssperren, Semantische Synchronisation, Escrow Hierarchische Sperrverfahren (1) Sperrgranulat

Mehr

Eigenschaften von TAs: ACID-Prinzip

Eigenschaften von TAs: ACID-Prinzip Transaktionsparadigma Definition: Transaktion ununterbrechbare Folge von DML-/DDL-Befehlen begin transaction --- end transaction begin: meist implizit mit ersten Datenbankzugriff end: commit (work) oder

Mehr

Serialisierbarkeit von Historien: Minimalanforderung bzgl. "akzeptabler" Synchronisation

Serialisierbarkeit 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

Mehr

Transaktionskonzept Eine Transaktion ist eine Folge von Operationen mit folgenden ACID Eigenschaften: Atomicity: Es werden alle Operationen oder gar k

Transaktionskonzept Eine Transaktion ist eine Folge von Operationen mit folgenden ACID Eigenschaften: Atomicity: Es werden alle Operationen oder gar k Transaktionsverwaltung 1. Schnellkurs: Serialisierbarkeit, Isolationslevel, Synchronisationsverfahren, Savepoints, Logging, Implementierungsaspekte! Harder, Rahm Buch 2. Erweiterte Transaktionskonzepte!

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

... T n T 1 T 2 T 3. Transaktions-Manager. Daten-Manager. Recovery-Manager Puffer-Manager. Datenbank

... 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

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

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

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

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

2. Synchronisation in DBS: Grundlagen, Sperrverfahren

2. Synchronisation in DBS: Grundlagen, Sperrverfahren 2. Synchronisation in DBS: Grundlagen, Sperrverfahren Anomalien im Mehrbenutzerbetrieb Serialisierbarkeit Zweiphasen-Sperrprotokolle Konsistenzstufen von Transaktionen Hierarchische Sperrverfahren Deadlock-Behandlung

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

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

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

3.5 Synchronisation ohne Sperren

3.5 Synchronisation ohne Sperren Überblick Nachteil von Sperren: Einschränkung der Parallelität Deadlocks 1. Lösungsversuch: Weiterhin pessimistisches Verfahren, aber statt Sperren, Zeitstempel (nicht zur Verklemmungsvermeidung sondern

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

Mehrbenutzer-Synchronisation

Mehrbenutzer-Synchronisation MehrbenutzerSynchronisation KonfliktKategorien Serialisierung Historien Sperrungen Verklemmungen Optimistische Synchronisation Synchronisation in SQL Mehrbenutzersynchronisation Ausführung der drei Transaktionen,

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

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

Mehrbenutzer-Synchronisation

Mehrbenutzer-Synchronisation Mehrbenutzer-Synchronisation Konflikt-Kategorien Serialisierung Historien Sperrungen Verklemmungen Optimistische Synchronisation Synchronisation in SQL Kapitel 11 1 Mehrbenutzersynchronisation Ausführung

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

8. Synchronisations-Verfahren

8. 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

Mehr

Transaction Validation for XML Documents based on XPath

Transaction Validation for XML Documents based on XPath Transaction Validation for XML Documents based on XPath @ Informatik 2002, m-dbis Stefan Böttcher Adelhard Türling Universität Paderborn Überblick Transaktionen für XML - Daten & mobile Clients Motivation

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

7. Synchronisation Algorithmen 1

7. Synchronisation Algorithmen 1 7. Synchronisation Algorithmen 1 Scheduling-Algorithmen Entwurf von Scheduling-Algorithmen Klassifikation von Synchronisationsalgorithmen Sperrprotokolle - Zweiphasige Sperrprotokolle - Deadlocks und ihr

Mehr

3. Synchronisation: Weitere Verfahren, Leistungsbewertung

3. Synchronisation: Weitere Verfahren, Leistungsbewertung 3. Synchronisation: Weitere Verfahren, Leistungsbewertung Optimistische Synchronisation BOCC, FOCC Kombination von OCC und Sperrverfahren Mehrversionen-Synchronisation Prädikatsperren Synchronisation bei

Mehr

Mehrbenutzersynchronisation

Mehrbenutzersynchronisation Mehrbenutzersynchronisation VU Datenbanksysteme vom 4.11. 2015 Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Nebenläufigkeit

Mehr

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige

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

Datenbanksysteme II SS 2010. Übungsblatt 9: Wiederholung

Datenbanksysteme 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

Mehr

8. Transaktionsverarbeitung. Architektur von Datenbanksystemen I

8. Transaktionsverarbeitung. Architektur von Datenbanksystemen I 8. Transaktionsverarbeitung Architektur von Datenbanksystemen I Einordnung ARCHITEKTUR VON DATENBANKSYSTEMEM I - Key/Value Store - Row Store - Column Store - Data Compression - Transaction Processing -

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 3 12.11.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: a)

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

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

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

Monitore. Klicken bearbeiten

Monitore. Klicken bearbeiten Sascha Kretzschmann Institut für Informatik Monitore Formatvorlage und deren Umsetzung des Untertitelmasters durch Klicken bearbeiten Inhalt 1. Monitore und Concurrent Pascal 1.1 Warum Monitore? 1.2 Monitordefinition

Mehr

Speicher in der Cloud

Speicher in der Cloud Speicher in der Cloud Kostenbremse, Sicherheitsrisiko oder Basis für die unternehmensweite Kollaboration? von Cornelius Höchel-Winter 2013 ComConsult Research GmbH, Aachen 3 SYNCHRONISATION TEUFELSZEUG

Mehr

2. Synchronisation in DBS: Grundlagen, Sperrverfahren

2. Synchronisation in DBS: Grundlagen, Sperrverfahren 2. Synchronisation in DBS: Grundlagen, Sperrverfahren Anomalien im Mehrbenutzerbetrieb Serialisierbarkeit ZweiphasenSperrprotokolle Konsistenzstufen von Transaktionen Hierarchische Sperrverfahren DeadlockBehandlung

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

Datenbanksysteme 2009

Datenbanksysteme 2009 Datenbanksysteme 2009 Vorlesung vom 30.06.09 Kapitel 14: Mehrbenutzersynchronisation Oliver Vornberger Institut für Informatik Universität Osnabrück Multiprogramming Zeitachse Einbenutzer betrieb T1 T2

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

Kurzanleitung zur Übermittlung der mündlichen Prüfungsergebnisse mit DSD-Online. Stand: Dezember 2006. Schulmanagement weltweit

Kurzanleitung zur Übermittlung der mündlichen Prüfungsergebnisse mit DSD-Online. Stand: Dezember 2006. Schulmanagement weltweit Kurzanleitung zur Übermittlung der mündlichen Prüfungsergebnisse mit DSD-Online Stand: Dezember 2006 Schulmanagement weltweit Einleitung Ab sofort werden die Ergebnisse der mündlichen Prüfung in DSD-Online

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

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

Benutzerhandbuch - Elterliche Kontrolle

Benutzerhandbuch - Elterliche Kontrolle Benutzerhandbuch - Elterliche Kontrolle Verzeichnis Was ist die mymaga-startseite? 1. erste Anmeldung - Administrator 2. schnittstelle 2.1 Administrator - Hautbildschirm 2.2 Administrator - rechtes Menü

Mehr

Allgemeines zu Datenbanken

Allgemeines zu Datenbanken Allgemeines zu Datenbanken Was ist eine Datenbank? Datensatz Zusammenfassung von Datenelementen mit fester Struktur Z.B.: Kunde Alois Müller, Hegenheimerstr. 28, Basel Datenbank Sammlung von strukturierten,

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

S7-Hantierungsbausteine für R355, R6000 und R2700

S7-Hantierungsbausteine für R355, R6000 und R2700 S7-Hantierungsbausteine für R355, R6000 und R2700 1. FB90, Zyklus_R/W Dieser Baustein dient zur zentralen Kommunikation zwischen Anwenderprogramm und dem Modul R355 sowie den Geräten R6000 und R2700 über

Mehr

Scheduler. vereinfachende Annahmen: alle Transaktionen werden wirksam nur Konflikt-Serialisierbarkeit keine Versionen

Scheduler. 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

Mehr

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers Ist Excel das richtige Tool für FMEA? Einleitung Wenn in einem Unternehmen FMEA eingeführt wird, fangen die meisten sofort damit an,

Mehr

Anleitung zum neuen Überaumbuchungssystem der Hochschule für Musik und Tanz Köln

Anleitung zum neuen Überaumbuchungssystem der Hochschule für Musik und Tanz Köln Anleitung zum neuen Überaumbuchungssystem der Hochschule für Musik und Tanz Köln Dieses System wird im Sommersemester 2015 getestet und gilt nur für das Übehaus. Das Üben in Räumen des Haupthauses wird

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit Frau Dr. Eva Douma ist Organisations-Beraterin in Frankfurt am Main Das ist eine Zusammen-Fassung des Vortrages: Busines

Mehr

Mehrbenutzersynchronisation

Mehrbenutzersynchronisation Mehrbenutzersynchronisation Ausführung der drei Transaktionen T 1, T 2 und T 3 : (a) im Einzelbetrieb und Zeitachse T 1 T2 T 3 (b) im (verzahnten) Mehrbenutzerbetrieb (gestrichelte Linien repräsentieren

Mehr

Kapitel 8: Physischer Datenbankentwurf

Kapitel 8: Physischer Datenbankentwurf 8. Physischer Datenbankentwurf Seite 1 Kapitel 8: Physischer Datenbankentwurf Speicherung und Verwaltung der Relationen einer relationalen Datenbank so, dass eine möglichst große Effizienz der einzelnen

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte 50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien

Mehr

Universität Karlsruhe (TH)

Universität Karlsruhe (TH) Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Cluster-Praktikum Sommersemester 2007 Transparent Replizierte Objekte in JavaParty Institut für Programmstrukturen und Datenorganisation

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Lehrer: Einschreibemethoden

Lehrer: Einschreibemethoden Lehrer: Einschreibemethoden Einschreibemethoden Für die Einschreibung in Ihren Kurs gibt es unterschiedliche Methoden. Sie können die Schüler über die Liste eingeschriebene Nutzer Ihrem Kurs zuweisen oder

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

Umzug der abfallwirtschaftlichen Nummern /Kündigung

Umzug der abfallwirtschaftlichen Nummern /Kündigung Umzug der abfallwirtschaftlichen Nummern /Kündigung Um sich bei ebegleitschein abzumelden/ zu kündigen sind folgende Schritte notwendig: Schritt 1: Sie erteilen bifa Umweltinstitut GmbH den Auftrag, Ihre

Mehr

Verkehrsteilnehmer. Beispiel: Wir betrachten die Modellierung von Handlungskomponenten wie Verkehrsteilnehmern und Straßen.

Verkehrsteilnehmer. Beispiel: Wir betrachten die Modellierung von Handlungskomponenten wie Verkehrsteilnehmern und Straßen. 7.6 Bedingte Rechte Manchmal sind Rechte nur unter bestimmten Voraussetzungen gültig. Diese Situation beschreiben wir -wie sonst auch üblich- mit bedingten Rechten. Beispiel: Wir betrachten die Modellierung

Mehr

Statuten in leichter Sprache

Statuten in leichter Sprache Statuten in leichter Sprache Zweck vom Verein Artikel 1: Zivil-Gesetz-Buch Es gibt einen Verein der selbstbestimmung.ch heisst. Der Verein ist so aufgebaut, wie es im Zivil-Gesetz-Buch steht. Im Zivil-Gesetz-Buch

Mehr

Synchronisations- Assistent

Synchronisations- Assistent TimePunch Synchronisations- Assistent Benutzerhandbuch Gerhard Stephan Softwareentwicklung -und Vertrieb 25.08.2011 Dokumenten Information: Dokumenten-Name Benutzerhandbuch, Synchronisations-Assistent

Mehr

Dokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser

Dokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser Dokumentation Black- und Whitelists Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser Inhalt INHALT 1 Kategorie Black- und Whitelists... 2 1.1 Was sind Black- und Whitelists?...

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

AG Datenbanken und Informationssysteme Wintersemester 2006 / Übungsblatt. Aufgabe 2: Sperrprotokolle in Datenbankystemen

AG Datenbanken und Informationssysteme Wintersemester 2006 / Übungsblatt. Aufgabe 2: Sperrprotokolle in Datenbankystemen AG Datenbanken und nformationssysteme Wintersemester 26 / 27 Prof. Dr.-ng. Dr. h. c. Theo Härder Fachbereich nformatik Technische Universität Kaiserslautern Aufgabe 1: Verklemmungen 9. Übungsblatt Für

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (Bilder, Texte,...) Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Der Scheduler. 9. Transaktionsverwaltung. Zustände einer Transaktion. Transaktionsoperationen

Der 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

Mehr

10.3.1.8 Übung - Konfigurieren einer Windows 7-Firewall

10.3.1.8 Übung - Konfigurieren einer Windows 7-Firewall 5.0 10.3.1.8 Übung - Konfigurieren einer Windows 7-Firewall Drucken Sie diese Übung aus und führen Sie sie durch. In dieser Übung werden Sie erfahren, wie man die Windows 7-Firewall konfiguriert und einige

Mehr

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager email-rückläufer Script. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager email-rückläufer Script. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager 7 combit Relationship Manager email-rückläufer Script Inhalt Einleitung 3 Notwendige Anpassungen 3 crm Solution

Mehr

GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT

GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT Seite 1/7 GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT ZENTRAL LOKALE MANAGEMENT-PLATTFORM FÜR EINE W ELTWEIT SICHERE INDUSTRIELLE KOMMUNIKATION. Seite 2/7 Auf den folgenden Seiten

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

Vom 1. April 2015 fängt das neue BLU TRIBE-Treueprogramm wieder an, das bis 31.März 2017 gültig sein wird.

Vom 1. April 2015 fängt das neue BLU TRIBE-Treueprogramm wieder an, das bis 31.März 2017 gültig sein wird. Vom 1. April 2015 fängt das neue BLU TRIBE-Treueprogramm wieder an, das bis 31.März 2017 gültig sein wird. Geltungsdauer: Punktesammlung: vom 01.04.2015 bis 31.03.2017 Gutscheine anfordern: von 01.04.2015

Mehr

Mehrbenutzersynchronisation

Mehrbenutzersynchronisation Mehrbenutzersynchronisation Ausführung der drei Transaktionen T 1, T 2 und T 3 : (a) im Einzelbetrieb und Zeitachse T 1 T 2 T 3 (b) im (verzahnten) Mehrbenutzerbetrieb (gestrichelte Linien repräsentieren

Mehr

Die Post hat eine Umfrage gemacht

Die Post hat eine Umfrage gemacht Die Post hat eine Umfrage gemacht Bei der Umfrage ging es um das Thema: Inklusion Die Post hat Menschen mit Behinderung und Menschen ohne Behinderung gefragt: Wie zufrieden sie in dieser Gesellschaft sind.

Mehr

iphone- und ipad-praxis: Kalender optimal synchronisieren

iphone- und ipad-praxis: Kalender optimal synchronisieren 42 iphone- und ipad-praxis: Kalender optimal synchronisieren Die Synchronisierung von ios mit anderen Kalendern ist eine elementare Funktion. Die Standard-App bildet eine gute Basis, für eine optimale

Mehr

ecaros2 - Accountmanager

ecaros2 - Accountmanager ecaros2 - Accountmanager procar informatik AG 1 Stand: FS 09/2012 Inhaltsverzeichnis 1 Aufruf des ecaros2-accountmanager...3 2 Bedienung Accountmanager...4 procar informatik AG 2 Stand: FS 09/2012 1 Aufruf

Mehr

Verband der TÜV e. V. STUDIE ZUM IMAGE DER MPU

Verband der TÜV e. V. STUDIE ZUM IMAGE DER MPU Verband der TÜV e. V. STUDIE ZUM IMAGE DER MPU 2 DIE MEDIZINISCH-PSYCHOLOGISCHE UNTERSUCHUNG (MPU) IST HOCH ANGESEHEN Das Image der Medizinisch-Psychologischen Untersuchung (MPU) ist zwiespältig: Das ist

Mehr

Elektronischer Kontoauszug

Elektronischer Kontoauszug Elektronischer Kontoauszug Mit dem elektronischen Kontoauszug können Sie den papierhaften Auszug, den Sie bisher per Post oder an einem unserer Kontoauszugsdrucker erhalten, vollständig ersetzen. Ihre

Mehr

2.1 Sicherheits-Zonen... 3 2.2 ActiveX-Steuerelemente... 5 2.3 Skripting... 7 2.4 Verschiedenes... 8 3 Erweitert... 9

2.1 Sicherheits-Zonen... 3 2.2 ActiveX-Steuerelemente... 5 2.3 Skripting... 7 2.4 Verschiedenes... 8 3 Erweitert... 9 Einrichtungshinweise Microsoft Internet Explorer 9 Dieses Dokument beschreibt Einrichtungshinweise für den Microsoft Internet Explorer 9, die von myfactory International GmbH empfohlen werden, um myfactory

Mehr

Widerrufsbelehrung der Free-Linked GmbH. Stand: Juni 2014

Widerrufsbelehrung der Free-Linked GmbH. Stand: Juni 2014 Widerrufsbelehrung der Stand: Juni 2014 www.free-linked.de www.buddy-watcher.de Inhaltsverzeichnis Widerrufsbelehrung Verträge für die Lieferung von Waren... 3 Muster-Widerrufsformular... 5 2 Widerrufsbelehrung

Mehr

Änderung des IFRS 2 Anteilsbasierte Vergütung

Änderung des IFRS 2 Anteilsbasierte Vergütung Änderung IFRS 2 Änderung des IFRS 2 Anteilsbasierte Vergütung Anwendungsbereich Paragraph 2 wird geändert, Paragraph 3 gestrichen und Paragraph 3A angefügt. 2 Dieser IFRS ist bei der Bilanzierung aller

Mehr

7 Rechnen mit Polynomen

7 Rechnen mit Polynomen 7 Rechnen mit Polynomen Zu Polynomfunktionen Satz. Zwei Polynomfunktionen und f : R R, x a n x n + a n 1 x n 1 + a 1 x + a 0 g : R R, x b n x n + b n 1 x n 1 + b 1 x + b 0 sind genau dann gleich, wenn

Mehr

Deutliche Mehrheit der Bevölkerung für aktive Sterbehilfe

Deutliche Mehrheit der Bevölkerung für aktive Sterbehilfe Allensbacher Kurzbericht 6. Oktober 2014 Deutliche Mehrheit der Bevölkerung für aktive Sterbehilfe Zwei Drittel sind für die Erlaubnis aktiver Sterbehilfe, 60 Prozent für die Zulassung privater Sterbehilfe-Organsationen.

Mehr

Informationen zum neuen Studmail häufige Fragen

Informationen zum neuen Studmail häufige Fragen 1 Stand: 15.01.2013 Informationen zum neuen Studmail häufige Fragen (Dokument wird bei Bedarf laufend erweitert) Problem: Einloggen funktioniert, aber der Browser lädt dann ewig und zeigt nichts an Lösung:

Mehr

Konzentration auf das. Wesentliche.

Konzentration auf das. Wesentliche. Konzentration auf das Wesentliche. Machen Sie Ihre Kanzleiarbeit effizienter. 2 Sehr geehrte Leserin, sehr geehrter Leser, die Grundlagen Ihres Erfolges als Rechtsanwalt sind Ihre Expertise und Ihre Mandantenorientierung.

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In

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

Softwarelösungen: Versuch 4

Softwarelösungen: Versuch 4 Softwarelösungen: Versuch 4 Nichtstun in Schleife wird ersetzt durch zeitweilige Zurücknahme der Anforderung, um es anderen Prozessen zu erlauben, die Ressource zu belegen: /* Prozess 0 */ wiederhole flag[0]

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Mehrbenutzer-Synchronisation

Mehrbenutzer-Synchronisation Mehrbenutzer-Synchronisation Konflikt-Kategorien Serialisierung Historien Sperrungen Verklemmungen Optimistische Synchronisation Synchronisation in SQL Kapitel 11 1 Mehrbenutzersynchronisation Ausführung

Mehr