Datu bāzes izstrādes BĀZES modelis

Satura rādītājs:

Datu bāzes izstrādes BĀZES modelis
Datu bāzes izstrādes BĀZES modelis
Anonim

Relāciju datubāzes ir izstrādātas ar uzticamību un konsekvenci to pamatā. Inženieri, kas tos izstrādāja, koncentrējās uz darījumu modeli, kas nodrošina, ka vienmēr tiek saglabāti četri ACID modeļa principi. Tomēr jauna nestrukturētas datu bāzes modeļa parādīšanās pagriež ACID uz galvas. NoSQL datu bāzes modelis izvairās no augsti strukturēta relāciju modeļa par labu elastīgai atslēgu/vērtību krātuves pieejai. Šī nestrukturētā pieeja datiem prasa alternatīvu ACID modelim: BASE modeli.

Image
Image

ACID modeļa pamatprincipi

Ir četri ACID modeļa pamatprincipi:

  • Transakciju atomicity nodrošina, ka katrs datu bāzes darījums ir viena vienība, kuras izpildei tiek izmantota "visu vai neko" pieeja. Ja kāds darījuma paziņojums neizdodas, viss darījums tiek atsaukts.
  • Relāciju datu bāzes nodrošina arī katra darījuma konsekvenci ar datu bāzes biznesa noteikumiem. Ja kāds atomāra darījuma elements traucētu datu bāzes konsekvenci, viss darījums neizdodas.
  • Datu bāzes programma nodrošina izolāciju starp vairākiem darījumiem, kas notiek vienlaikus vai gandrīz vienā un tajā pašā laikā. Katrs darījums notiek pirms vai pēc katra cita darījuma, un datubāzes skatu, ko darījums redz tā sākumā, maina tikai pats darījums pirms tā noslēgšanas. Nevienam darījumam nekad nevajadzētu redzēt cita darījuma starpproduktu.
  • Pēdējais ACID princips, izturība, nodrošina, ka, tiklīdz darījums ir iekļauts datu bāzē, tas tiek pastāvīgi saglabāts, izmantojot dublējumus un darījumu žurnālus. Neveiksmes gadījumā šos mehānismus var izmantot, lai atjaunotu veiktos darījumus.

BASE pamatprincipi

NoSQL datubāzes, no otras puses, aptver situācijas, kad ACID modelis ir pārspīlēts vai faktiski kavētu datu bāzes darbību. Tā vietā NoSQL paļaujas uz mīkstāku modeli, kas attiecīgi pazīstams kā BASE modelis. Šis modelis nodrošina NoSQL piedāvāto elastību un līdzīgas pieejas nestrukturētu datu pārvaldībai un pārvaldīšanai. BĀZE sastāv no trim principiem:

  • Pamata pieejamība NoSQL datu bāzes pieeja koncentrējas uz datu pieejamību pat vairāku kļūmju klātbūtnē. Tas tiek panākts, izmantojot ļoti izplatītu pieeju datu bāzes pārvaldībai. Tā vietā, lai uzturētu vienu lielu datu krātuvi un koncentrētos uz šī krātuves kļūdu toleranci, NoSQL datu bāzes izplata datus daudzās uzglabāšanas sistēmās ar augstu replikācijas pakāpi. Maz ticamā gadījumā, ja kļūme traucē piekļuvi datu segmentam, tas ne vienmēr izraisa pilnīgu datu bāzes darbības pārtraukumu.
  • Soft State. BASE datu bāzes gandrīz pilnībā atsakās no ACID modeļa konsekvences prasībām. Viens no BASE pamatjēdzieniem ir tāds, ka datu konsekvence ir izstrādātāja problēma, un to nedrīkst apstrādāt datu bāze.
  • Eventual Consistency Vienīgā prasība, kas NoSQL datu bāzēm ir attiecībā uz konsekvenci, ir prasība, lai kādā brīdī nākotnē dati saplūstu konsekventā stāvoklī. Tomēr netiek sniegtas garantijas par to, kad tas notiks. Tā ir pilnīga atkāpe no ACID tūlītējās konsekvences prasības, kas aizliedz transakciju izpildīt, kamēr iepriekšējais darījums nav pabeigts un datu bāze ir konverģēta uz konsekventu stāvokli.

Pakalpojumā BASE pamata pieejamība var nozīmēt, ka jūs pat nekontrolējat datu avotus. Piemēram, daļēji varat izveidot saites uz publiskām datu kopām.

Relatīvi lietošanas gadījumi

BASE modelis nav piemērots katrai situācijai, taču tas noteikti ir elastīga alternatīva ACID modelim datu bāzēm, kurām nav nepieciešama stingra relāciju modeļa ievērošana.

Optimālie lietošanas gadījumi datu bāzēm, kurās izmanto ACID, ir atkarīgi no ļoti strukturētiem datiem ar paredzamām ieejām un izvadēm. Tādējādi cilvēkresursu datu bāzes, mazumtirdzniecības datu bāzes un elektroniskie medicīniskie ieraksti gūst labumu no spēcīgās iekšējās konsekvences pārbaudes, ko piedāvā ACID.

Tomēr BASE risinājumi ir labāki neskaidriem priekšmetiem, piemēram, noskaņojuma analīzei. Piemēram, BASE strukturēts projekts varētu skenēt Twitter plūsmu, meklējot vārdus, kas norāda uz emocijām, pamatojoties uz konkrētu tēmturi. Twitter plūsma nav labi strukturēta vai lokāli izveidota, taču datu straume piedāvā informāciju, kas ir ieprogrammēta vaicājumos, pat ja šo datu apjoms un raksturs nav skaidri ierobežots.

Ieteicams: