ACID: Atomic, Consistent, Isolated, & Durable (Polski)

wpis w: Articles | 0

nie sądzę, aby przesadą było stwierdzenie, że dane są dość ważne. Dane są szczególnie ważne dla nowoczesnych organizacji. W rzeczywistości The Economist posunął się tak daleko, że powiedział, że dane wyprzedziły ropę naftową jako najcenniejszy zasób na świecie, a to było w 2017 roku.

jednym z problemów z danymi są ogromne ich ilości, które muszą być przetwarzane na co dzień., W dzisiejszych czasach na całym świecie jest tak wiele danych, że musimy wymyślić nowy termin, aby wyrazić, ile jest danych: big data. Jasne, nie jest to najbardziej imponująco brzmiące określenie, ale fakt pozostaje.

z tymi wszystkimi wielkimi danymi, organizacje szukają sposobów, aby poprawić sposób zarządzania tym wszystkim z praktycznego, obliczeniowego i bezpieczeństwa punktu widzenia. Jak powiedział kiedyś Wujek Spidermana, Ben: „z wielką odpowiedzialnością przychodzi wielka odpowiedzialność.”Najlepszą metodą, jaką świat IT stworzył do poruszania się po złożoności zarządzania danymi, jest wykorzystanie baz danych.,

Co to jest baza danych?

bazy danych są uporządkowanymi zestawami danych, które są przechowywane w komputerach. Często bazy danych są przechowywane na całych farmach serwerów wypełnionych komputerami, które zostały stworzone specjalnie w celu obsługi tych danych i procesów niezbędnych do korzystania z nich.

nowoczesne bazy danych są tak złożonymi systemami, że do ich obsługi zostały zaprojektowane systemy zarządzania. Te systemy zarządzania bazami danych (DBMS) mają na celu optymalizację i Zarządzanie przechowywaniem i pobieraniem danych w bazach danych.,

jedną z głównych gwiazd prowadzących organizacje do skutecznego zarządzania bazami danych jest podejście ACID.

Co to jest kwas?

w kontekście informatyki ACID (Atomicity, consistence, Isolation, Durability) jest zbiorem zasad przewodnich, które mogą zapewnić niezawodne przetwarzanie transakcji w bazie danych. Transakcja bazy danych to każda operacja wykonywana w bazie danych, taka jak utworzenie nowego rekordu lub aktualizacja danych w jednym.

zmiany wprowadzone w bazie danych muszą być wykonywane z ostrożnością, aby upewnić się, że dane w niej nie zostaną uszkodzone., Zastosowanie właściwości kwasu do każdej modyfikacji bazy danych jest najlepszym sposobem na utrzymanie dokładności i niezawodności bazy danych. Spójrzmy na każdy składnik kwasu.

Atomicity

w kontekście baz danych atomicity oznacza, że albo zobowiązujesz się do realizacji całej transakcji, albo nie masz transakcji w ogóle., Zasadniczo transakcja atomic zapewnia, że każdy commit, który wykonasz, zakończy całą operację pomyślnie lub, w przypadku utraty połączenia w trakcie operacji, baza danych zostanie wycofana do stanu sprzed zainicjowania commitu.

jest to ważne, aby zapobiec awariom lub przestojom w tworzeniu przypadków, w których transakcja została częściowo zakończona do nieznanego ogólnego stanu. Jeśli podczas transakcji wystąpi awaria bez atomiczności, nie możesz dokładnie wiedzieć, jak daleko był proces przed przerwaniem transakcji., Korzystając z atomicity, masz pewność, że cała transakcja została pomyślnie zakończona lub żadna z nich nie została zakończona.

spójność

spójność odnosi się do zachowania ograniczeń integralności danych. Spójna transakcja nie będzie naruszać ograniczeń integralności nałożonych na dane przez reguły bazy danych. Egzekwowanie spójności zapewni, że jeśli baza danych wejdzie w stan niezgodny z prawem (jeśli dojdzie do naruszenia ograniczeń integralności danych), proces zostanie przerwany i zmiany zostaną cofnięte do poprzedniego stanu prawnego.,

