BASE деректер базасын жобалауда сүйіспеншілікпен ACID-ден бас тарту

Реляциялық дерекқорлар өздерінің сенімділігімен және өзектілігімен жасақталған. Оларды әзірлеген инженерлер ACID үлгісінің төрт қағидатының үнемі сақталатындығын қамтамасыз ететін транзакциялық модельге бағдарланған. Дегенмен, жаңа құрылымдық емес деректер базасының пайда болуы оның басында ACID айналды. NoSQL дерекқорының моделі икемді кілт / құндылықты сақтау әдісін қолдана отырып, жоғары құрылымдалған реляциялық модельден бас тартады. Деректерге жасалмаған бұл тәсіл ACID үлгісі үшін балама болып табылады: BASE моделі.

ACID үлгісінің негізгі қағидалары

ACID үлгісінің төрт негізгі қағидасы бар:

Транзакциялардың атомдықтығы әрбір деректер базасының мәмілесі орындалуға «барлық немесе ештеңе» тәсілін қабылдайтын біртұтас бірлік болып табылады. Егер мәміледе қандай да бір мәлімдеме орындалмаса, бүкіл транзакция кері қайтарылады.

Реляциялық дерекқорлар сонымен бірге дерекқордың бизнес ережелерімен әр мәміленің сәйкестігін қамтамасыз етеді. Егер атомдық транзакцияның кез-келген элементі дерекқордың үйлесімділігін бұзса, бүкіл транзакция сәтсіз аяқталады.

Дерекқордың қозғалтқышы сол уақытта немесе жақын уақытта бірнеше мәмілелер арасында оқшаулануды жүзеге асырады. Әрбір транзакция кез-келген транзакцияға дейін немесе одан кейін орын алады және транзакцияның басында көрінетін дерекқордың көрінісі оны жасағанға дейін ғана транзакциямен өзгертіледі. Ешқандай мәміле басқа транзакцияның аралық өнімін ешқашан көре алмайды.

Соңғы ACID қағидаты, ұзақ мерзімділік , транзакция дерекқорға берілгеннен кейін, ол сақтық көшірмелерді және транзакция журналдарын пайдалану арқылы үнемі сақталады. Ақаулық болмаған жағдайда, бұл механизмдер жасалған транзакцияларды қалпына келтіру үшін пайдаланылуы мүмкін.

BASE негізгі қағидалары

Екінші жағынан, NoSQL деректер қорлары, ACID үлгісі артықшылығын жоғалтқан немесе дерекқордың жұмысына кедергі келтіретін жағдайларды қамтиды. Оның орнына, NoSQL базалық үлгі ретінде танымал, жұмсақ модельге сүйенеді. Бұл модель NoSQL ұсынған икемділікті және құрылымдық емес деректерді басқару мен түзетудің ұқсас тәсілдерін қолданады. База үш қағидадан тұрады:

Негізгі қолжетімділік . NoSQL дерекқорының көзқарастары көптеген қателер болған жағдайда да деректердің қолжетімділігіне назар аударады. Бұл дерекқорды басқарудың жоғары бөлінген тәсілін қолдана алады. Бірыңғай үлкен деректер қоймасын сақтауға және осы дүкеннің ақауларға төзімділігіне назар аударудың орнына, NoSQL дерекқорлары деректерді жоғары дәрежедегі көптеген сақтау жүйелерінде таратады. Қиындықтар деректер сегментіне қатынауды бұзатын екіталай жағдайда бұл дерекқордың үзілісіне әкелуі міндетті емес.

Жұмсақ мемлекет . BASE дерекқорлары ACID үлгісінің сәйкестік талаптарын толығымен тастайды. BASE-дың негізгі ұғымдарының бірі - бұл деректердің дәйектілігі - әзірлеушінің мәселесі және деректер базасымен өңделмеуі.

Кездейсоқтық . NoSQL дерекқорларының бірізділікке қатысты талаптары болашақта бір кездері деректер дәйекті күйге жақындатылуын талап етеді. Дегенмен, бұл орын алуы туралы ешқандай кепілдеме жасалмайды. Бұл транзакцияның алдын ала жасалған мәміле аяқталғанға дейін және дерекқордың дәйекті күйге жеткенге дейін орындалуына тыйым салатын ACID-тің тікелей келісу талабынан толығымен кету.

BASE моделі әр жағдайға сәйкес келмейді, бірақ бұл, әрине, реляциялық модельді қатаң сақтауды қажет етпейтін дерекқорлар үшін ACID үлгісіне икемді балама болып табылады.