Skip to main content

BASE Model rozvoja databázy

Anonim

Relačné databázy sú navrhnuté so spoľahlivosťou a konzistenciou. Inžinieri, ktorí ich vyvinuli, sa zamerali na transakčný model, ktorý zabezpečuje zachovanie štyroch princípov modelu ACID. Avšak príchod nového neštruktúrovaného databázového modelu premenil ACID na hlavu. Model databázy NoSQL vyhýba vysoko štruktúrovanému relačnému modelu v prospech flexibilného prístupu k ukladaniu kľúčov a hodnôt. Tento neštruktúrovaný prístup k údajom si vyžaduje alternatívu k modelu ACID: model BASE.

Základné vlastnosti modelu ACID

Existujú štyri základné myšlienky modelu ACID:

  • Atomicita transakcií zabezpečuje, že každá databázová transakcia je jednotná jednotka, ktorá používa prístup "celkom alebo nič" k vykonaniu. Ak niektoré vyhlásenie v transakcii zlyhá, celá transakcia sa vráti späť.
  • Relačné databázy tiež zabezpečujú konzistencia každej transakcie s obchodnými pravidlami databázy. Ak by nejaký prvok atómovej transakcie narušil konzistenciu databázy, celá transakcia zlyhá.
  • Databázový stroj presadzuje izolácia medzi viacerými transakciami, ktoré sa vyskytnú v rovnakom čase alebo v jeho blízkosti. Každá transakcia prebieha buď pred alebo po každej ďalšej transakcii a pohľad na databázu, ktorú transakcia vidí na jej začiatku, je zmenená iba samotnou transakciou pred jej uzatvorením. Žiadna transakcia by nikdy nemala vidieť medziprodukt inej transakcie.
  • Konečný princíp ACID, trvanlivosť, zabezpečuje, že akonáhle sa transakcia zaväzuje k databáze, je natrvalo zachovaná pomocou záloh a protokolov transakcií. V prípade zlyhania môžu byť tieto mechanizmy použité na obnovenie viazaných transakcií.

    Základné zásady BASE

    NoSQL databázy na druhej strane zahŕňajú situácie, v ktorých je model ACID nadmerný, alebo by v skutočnosti bránili prevádzke databázy. Namiesto toho sa spoločnosť NoSQL spolieha na mäkší model známy vhodne ako model BASE. Tento model zohľadňuje flexibilitu ponúkanú spoločnosťou NoSQL a podobné prístupy k riadeniu a spracovávaniu neštruktúrovaných údajov. Základ sa skladá z troch zásad:

    • Základná dostupnosť, Databázový prístup NoSQL sa zameriava na dostupnosť údajov aj v prípade viacerých zlyhaní. Dosiahne to pomocou vysoko distribuovaného prístupu k riadeniu databázy. Namiesto zachovania jediného veľkého úložiska údajov a zamerania sa na toleranciu porúch tohto úložiska databázy NoSQL šíria dáta v mnohých systémoch ukladania dát s vysokým stupňom replikácie. V nepravdepodobnom prípade, že zlyhanie narušuje prístup k segmentu dát, nemusí to nutne viesť k úplnému výpadku databázy.
    • Soft stav, Databázy BASE opúšťajú požiadavky konzistencie modelu ACID celkom úplne. Jedným zo základných pojmov za základom je, že konzistencia údajov je problémom vývojára a databáza by sa s ním nemala riadiť.
    • Prípadná konzistencia, Jediná požiadavka, ktorú majú databázy NoSQL o konzistenciu, je vyžadovať, aby sa údaje v určitom čase v budúcnosti zhromažďovali do konzistentného stavu. Neposkytujú sa však žiadne záruky, kedy k tomu dôjde. To je úplný odklon od požiadavky bezprostrednej konzistencie ACID, ktorá zakazuje vykonanie transakcie, kým sa nedosiahne predchádzajúca transakcia a databáza konverguje do konzistentného stavu.

    Model BASE nie je vhodný pre každú situáciu, ale je určite flexibilnou alternatívou k modelu ACID pre databázy, ktoré nevyžadujú prísne dodržiavanie relatívneho modelu.