Postupci upravljanja konzistentnošću i rasploživošću u repliciranim bazama podataka : doktorska disertacija - Zakošek, Slaven; Baranović, Mirta (Zagreb : S. Zakošek ; Fakultet elektrotehnike i računarstva, 2004)
Većina današnjih komercijalno raspoloživih sustava za upravljanje bazama podataka omogućuju tek dva osnovna oblika replikacije: asinkroni, u varijantama jednosmjerne i dvosmjerne replikacije, te sinkroni, u pravilu realiziran u formi ROWA protokola. U općem slučaju, primjena asinkronih protokola izaziva teško ispravljivu nekonzistentnost podataka, dok nedostupnost bilo kojeg čvora sustava u kojem je primijenjen ROWA protokol, u potpunosti onemogućuje izmjenu podataka, čime se bitno smanjuje raspoloživost podataka. Za replikaciju podataka kod kojih su raspoloživost i konzistentnost podjednako važni, ne postoje zadovoljavajuća rješenja. Na temelju dvoslojnog protokola replikacije oblikovan je novi protokol replikacije koji omogućuje prilagođavanje razine konzistentnosti i raspoloživosti podataka trenutnom stanju dostupnosti čvorova u sustavu. Oblikovan je i implementiran model proširenog rječnika podataka koji sadrži meta podatke o fragmentaciji, alokaciji, te kriterijima upravljanja konzistentnošću i raspoloživošću. Generator programskog kôda okidača i pohranjenih procedura, koji koristi podatke iz proširenog rječnika podataka, omogućuje usklađeno djelovanje novog protokola replikacije i ROWA protokola, te pruža mogućnost upravljanja konzistentnošću i raspoloživošću podataka u širokom rasponu od visoke razine raspoloživosti uz nisku konzistentnost, do potpune i istovremene konzistentnosti podataka u svim čvorovima sustava uz cijenu smanjene raspoloživosti podataka. Opisani model replikacije prikladan je za implementaciju pomoću mehanizama prisutnih u većini suvremenih komercijalnih sustava, zahtijeva tek minimalne izmjene aplikacijskog sloja, te je pokazao dobra svojstva pri decentralizaciji postojećih složenih centraliziranih informacijskih sustava.
Ključne riječi:
Distribuirane baze podataka, Replicirane baze podataka, Protokol replikacije, Konzistentnost podataka, Raspoloživost podataka, Upravljanje istodobnim pristupom podacima, Jedno-kopijska serijalizabilnost, SQL, Prenosivost
The majority of currently commercially available database management systems enable just two basic replication mechanisms: asynchronous, as an one-way or two-way replication, and synchronous, usually realised through ROWA protocol. Generally, application of the synchronous protocol causes a hardly repairable data inconsistencies. While using the ROWA protocol, unavailability of any node within the system completely impedes the execution of update transactions, which essentially reduces the data availability. There are no satisfactory replication mechanisms at hand if data availability and data consistency are similarly important. Based on a two-tier replication protocol, a new replication protocol has been designed in order to enable adaptation of the consistency level and data availability to a current availability of nodes within the system. An extended data dictionary has been designed and implemented, containing the fragmentation and allocation metadata and the criteria to control the consistency and availability of data. The generator of the triggers and stored procedures source code, using the extended data dictionary data, enables orchestrated action of the new replication mechanism together with the ROWA protocol. It offers the possibility to control the data consistency and availability in a wide range, from a high availability and low consistency levels to a complete and simultaneous data consistency in all the system nodes, which is paid by reduced data availability. The described replication model is suitable for implementation using mechanisms present in the majority of modern commercial systems, it requires only minimum changes in the application layer and it has demonstrated good properties while decentralising an existent complex information system.
Keywords:
Distributed databases, Replicated databases, Data replication protocol, Data consistency, Data availability, Concurrency control, One-copy serializability, SQL, Portability
Bibliografija str. 156-163.