Distribuerad samtidighetskontroll

Distribuerad samtidighetskontroll är samtidighetskontrollen av ett system distribuerat över ett datornätverk ( Bernstein et al. 1987 , Weikum och Vossen 2001) .

I databassystem och transaktionsbehandling ( transaktionshantering ) avser distribuerad samtidighetskontroll i första hand samtidighetskontroll av en distribuerad databas . Det hänvisar också till samtidighetskontrollen i en miljö med flera databaser (och andra objekt med flera transaktioner) (t.ex. federerad databas , grid computing och cloud computing- miljöer. Ett huvudmål för distribuerad samtidighetskontroll är distribuerad serialiseringsbarhet (eller global serialiserbarhet för multidatabassystem). ). Distribuerad samtidighetskontroll innebär speciella utmaningar utöver den centraliserade, främst på grund av kommunikation och datorlatens . Det kräver ofta speciella tekniker, som distribuerad låshanterare över snabba datornätverk med låg latens, som switchad struktur (t.ex. InfiniBand ). Beställning av engagemang ( eller commit ordering) är en allmän serialiserbarhetsteknik som uppnår distribuerad serialiserbarhet (och global serialiserbarhet i synnerhet) effektivt i stor skala, utan distribution av samtidighetskontrollinformation (t.ex. lokala prioritetsrelationer, lås, tidsstämplar eller biljetter) och därmed utan prestanda. straff som är typiska för andra serialiseringstekniker ( Raz 1992) .

Den vanligaste tekniken för distribuerad samtidighetskontroll är stark strikt tvåfaslåsning ( SS2PL , även kallad rigorousness ), som också är en vanlig centraliserad samtidighetskontrollteknik. SS2PL tillhandahåller både serialiserbarhet , strikthet och engagemangsbeställningsegenskaper . Strikthet, ett specialfall av återställningsbarhet, används för effektiv återhämtning från misslyckanden, och åtagandebeställning gör det möjligt att delta i en generell lösning för global serialisering. För storskalig distribution och komplexa transaktioner kan distribuerade låsningars typiska höga prestandastraff (på grund av förseningar, latens) räddas genom att använda atomic commitment-protokollet, som behövs i en distribuerad databas för (distribuerade) transaktioners atomicitet ( t.ex. två -phase commit , eller en enklare i ett tillförlitligt system), tillsammans med någon lokal åtagandebeställningsvariant (t.ex. lokal SS2PL ) istället för distribuerad låsning, för att uppnå global serialiserbarhet i hela systemet. Alla åtaganden som beställer teoretiska resultat är tillämpliga närhelst atomärt engagemang används över partitionerade, distribuerade återvinningsbara (transaktionella) data, inklusive automatisk distribuerad dödlägesupplösning . Sådan teknik kan också användas för en storskalig parallell databas , där en enda stor databas, som finns på många noder och använder en distribuerad låshanterare, ersätts med en (homogen) multidatabas, omfattande många relativt små databaser (löst definierade; process som stödjer transaktioner över partitionerade data och deltar i atomic commitment compliances), passar var och en i en enda nod och använder åtagandebeställning (t.ex. SS2PL, strikt CO) tillsammans med något lämpligt atomärt åtagandeprotokoll (utan att använda en distribuerad låshanterare).

Se även

  •   Philip A. Bernstein , Vassos Hadzilacos, Nathan Goodman (1987): Concurrency Control and Recovery in Database Systems , Addison Wesley Publishing Company, 1987, ISBN 0-201-10715-5
  •   Gerhard Weikum , Gottfried Vossen (2001): Transactional Information Systems , Elsevier, ISBN 1-55860-508-8
  • Yoav Raz (1992): "Principen för engagemangsordering, eller garanterar serialisering i en heterogen miljö av flera autonoma resursförvaltare som använder atomengagemang." Proceedings of the Eighteenth International Conference on Very Large Data Bases (VLDB), sid. 292-312, Vancouver, Kanada, augusti 1992. (även DEC-TR 841, Digital Equipment Corporation , november 1990)