Czy replikacja migawki programu SQL Server całkowicie kopiuje dane za każdym razem, czy też powoduje deltę?

11

Patrzę na replikację migawki między dwoma serwerami. Oto co mam:

  • Baza danych 500 GB
  • ~ 500 MB nocnych ładunków BCP
  • ~ 50 MB codziennych transakcji

Pytałem innych DBA w firmie o typ replikacji, którego należy użyć. Powiedziano mi, żebym używał replikacji migawki. Jednak z tego, co rozumiem i czytałem, każdej nocy po załadowaniu migawka całkowicie kopiuje bazę danych do dystrybutora, a następnie całkowicie zastępuje drugi serwer.

Czy migawki działają w delcie, czy za każdym razem jest to kompletna kopia?

krata
źródło
2
Nie wygląda na to, że replikacja migawek jest tutaj najlepszym wyborem.
Thomas Stringer

Odpowiedzi:

8

Z książek online:

Replikacja migawki dystrybuuje dane dokładnie tak, jak pojawiają się w określonym momencie i nie monitoruje aktualizacji danych. Gdy zachodzi synchronizacja, cała migawka jest generowana i wysyłana do subskrybentów.

Samo użycie replikacji migawki jest najbardziej odpowiednie, gdy spełniony jest co najmniej jeden z następujących warunków:

  1. Dane zmieniają się rzadko.

  2. Dopuszczalne jest posiadanie przez pewien czas kopii danych, które są nieaktualne w stosunku do Wydawcy.

  3. Replikacja małych ilości danych.

  4. Duża ilość zmian zachodzi w krótkim czasie.

Replikacja migawki jest najbardziej odpowiednia, gdy zmiany danych są znaczne, ale rzadkie. Na przykład, jeśli organizacja sprzedaży prowadzi cennik produktu, a wszystkie ceny są aktualizowane w tym samym czasie raz lub dwa razy w roku, zaleca się replikację całej migawki danych po jej zmianie. Biorąc pod uwagę niektóre rodzaje danych, odpowiednie mogą być również częstsze migawki. Na przykład, jeśli relatywnie niewielka tabela jest aktualizowana przez Wydawcę w ciągu dnia, ale pewne opóźnienia są dopuszczalne, zmiany mogą być dostarczane w nocy jako migawka.

Replikacja migawki ma niższy ciągły narzut na Wydawcę niż replikacja transakcyjna, ponieważ zmiany przyrostowe nie są śledzone. Jednak jeśli replikowany zestaw danych jest bardzo duży, wygenerowanie i zastosowanie migawki będzie wymagało znacznych zasobów. Podczas oceny, czy należy zastosować replikację migawki, należy wziąć pod uwagę rozmiar całego zestawu danych i częstotliwość zmian danych.

Dlatego delty nie są generowane, cała baza danych jest migawkowana i replikowana.

Max Vernon
źródło