Wadliwe spoiwo

Częściowa utrata danych tym bardziej doskwiera, im później ten fakt odkryjemy.

Częściowa utrata danych tym bardziej doskwiera, im później ten fakt odkryjemy.

Możemy żyć w nieświadomości tego zdarzenia, rozgrzeszeni myślą o wykonywaniu systematycznych archiwizacji, które tylko powielają zaistniały błąd, oddalając nas coraz bardziej od szans na powrót do poprawnych wersji. Doświadczenie potwierdza, że podstępne zniekształcenie danych jest znacznie gorsze od manifestującej się w pełnej krasie jawnej utraty integralności, którą widać na pierwszy rzut oka.

Przypadki skrytej modyfikacji zasobów mogą mieć różną genezę. Najczęściej są spowodowane zamierzoną ingerencją w celu odniesienia konkretnych z tego tytułu korzyści przez osoby trzecie. Wykrywanie pochodnych tego skutków ma miejsce najczęściej przez przypadek, jeśli zmiany były wykonane subtelnie i w założeniu bynajmniej nie były przeprowadzane w celu pochwalenia się tym przed całym światem. Dotarcie do źródła tych zakłóceń bywa, jeśli nie niemożliwe, to bardzo trudne, co jest uzależnione od metod monitorowania systemu.

Inną zgoła genezę mają przypadki technicznych usterek generujących błędy o skutkach ukrytych i odwleczonych w czasie. W zasadzie niemożliwa jest lokalizacja źródła ich pochodzenia, a objawy często nie wskazują jednoznacznie na zamierzone czy przypadkowe działanie, chociaż są pochodną błędów ludzkich, a konkretnie twórców oprogramowania.

Właśnie niedawno zdarzyło mi się coś takiego i gdyby nie fakt, że miało to miejsce w zasobach sieciowo niedostępnych, zapewne próbowałbym dochodzić działania jakiegoś intruza. Używając jakiejś egzotycznej bazy danych na potrzeby ewidencjonowania pewnych informacji, z całym spokojem wpisywałem dane przez lat kilka, otrzymując tym samym dosyć spory zasób rekordów. Oczywiście, baza ta, w postaci plikowej, była sumiennie archiwizowana, jak też przechowywana na co najmniej dwóch różnych komputerach wydzielonych z sieci. Pewnego dnia, zupełnie przez przypadek zresztą, zajrzałem do zapisów niegdyś poczynionych i natrafiłem na ewidentną niespójność - konkretnie dwa rekordy logiczne okazały się pozbawione danych. Interfejs programowy nie dopuszczał z kolei do wpisania w nie czegokolwiek, tak więc ponowne wprowadzenie zawartości z dokumentów papierowych było niemożliwe. Z kolei usunięcie rekordów z poziomu programu powodowało taką zmianę przyporządkowania, że w ich miejsce pojawiały się - co było w całej mocy niepożądanym zjawiskiem - inne istniejące rekordy, dowodząc boleśnie utraty powiązań w bazie. Sytuacja prawie bez wyjścia, aczkolwiek po zastosowaniu dostępnych w otoczeniu programowym "sztuczek" udało mi się jednak tę integralność odzyskać. Byłem mocno skonfundowany faktem takiego zachowania się bazy, a stan ten pogłębił się jeszcze bardziej, gdy w pierwszym odruchu ratunkowym, sięgając po kolejne kopie archiwalne, zastawałem tam identyczną sytuację. Tragiczność takich zdarzeń jest bezwzględna, zwłaszcza gdy nie mamy rozeznania co właściwie w tym czasie z naszymi danymi się działo oraz jakie zmiany sami, zupełnie celowo, wprowadziliśmy.

Tego rodzaju koszmary mogą być udziałem każdego użytkownika komputera, dotkliwie utwierdzając go zarówno w braku pewności technicznej stosowanych urządzeń, jak i wiarygodności informacyjnej stosowanej technologii. Możliwe działania prewencyjne, jak codzienna weryfikacja "ręczna" wszystkich zapisów - dokonanych aktualnie i tych wstecznych - jest oczywistą paranoją. Jedynym rozsądnym wyjściem wydaje się stosowanie w pełni profesjonalnych motorów baz danych, oferujących kompletną kontrolę automatyczną integralności danych - tym bardziej godną polecenia, im bardziej gromadzone dane są dla nas istotne. A jeśli szkoda nam pieniędzy na tego rodzaju inwestycje, zapiski prowadźmy lepiej na papierze, co z pewnością nie jest wygodne i nowoczesne, ale pozwoli uniknąć rozczarowań i niewymiernych strat.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200