Atsisakymas Rūgštis BASE naudai duomenų bazių inžinerijoje

Reliacinės duomenų bazės yra sukurtos patikimumo ir nuoseklumo pagrindu. Jos sukūrę inžinieriai daugiausia dėmesio skyrė sandorio modeliui, kuris užtikrina, kad visais atvejais bus išlaikyti keturi ACID modelio principai. Tačiau naujo nestruktūruoto duomenų bazės modelio atsiradimas yra ACID. NoSQL duomenų bazės modelis vengia labai struktūrizuoto reliacinio modelio naudai lankstaus rakto / vertės parduotuvės požiūriu. Šis nestruktūrinis požiūris į duomenis reikalauja alternatyva ACID modeliui: BASE modeliui.

Pagrindiniai ACID modelio tipai

Yra keturi pagrindiniai ACID modelio principai:

Operacijų atomiškumas užtikrina, kad kiekviena duomenų bazės operacija yra atskiras vienetas, kuris vykdo "viską ar nieko". Jei bet kuriame sandorio ataskaitoje nepavyksta, visas sandoris grąžinamas.

Reliacinės duomenų bazės taip pat užtikrina kiekvieno sandorio nuoseklumą su duomenų bazės verslo taisyklėmis. Jei bet koks atominės operacijos elementas sutrikdytų duomenų bazės nuoseklumą, visas sandoris nepavyksta.

Duomenų bazės variklis užtikrina atskirtį tarp kelių sandorių, įvykusių artimiausiu metu. Kiekvienas sandoris įvyksta prieš arba po kiekvieno kito sandorio ir duomenų bazės vaizdas, kurio sandoris mato pradžioje, yra tik pakeistas pačiu sandoriu prieš jo sudarymą. Joks sandoris niekada neturėtų matyti kito sandorio tarpinio produkto.

Galutinis ACID principas, ilgaamžiškumas užtikrina, kad kai sandoris bus priskirtas duomenų bazei, jis visam laikui bus išsaugotas naudojant atsargines kopijas ir operacijų žurnalus. Gedimo atveju šie mechanizmai gali būti naudojami atkurtiems įvykdytiems sandoriams.

BASE pagrindiniai principai

Kita vertus, "NoSQL" duomenų bazės apima situacijas, kai ACID modelis yra pernelyg didelis arba iš tiesų trukdo duomenų bazės veikimui. Vietoj to, NoSQL remiasi minkštesniu modeliu, tinkamu būdu žinomu kaip BASE modelis. Šis modelis atitinka "NoSQL" pasiūlytą lankstumą ir panašius požiūrius į nestruktūrinių duomenų tvarkymą ir apdorojimą. Bazė susideda iš trijų principų:

Pagrindinė prieinamumas . "NoSQL" duomenų bazės metodas daugiausia dėmesio skiria duomenų prieinamumui netgi esant daugybei nesėkmių. Tai pasiekiama naudojant itin platų požiūrį į duomenų bazių valdymą. Užuot išlaikę vieną didelę duomenų saugyklą ir sutelkiant dėmesį į šios parduotuvės gedimų toleranciją, "NoSQL" duomenų bazės išsklaidė duomenis daugelyje didelių replikavimo sistemų. Mažai tikėtina, kad nesugebėjimas sutrikdyti prieigą prie duomenų segmento, tai nebūtinai sukels visišką duomenų bazės triktį.

"Soft State" . BASE duomenų bazės beveik visiškai atsisako ACID modelio nuoseklumo reikalavimų. Viena iš BASE pagrindinių idėjų yra ta, kad duomenų nuoseklumas yra kūrėjo problema, todėl duomenų bazė neturėtų būti tvarkoma.

Galimas nuoseklumas . Vienintelis reikalavimas, kad NoSQL duomenų bazės turi nuoseklumą, reikalauja, kad ateityje duomenys sutaps į nuoseklią būseną. Tačiau nėra garantijų apie tai, kada tai įvyks. Tai yra visiškas nukrypimas nuo nedelsiant reikalaujamo ACID nuoseklumo reikalavimo, pagal kurį draudžiama vykdyti sandorį, kol bus atliktas ankstesnis sandoris, o duomenų bazė yra suderinta su nuoseklia būsena.

BASE modelis nėra tinkamas kiekvienai situacijai, tačiau tai yra lanksti alternatyva ACID modeliui duomenų bazėms, kurioms nereikia griežtai laikytis reliacinio modelio.