Rozproszyć informacje

Metody synchronizacji

Dwufazowe potwierdzanie (2PC) - technika zapewniająca zgodność transakcyjną dwóch lub więcej baz danych za pomocą realizacji rozproszonej transakcji w dwóch etapach. Najpierw odległe serwery są informowane o potrzebie zamknięcia transakcji i gdy potwierdzą gotowość, następuje jednoczesne zamknięcie transakcji na wszystkich serwerach. Wadą takiego rozwiązania jest fakt, iż żaden z nich nie może modyfikować danych w czasie, gdy trwa transakcja na innych serwerach. Poważnym ograniczeniem jest również to, że awaria jednego serwera anuluje transakcje we wszystkich pozostałych. Cechy te najczęściej dyskwalifikują dwufazowe potwierdzanie jako metodę replikacji danych.

Snapshot (kopia) - obraz głównej bazy danych (lub jej fragmentu) z danej chwili jest kopiowany do pozostałych baz danych. Następuje w tym momencie synchronizacja zawartości baz danych, natomiast nie jest zapewniona integralność danych w każdej chwili.

Synchronizowanie przez dziennik - do replikowanych baz danych są przesyłane operacje do wykonania na podstawie dziennika transakcyjnego głównej bazy danych. Replikacja może odbywać się automatycznie po zamknięciu transakcji lub zgodnie z ustalonymi kwantami czasowymi. Ten wariant synchronizacji replikowanych baz danych jest wygodny w przypadku funkcjonowania w systemie baz danych różnych standardów.

Rozwiązanie Sybase

Sybase oferuje możliwość realizacji transakcji asynchronicznych w złożonych systemach, wykorzystując specjalizowane narzędzia.

Replication Server - narzędzie wprowadzone w 1993 r., zaprojektowane tak, aby w elastyczny sposób zrealizować replikację między różnymi systemami a jednocześnie zminimalizować narzut techniczny (obciążenie sprzętu i sieci) i organizacyjny (replikacja niewidoczna dla użytkownika). Idea działania Replication Servera polega na powielaniu operacji wykonywanych na danych, nie na powielaniu danych w sposób bezpośredni. Architektura Replication Servera składa się z dwóch komponentów: Replication Agenta, który "podsłuchuje", co dzieje się w źródłowej bazie danych i "donosi" Replication Serverowi w zunifikowanej postaci. Replication Server jest odpowiedzialny za dostarczenie zmian do systemów docelowych. Mogą to być zarówno bazy danych, jak i kolejne Replication Servery. Możliwe jest w ten sposób zbudowanie hierarchii przesyłania informacji.

Replication Server obsługuje kolejkę do przechowywania informacji, które należy przekazać do systemów docelowych, a które nie są dostępne w danym czasie. Jest wyposażony we własny język skryptowy, umożliwiający określenie rodzaju danych (partycjonowanie poziome i pionowe) i postaci, w jakiej zostaną przesłane do systemu docelowego. Taka architektura umożliwia replikowanie z i do różnorodnych systemów. Sybase dostarcza agentów do baz danych, takich jak Oracle, DB2, Sybase, VSAM, IMS, Informix (III kwartał br.). Celem replikacji może być każda z wymienionych baz danych lub dowolna inna dostępna przez ODBC.

W Replication Serverze można w dowolny sposób kształtować postać operacji, jaka będzie wykonana na docelowej bazie danych. Na przykład wstawienie rekordu w źródłowej bazie danych może spowodować wstawienie dwóch rekordów w bazie docelowej i zmodyfikowanie trzeciego. Wywołanie procedury wbudowanej może spowodować wywołanie innej procedury na serwerze docelowym. Replication Server pracuje w tle baz danych, stąd z punktu widzenia użytkownika i programisty replikowane bazy danych nie różnią się niczym od baz nie replikowanych. Może również obsługiwać systemy typu warm standby, zapewniające ciągłość działania poprzez zwielokrotnienie sprzętu, oprogramowania bazodanowego i replikacji między systemami.

Innym narzędziem Sybase odpowiedzialnym za replikację jest SQLRemote. Działa ono podobnie jak Replication Server (korzysta z dziennika transakcji bazy danych), ale jest stosowane do innych celów. Narzędzie jest przeznaczone do komputerów przenośnych. Ma bardzo małe wymagania sprzętowe i nie wymaga od użytkownika specjalistycznej wiedzy. Jest idealnym rozwiązaniem dla handlowców, agentów ubezpieczeniowych, którzy pracują "w terenie" u klientów. Podłączają co pewien czas przenośny komputer do sieci korporacyjnej i uzgadniają dane między systemem w firmie a komputerem przenośnym. Do wymiany informacji wystarczy system pocztowy (SMTP, MAPI, VIM) lub dostęp do wspólnych plików. Narzędzie to jest dostarczane w komplecie z małymi serwerami baz danych Sybase (Adaptive Server Anywhere, Adaptive Server Enterprise for NT). Znajduje również zastosowanie w wymianie informacji między serwerami w rozproszonych organizacjach, które nie dysponują stałymi łączami.


TOP 200