Skip to main content

BASE Model rozwoju bazy danych

The Choice is Ours (2016) Official Full Version (Czerwiec 2026)

The Choice is Ours (2016) Official Full Version (Czerwiec 2026)
Anonim

Relacyjne bazy danych są zaprojektowane z myślą o niezawodności i spójności. Inżynierowie, którzy je opracowali, skupili się na modelu transakcyjnym, który zapewnia zachowanie czterech zasad modelu ACID. Jednak pojawienie się nowego, nieustrukturyzowanego modelu bazy danych powoduje zmianę ACID na lepsze. Model bazy danych NoSQL unika wysoce strukturalnego modelu relacyjnego na rzecz elastycznego podejścia do przechowywania kluczy / wartości. Takie nieustrukturyzowane podejście do danych wymaga alternatywy dla modelu ACID: modelu BASE.

Podstawowe założenia modelu ACID

Istnieją cztery podstawowe zasady modelu ACID:

  • The atomowość transakcji zapewnia, że ​​każda transakcja bazy danych jest pojedynczą jednostką, która przyjmuje podejście "wszystko albo nic" do wykonania. Jeśli jakakolwiek instrukcja w transakcji nie powiedzie się, cała transakcja zostanie wycofana.
  • Relacyjne bazy danych zapewniają również konsystencja każdej transakcji z regułami biznesowymi bazy danych. Jeśli jakikolwiek element transakcji atomowej zakłóciłby spójność bazy danych, cała transakcja zakończy się niepowodzeniem.
  • Mechanizm bazy danych wymusza izolacja między wieloma transakcjami występującymi w tym samym lub zbliżonym czasie. Każda transakcja ma miejsce przed lub po każdej innej transakcji, a widok bazy danych, który transakcja widzi na samym początku, jest zmieniany jedynie przez samą transakcję przed jej zawarciem. Żadna transakcja nie powinna nigdy widzieć produktu pośredniego innej transakcji.
  • Końcowa zasada ACID, trwałośćzapewnia, że ​​po zatwierdzeniu transakcji w bazie danych jest ona trwale chroniona za pomocą kopii zapasowych i dzienników transakcji. W przypadku awarii mechanizmy te mogą być użyte do przywrócenia zatwierdzonych transakcji.

    Podstawowe zasady BASE

    Bazy danych NoSQL, z drugiej strony, obejmują sytuacje, w których model ACID jest przesadny lub w rzeczywistości utrudniałby działanie bazy danych. Zamiast tego NoSQL opiera się na bardziej miękkim modelu znanym jako model BASE. Model ten uwzględnia elastyczność oferowaną przez NoSQL i podobne podejścia do zarządzania i zarządzania niestrukturalnymi danymi. BASE składa się z trzech zasad:

    • Podstawowa dostępność. Baza danych NoSQL koncentruje się na dostępności danych nawet w przypadku wielu awarii. Osiąga to poprzez zastosowanie wysoce rozproszonego podejścia do zarządzania bazami danych. Zamiast utrzymywania pojedynczego dużego magazynu danych i koncentrowania się na tolerancji błędu tego sklepu, bazy danych NoSQL rozprowadzają dane w wielu systemach pamięci masowych o wysokim stopniu replikacji. W mało prawdopodobnym przypadku, gdy niepowodzenie zakłóci dostęp do segmentu danych, niekoniecznie spowoduje to całkowite wyłączenie bazy danych.
    • Miękki stan. Bazy danych BASE całkowicie porzucają wymagania spójności modelu ACID. Jedną z podstawowych koncepcji BASE jest to, że spójność danych jest problemem programisty i nie powinna być obsługiwana przez bazę danych.
    • Ewentualna spójność. Jedynym wymogiem dotyczącym spójności baz danych NoSQL jest wymaganie, aby w pewnym momencie w przyszłości dane zbliżyły się do stanu spójnego. Nie ma jednak żadnych gwarancji, kiedy to nastąpi. Jest to całkowite odejście od wymaganego natychmiastowo wymogu ACID, który zabrania realizacji transakcji do momentu zakończenia wcześniejszej transakcji i konwergencji bazy danych do stanu zgodnego.

    Model BASE nie jest odpowiedni dla każdej sytuacji, ale z pewnością jest elastyczną alternatywą dla modelu ACID dla baz danych, które nie wymagają ścisłego przestrzegania modelu relacyjnego.