Kazalo:
Opredelitev - Kaj pomeni distribuirana transakcija?
Razdeljena transakcija je vrsta transakcije z dvema ali več angažiranimi omrežnimi gostitelji. Na splošno gostitelji zagotavljajo vire, upravljavec transakcij pa je odgovoren za razvoj in ravnanje s transakcijo. Kot vsaka druga transakcija mora tudi distribuirana transakcija vključevati vse štiri lastnosti ACID (atomska, konsistentnost, izoliranost, trajnost). Glede na naravo dela je atomičnost pomembna, da se zagotovi operativni sveženj (enota dela) ali skoraj nič.
Tehopedija razlaga razdeljeno transakcijo
Baze podatkov so standardni transakcijski viri, transakcije pa se navadno razširijo na manjše število takih podatkovnih baz. V takšnih primerih se lahko porazdeljena transakcija obravnava kot transakcija baze podatkov, ki jo je treba sinhronizirati med različnimi sodelujočimi bazami podatkov, razporejenimi med različnimi fizičnimi lokacijami. Lastnost izolacije predstavlja edinstveno oviro za transakcije z več bazami podatkov.Za porazdeljene transakcije ima vsak računalnik lokalni upravitelj transakcij. Če transakcija deluje na več računalnikih, upravljavci transakcij komunicirajo z različnimi drugimi upravljavci transakcij z nadrejenimi ali podrejenimi odnosi, ki so natančni samo za določeno transakcijo.
Upravljavci virov upravljajo z doslednimi ali odpornimi podatki in tesno sodelujejo s koordinatorjem porazdeljenih transakcij (DTC), da bi zagotovili izoliranost in atomsko uporabo aplikacije. V porazdeljenih transakcijah bi se moral vsak sodelujoči element pred transakcijo izvršiti spremembo, na primer posodobitev baze podatkov. DTC koordinira transakcijo za sodelujoče komponente in deluje kot upravljavec transakcij za vsak računalnik, ki naj bi upravljal transakcije. Pri razdeljevanju transakcij med različnimi računalniki upravitelj transakcij vsakemu podrejenemu upravljavcu transakcij dostavi, pripravi, založi in prekine sporočila.
V dvofaznem algoritmu zaveza DTC prva faza vključuje upravljavca transakcij, ki zahteva pripravo obveznosti za vsako vključeno komponento, medtem ko v drugi fazi, če so vse komponente pripravljene za uspešno zavezo, upravitelj transakcij sporoči odločitev, da se zaveže.