Kluczowa różnica: tworzenie kopii lustrzanej bazy danych i replikacja bazy danych to dwie techniki wysokiej dostępności danych dla serwerów baz danych. Podczas replikacji obiekty danych i bazy danych są kopiowane i rozprowadzane z jednej bazy danych do drugiej. Zmniejsza obciążenie z oryginalnego serwera bazy danych, a wszystkie serwery, na których została skopiowana baza danych, są tak aktywne, jak serwer główny. Z drugiej strony, dublowanie bazy danych tworzy kopie bazy danych w dwóch różnych instancjach serwera (główny i mirror). Te kopie lustrzane działają jako kopie autonomiczne i nie zawsze są aktywne, tak jak w przypadku replikacji danych.
Zachowanie serwerów nadrzędnych i podrzędnych jest zasadniczo takie samo. Każda zmiana danych jest również odzwierciedlana na serwerach podrzędnych. Ta technika może być używana do kopiowania danych w więcej niż jednej bazie danych. Częściowa replikacja jest zaimplementowana tylko dla podzbioru tabel lub kolumn wierszy i dlatego nie może zasadniczo replikować całej bazy danych.
Dublowanie baz danych odnosi się do technik, dzięki którym tworzone i utrzymywane są nadmiarowe kopie bazy danych. Kopia lustrzana jest konsekwentnie synchronizowana z główną bazą danych. Ta technika pomaga w zapewnieniu nieprzerwanej dostępności danych, a także pozwala skrócić przestoje, które w przeciwnym razie mogą wystąpić z powodu uszkodzenia lub utraty danych. Podczas procesu up-gradation, dublowanie bazy danych zapewnia co najmniej jedną dostępną kopię do uzyskania dostępu.
Techniki replikacji i tworzenia kopii lustrzanych są również używane w kombinacjach, aby osiągnąć większą dostępność baz danych. Kluczową różnicą między replikacją a tworzeniem kopii lustrzanej jest to, że w przeciwieństwie do dublowania, w replikacji nie ma serwerów rezerwowych, ponieważ wszystkie serwery działają jako aktywne serwery. Dublowanie jest preferowane, gdy chce się zmniejszyć czas przestoju i chce mieć opłacalne rozwiązanie w kontekście współdzielonej pamięci, przełączników itp. Z drugiej strony replikacja jest na ogół preferowana w scenariuszu, w którym przetwarzanie rozproszone musi być wspierane przez udostępnianie obciążenie pracą aplikacji.
Porównanie między dublowaniem bazy danych a replikacją:
Database Mirroring | Replikacja | |
Definicja | Dublowanie bazy danych tworzy kopie bazy danych w dwóch różnych instancjach serwera. Kopie te działają jako kopie autonomiczne i nie zawsze są aktywne, tak jak w przypadku replikacji danych. | Podczas replikacji obiekty danych i bazy danych są kopiowane i rozprowadzane z jednej bazy danych do drugiej. Zmniejsza obciążenie z oryginalnego serwera bazy danych, a wszystkie serwery, na których została skopiowana baza danych, są tak aktywne, jak serwer główny. |
Zalety | Dublowanie baz danych pomaga zredukować planowane i nieplanowane przestoje w następujący sposób:
|
|
Wady (SQL Server 2008) |
|
|