innym sposobem zapewnienia spójności w bazie danych podczas każdej transakcji jest również egzekwowanie ograniczeń deklaratywnych umieszczonych w bazie danych. Przykładem ograniczenia deklaratywnego może być to, że wszystkie konta klientów muszą mieć dodatnie saldo. Jeśli transakcja doprowadziłaby rachunek klienta do ujemnego salda, transakcja ta zostałaby wycofana. Zapewnia to pomyślne zachowanie integralności danych lub ich całkowite anulowanie.,

Izolacja

izolowane transakcje są uważane za „serializowalne”, co oznacza, że każda transakcja odbywa się w odrębnej kolejności, bez żadnych transakcji występujących w tandemie. Każdy odczyt lub zapis wykonywany w bazie danych nie będzie miał wpływu na inne odczyty i zapisy oddzielnych transakcji występujących w tej samej bazie danych. Globalne zlecenie jest tworzone z każdą transakcją w kolejce w kolejce, aby zapewnić, że transakcje zostaną zakończone w całości przed rozpoczęciem innej.

nie oznacza to, że dwie operacje nie mogą się w ogóle zdarzyć w tym samym czasie., Wiele transakcji może wystąpić, o ile transakcje te nie mają możliwości wpływu na inne transakcje występujące w tym samym czasie. Może to mieć wpływ na szybkość transakcji, ponieważ może zmusić wiele operacji do oczekiwania, zanim będą mogły rozpocząć. Jednak ten kompromis jest wart dodatkowego bezpieczeństwa danych zapewnianego przez izolację.

izolacja może być osiągnięta poprzez zastosowanie przesuwnej skali permisywności, która przechodzi między tzw. transakcjami optymistycznymi a transakcjami pesymistycznymi., Optymistyczny schemat transakcji zakłada, że inne transakcje zakończą się bez dwukrotnego odczytu lub zapisu w tym samym miejscu. Dzięki optymistycznemu schematowi obie transakcje zostaną przerwane i powtórzone w przypadku transakcji uderzającej dwukrotnie w to samo miejsce.

pesymistyczny schemat transakcji zapewnia mniejszą swobodę i blokuje zasoby przy założeniu, że transakcje będą miały wpływ na inne. Skutkuje to mniejszą liczbą przerwań i powtórzeń, ale również oznacza, że transakcje są zmuszone częściej czekać w kolejce na swoją kolej w porównaniu z optymistycznym podejściem do transakcji., Znalezienie słodkiego miejsca między tymi dwoma ideałami jest często tam, gdzie znajduje się najlepszy ogólny wynik.

trwałość

ostatnim aspektem podejścia ACID do zarządzania bazami danych jest trwałość. Trwałość gwarantuje, że zmiany wprowadzone w bazie danych (transakcje), które zostały pomyślnie zrealizowane, przetrwają na stałe, nawet w przypadku awarii systemu. Zapewnia to, że dane w bazie danych nie zostaną uszkodzone przez przerwy w świadczeniu usług, awarie lub inne przypadki awarii., Osiąga się to poprzez użycie changelogów, do których odwołuje się, gdy bazy danych (lub części bazy danych) są ponownie uruchamiane.

gdy każdy aspekt podejścia ACID zostanie pomyślnie zestawiony, bazy danych są utrzymywane z najwyższą integralnością i bezpieczeństwem danych, aby zapewnić, że mogą nadal stanowić wartość dla organizacji. Baza danych z uszkodzonymi danymi może powodować kosztowne problemy ze względu na ogromny nacisk, jaki organizacje kładą na swoje dane zarówno podczas codziennych operacji, jak i Analiz Strategicznych.,

Korzystanie z właściwości kwasowych z bazą danych zapewni, że baza danych będzie nadal dostarczać cenne dane podczas operacji.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *