Kontrola istodobnosti ključna je aspekt upravljanja bazama podataka, osiguravajući da više transakcija može istovremeno pristupiti i modificirati podatke bez uzrokovati sukobe ili nedosljednosti podataka. Kao dobavljač Tibase, visoki sistem baza podataka o performansama, želio bih unijeti u mehanizme upravljanja istodobnom kontrolom zaposlenim u Tibasu.
1. Zaključavanje - temeljeno na konkurentnoj kontroli
1.1 Vrste brava
Tibase koristi razne brave za upravljanje istodobnim pristupom podacima. Dvije temeljne vrste brava dijele su brave (s - brave) i ekskluzivne brave (x - brave).
Zajednička brava koristi se kada transakcija treba samo da čita podatke. Više transakcija mogu držati zajedničke brave istovremeno na istom podatkovnom stavku. Na primjer, ako je nekoliko čitanja - samo transakcije žele pristupiti određenom evidenciju kupaca u bazi podataka, svi mogu steći zajedničke brave na tom zapisu. To omogućava efikasno istodobno čitanje podataka, jer se može pojaviti višestruke operacije čitanja bez blokiranja jedni drugima.
S druge strane, potrebna je ekskluzivna brava kada transakcija namjerava izmjeniti podatke. Samo jedna transakcija može u isto vrijeme držati ekskluzivnu bravu na podatkovnom stavku. Ako transakcija želi ažurirati adresu kupca, prvo mora steći ekskluzivnu bravu na odgovarajućem zapisu korisnika. Iako se isključiva brava ne može ni drugo transakcija ne može steći ili podijeljena ili ekskluzivna brava na toj stavci podataka, sprječavajući druge transakcije čitanje ili pisanje podataka dok se zaključavanje ne objavi.


1.2 Zaključana granularnost
Tibase podržava različite razine zaključavanja granularnosti, što se odnosi na veličinu stavke podataka na koju se može primijeniti brava na. Zaključana granularnost može se kretati od vrlo finog - zrnatog (kao što je jedan red u tabeli) do vrlo grube - zrnate (kao što je čitava baza podataka).
Fino - zrnato zaključavanje pruža veću istodobnost jer transakcije mogu zaključati samo određene podatke koje su im potrebne, omogućujući drugim transakcijama da pristupe nepovezanim podacima. Na primjer, ako transakcija mora samo ažurirati jedan red u velikom stolu, može steći nijansu - zaključavanje nivoa, a druge transakcije mogu još uvijek pristupiti drugim redovima u istoj tablici.
Grubo - zrnato zaključavanje, s druge strane, jednostavnije je za upravljanje, ali može dovesti do nižeg istodobnosti. Ako transakcija stječe tablicu - Nivo zaključavanje, nijedna druga transakcija ne može pristupiti nijednom dijelu te tablice dok se zaključavanje ne pušta. Tibase omogućava administratore baze podataka da odaberu odgovarajuću zrnulost zaključavanja na osnovu zahtjeva aplikacije.
1.3 Matrica kompatibilnosti zaključavanja
Da biste utvrdili da li se može odobriti zahtjev za zaključavanje, Tibase koristi matricu kompatibilnosti zaključavanja. Ova matrica definira pravila za kada više brava može CO - postojati na istoj stavci podataka. Slijedi pojednostavljena matrica kompatibilnosti zaključavanja:
| Zajednička brava | Ekskluzivna brava | |
|---|---|---|
| Zajednička brava | Da | Ne |
| Ekskluzivna brava | Ne | Ne |
Ova matrica ukazuje da se više dijeljenih brava može održati na istoj stavci podataka, ali ekskluzivna brava ne može imati CO - postoji ni sa zajedničkom ili ekskluzivnom bravom. Kada transakcija zahtijeva zaključavanje, Tibase provjerava trenutni status zaključavanja stavke podataka pomoću ove matrice. Ako je zatražena brava kompatibilna s postojećim bravama, zahtjev je odobren; Inače, transakcija mora pričekati dok se ne budu ispunjene sukobljene brave.
2. Timestamp - temeljen na konkurentnost
2.1 Zadatak za vremenski okvir
Pored zaključavanja - temeljenog na kontrolu istodobnosti, Tibase takođe podržava vremensku kontrolu sa vremenske oznake. Svaka transakcija dodijeljena je jedinstvena vremenska oznaka kada uđe u sistem. Timestamp predstavlja narudžbu u kojem se pokreću transakcije.
Timestamps se mogu koristiti za određivanje redoslijeda izvršenja transakcija i za sprečavanje sukoba. Na primjer, ako pokušavaju dva transakcije pristupiti istoj stavci podataka, transakcija s ranijom vremenskom oznakom smatra se većom prioritetom.
2.2 Protokoli za naručivanje vremenske oznake
Tibase koristi protokole za naručivanje vremenskih oznaka kako bi se osigurala serializabilnost transakcija. Jedan takav protokol je osnovni protokol za naručivanje vremenske oznake. U ovom protokolu, kada transakcija pokušava pročitati ili pisati stavku podataka, sustav provjerava vremenske oznake transakcije i posljednje - pismene vremenske oznake stavke podataka.
Ako transakcija s kasnijom vremenom pokušava napisati stavku podataka koja je napisala transakcija s ranijom vremenom, kasnija je transakcija prekinuta i ponovno pokrenuta s novom vremenskom oznakom. Slično tome, ako transakcija s kasnijim vremenskom oznakom pokušava pročitati stavku podataka koja će biti napisana transakcijom s ranijom vremenskom oznakom, kasnija transakcija može se i prekinuti.
3. Višestruka kontrola istodobnosti (MVCC)
3.1 Višestruke verzije podataka
Tibase implementira višestruku kontrolu istodobne kontrole (MVCC), što omogućava više verzija iste stavke podataka u Co - postoje u bazi podataka. Kada transakcija ažurira stavku podataka, umjesto prepisivanja postojećih podataka, stvara se nova verzija podataka.
Svaka verzija podataka povezana je s vremenskom oznakom, koja ukazuje na vrijeme kada je verzija stvorena. To omogućava transakcijama da pročitaju verziju podataka koji su bili valjani u trenutku kada je započela transakcija, a da ne bude blokirana istodobnim operacijama pisanja.
3.2 Pročitajte - počinjeno i ponovljivo - Nivoi čitanja izolacije
MVCC u Tibasu podržava različite nivoe izolacije, poput čitanja - počinjene i ponovljene - čitanje.
U pročitanoj razini izlaznog izolacije transakcija čita najnoviju izvrsnu verziju podataka. To znači da ako je još jedna transakcija počinila ažuriranje stavke podataka, transakcija čitanja će vidjeti ažuriranu verziju.
Na ponavljanju - pročitajte nivo izolacije, transakcija čita verziju podataka koji su valjali na početku transakcije. To osigurava da ako transakcija više puta pročita podatke o podacima tokom svog izvršenja, uvijek će vidjeti istu verziju podataka, čak i ako su druge transakcije u međuvremenu mijenjale podatke.
4. Uticaj na zubni implantat - povezane aplikacije
U zubnom implantatu - povezane aplikacije, gdje se Tibase može koristiti za upravljanje zapisima o pacijentima, inventaruZubi laboratorijski model analogni,Privremeni upor, iLjekovita kapa, Mehanizmi kontrole istodobnosti u Tibasu igraju vitalnu ulogu.
Na primjer, više stomatološke ordinacije mogu pristupiti istoj bazi podataka za provjeru dostupnosti deloloških implantata. Zaključavanje - temeljena na konkurentnoj kontroli osigurava da se jedna klinika rezervira aPrivremeni upor, Ostale klinike ne mogu istovremeno rezervirati istu stavku, sprječavajući preko - rezervacija.
Timestamp - Konkurentski nadzor može se koristiti za osiguravanje da se zapisi o pacijentu ažuriraju u ispravnom redoslijedu. Ako dvije klinike pokušavaju istovremeno ažurirati povijest liječenja pacijenta, sustav može koristiti vremenske oznake kako bi se utvrdilo na koje se ažuriranje prvo treba primijeniti.
MVCC omogućava klinike da pregledaju pacijentove zapise bez blokiranja istodobnim ažuriranjima. Na primjer, stomatolog može pročitati zapisnik pacijenta, dok još jedan član osoblja ažurira zapisnik, jer će stomatolog vidjeti verziju zapisa koji je važio na početku njihove operacije čitanja.
. Zaključak i poziv na akciju
Zaključno, Tibase nudi sveobuhvatan skup mehanizama kontrole istodobne kontrole, uključujući kontrolu zasnovane na zaključavanju, Timestamp-u - zasnovanu kontrolu i MVCC. Ovi mehanizmi rade zajedno kako bi se osigurala visoka istodobnost, dosljednost podataka i serializabilnost transakcija.
Bilo da se nalazite u industriji zubnih implantata ili bilo koje drugo polje koje zahtijeva efikasnu upravu baze podataka, Tibase može pružiti pouzdanost i performanse koje su vam potrebne. Ako ste zainteresirani za učenje o tome kako mehanizmi kontrole Tibase-a mogu imati koristi od vašeg poslovanja, ili ako ste spremni započeti diskusiju o nabavci, slobodno osigurajte. Ovdje smo da vam pomognemo da iskoristite najviše svojih sustava baze podataka.
Reference
- Datum, CJ (2004). Uvod u sisteme baze podataka. Addison - Wesley.
- Bernstein, PA, Hadžilacos, V., & Goodman, N. (1987). Kontrolna kontrola i oporavak u sistemima baze podataka. Addison - Wesley.
