Co to jest spójność danych?
Spójność danych to proces utrzymywania jednolitości informacji podczas ich przesyłania przez sieć i między różnymi aplikacjami na komputerze. Istnieją zazwyczaj trzy rodzaje spójności danych: spójność w czasie, spójność transakcji i spójność aplikacji. Zapewnienie, że sieć komputerowa obejmuje wszystkie trzy elementy spójności danych, jest najlepszym sposobem, aby zapewnić, że dane nie zostaną utracone lub uszkodzone podczas przemieszczania się po systemie. W przypadku braku spójności danych nie ma gwarancji, że jakakolwiek informacja w systemie jest jednolita w całej sieci komputerowej.
Spójność w czasie polega na zapewnieniu jednolitości wszystkich elementów systemu w określonym momencie. Zapobiega to utracie danych podczas awarii systemu, niewłaściwego zamykania systemu i innych problemów w sieci. Funkcjonuje, odwołując się do fragmentów danych w systemie za pomocą znaczników czasu i innych znaczników spójności, umożliwiając przywrócenie systemu do określonego momentu w czasie z każdym fragmentem danych w jego pierwotnym miejscu. Bez spójności czasowej nie ma gwarancji, że wszystkie informacje na komputerze ulegającym awarii zostaną przywrócone do stanu sprzed awarii.
Spójność transakcji to spójność fragmentu danych w ramach działającej transakcji w komputerze. Na przykład program bankowy może pierwotnie zażądać salda konta początkowego użytkownika końcowego. Od tego momentu cały program opiera się na pierwotnej wartości wagi, która pozostaje spójna w pamięci programu. Jeśli pierwotne saldo wynosi 50 000 USD (50 000 USD), a problem w systemie zmienia to na 75 000 USD, komputer nie ma spójności transakcji. Bez spójności transakcji nic wpisane do programu nie pozostaje wiarygodne.
Spójność aplikacji to nic innego jak spójność transakcji między programami. Na przykład, jeśli program bankowy komunikuje się z programem podatkowym na komputerze, spójność aplikacji oznacza, że informacje przesyłane między programami pozostaną w oryginalnym stanie. Bez spójności aplikacji pojawiają się tutaj te same problemy, co w przypadku wadliwej spójności transakcji: nie będzie sposobu, aby stwierdzić, czy wartość wprowadzona do systemu pozostaje z czasem poprawna.
Podstawową zaletą zapewnienia spójności danych jest utrzymanie integralności informacji przechowywanych na komputerze lub w sieci. Bez współpracy wszystkich trzech rodzajów spójności nie można stwierdzić, czy dane przechowywane dziś na komputerze będą takie same po awarii, instalacji lub innym ważnym zdarzeniu systemowym. Dlatego utrzymanie spójności jest jednym z głównych celów wszystkich programów komputerowych opartych na danych.