L-AĊID Jipproteġi d-Dejta tad-Database tiegħek
Il-mudell AĊID tad-disinn tal-bażi tad-dejta huwa wieħed mill-kunċetti l-aktar antiki u importanti tat-teorija tad-database. Din tistabbilixxi erba 'għanijiet li kull sistema ta' ġestjoni ta 'database għandha taħdem biex tikseb: atomiċità, konsistenza, iżolament u durabilità. Database relazzjonali li tonqos milli tissodisfa kwalunkwe minn dawn l-erba 'għanijiet ma tistax titqies affidabbli. Database li tippossjedi dawn il-karatteristiċi hija kkunsidrata bħala konformi ma 'l-AĊID.
AĊIDU Definit
Ejja nieħdu mument biex neżaminaw kull waħda minn dawn il-karatteristiċi fid-dettall:
- L-atomiċità tiddikjara li l-modifiki tad-database għandhom isegwu regola "kollha jew xejn". Kull transazzjoni titqies bħala "atomika". Jekk parti waħda mit-tranżazzjoni tonqos, it-tranżazzjoni sħiħa tonqos. Huwa kritiku li s-sistema ta 'ġestjoni ta' database żżomm in-natura atomika tat-tranżazzjonijiet minkejja kwalunkwe DBMS, sistema operattiva jew nuqqas ta 'hardware.
- Il-konsistenza tiddikjara li dejta valida biss tinkiteb fid-database. Jekk, għal xi raġuni, titwettaq transazzjoni li tikser ir-regoli tal-konsistenza tad-database, it-tranżazzjoni kollha se titreġġa 'lura, u d-database terġa' tiġi stabbilita għal stat konsistenti ma 'dawk ir-regoli. Min-naħa l-oħra, jekk transazzjoni tesegwixxi b'suċċess, tieħu d-database minn stat wieħed li jkun konsistenti mar-regoli għal Stat ieħor li jkun konsistenti wkoll mar-regoli.
- L-iżolament jeħtieġ li transazzjonijiet multipli li jseħħu fl-istess ħin ma jaffettwawx l-eżekuzzjoni ta 'xulxin. Pereżempju, jekk Joe toħroġ tranżazzjoni kontra database fl-istess ħin li Mary joħroġ tranżazzjoni differenti, iż-żewġ tranżazzjonijiet għandhom joperaw fuq id-database b'mod iżolat. Id-database għandha jew twettaq it-tranżazzjoni sħiħa ta 'Joe qabel ma teżegwixxi Mary's, jew viċi versa. Dan jimpedixxi t-transazzjoni ta 'Joe milli taqra data intermedja prodotta bħala effett sekondarju ta' parti mit-tranżazzjoni ta 'Marija li eventwalment mhix se tkun impenjata għad-database. Innota li l-proprjetà ta 'iżolament ma tiżgurax liema transazzjoni se tesegwixxi l-ewwel - sempliċement li t-transazzjonijiet ma jinterferixxux ma' xulxin
- It-tul ta 'żmien jiżgura li kwalunkwe tranżazzjoni marbuta mad-database ma tintilifx. Id-durabilità hija żgurata permezz tal-użu ta 'backups tad-database u reġistri tat-tranżazzjonijiet li jiffaċilitaw ir-restawr ta' tranżazzjonijiet impenjati minkejja kwalunkwe falliment ta 'softwer jew hardware sussegwenti.
Kif jaħdem ACID fil-Prattika
L-amministraturi tad-database jużaw diversi strateġiji biex jinfurzaw l-AĊIDU.
Waħda użata biex tinforza l-atomiċità u d-durabbiltà hija l -qtugħ bil-miktub (WAL) li fih kwalunkwe dettall ta 'tranżazzjoni l-ewwel jinkiteb f'login li jinkludi kemm tirreferejja u undo information.This jiżgura li, minħabba falliment ta' database ta 'kwalunkwe tip, log u jqabblu l-kontenut tiegħu mal-istat tad-database.
Metodu ieħor użat biex jindirizza l-atomiċità u d-durabilità huwa t -tfassil ta 'dell li fih tinħoloq paġna ta' dell meta d-data trid tiġi mmodifikata. L-aġġornamenti tal-mistoqsija jinkitbu fuq il-paġna ta 'dell aktar milli fuq id-data reali fid-database. Id-database nnifisha hija modifikata biss meta l-edizzjoni hija kompluta.
Strateġija oħra tissejjaħ il - protokoll ta ' impenn f'żewġ fażijiet , speċjalment utli f'sistemi tad-database distribwiti. Dan il-protokoll jissepara talba biex tiġi modifikata d-data f'żewġ fażijiet: fażi ta 'talba għall-impenn u fażi ta' impenn. Fil-fażi tat-talba, id-DBMSs kollha fuq netwerk affettwat mit-tranżazzjoni għandhom jikkonfermaw li rċevewh u għandhom il-kapaċità li jwettqu t-tranżazzjoni. Ladarba jasal il-konferma mid-DBMSs rilevanti kollha, il-fażi ta 'impenn timla fejn id-data hija fil-fatt immodifikata.