1 Microsoft Professional Developer Days 2004Replikacja SQL Server Robert Zyskowski Microsoft Professional Developer Days 2004
2 Plan prezentacji Rodzaje replikacji i ich zastosowanieZałożenia projektu Plan realizacji projektu Implementacja Podsumowanie
3 Rodzaje replikacji i ich zastosowanieReplikacja migawkowa Replikacja transakcyjna Replikacja scalająca Przykłady zastosowania replikacji
4 Replikacja migawkowa Dane statyczne Opóźniona aktualizacja danychNiewielkie ilości danych Brak stałego połączenia bazy wydawcy z bazami subskrybentów
5 Replikacja transakcyjnaNatychmiastowe przenoszenie zmian danych do subskrybentów Zachowanie kompletności transakcji Stałe połączenie bazy wydawcy z bazami subskrybentów Jednoczesna aktualizacja danych u wszystkich subskrybentów
6 Replikacja scalająca Modyfikacja danych przez wielu subskrybentów w różnym czasie Brak stałego połączenia subskrybentów z bazą wydawcy Synchronizacja danych – na żądanie lub wg ustalonego harmonogramu Autonomia poszczególnych subskrybentów i bazy wydawcy
7 Przykłady zastosowania replikacjiAplikacje do raportowania i wspomagania decyzji Wymiana danych bez utrzymywania stałych połączeń Internet – umieszczenie danych na wielu serwerach przyspiesza dostęp Sieć o słabych parametrach – większa autonomia użytkowników
8 Założenia projektu Infrastruktura systemu/Zasięg replikacjiDane do replikacji Wymagania jakościowe Wymagania ilościowe
9 Infrastruktura systemu/Zasięg replikacjiCentrum Przetwarzania Danych (CPD) Zapasowy Ośrodek Przetwarzania Danych (ZPD) Placówki: pracujące za pośrednictwem Internetu (ok. 4000) podłączone do sieci WAN przez stałe łącze lub telefonicznie (ok. 3000) o dużym natężeniu ruchu, posiadające bazy lokalne (ok.1200)
10 Dane do replikacji Dane rejestrowane na stanowiskach obsługi klientaDane parametryczne obowiązujące w ramach placówki Dane ogólnofirmowe rejestrowane w bazie centralnej Dane pomocnicze aplikacji - nie podlegają replikacji
11 Wymagania jakościowe Synchronizacja danych – do końca dnia pracy placówki Właściwie dobrana częstotliwość replikacji Definiowanie, administrowanie i monitorowanie replikacji – scentralizowane i uproszczone Przeźroczysty mechanizm replikacji
12 Wymagania ilościowe Średni rozmiar operacji biznesowej podlegającej replikacji – 1253 bajty Średni dzienny przyrost replikowanych danych: dla placówki z bazą lokalną – 6267 KB rejestrowanych w agencjach i oddziałach – 1251 KB z baz lokalnych do bazy centralnej – 7,5 GB z bazy centralnej do baz lokalnych – 2 GB
13 Plan realizacji projektuWybór rodzaju replikacji Odwzorowanie wymagań Zmiany w bazie danych i w aplikacji Warunki początkowe działania aplikacji
14 Wybór rodzaju replikacjiAgencje i oddziały modyfikacja danych przez wielu subskrybentów w różnym czasie Placówki z lokalną bazą danych brak stałego połączenia subskrybentów z bazą wydawcy autonomia poszczególnych subskrybentów i bazy wydawcy Wniosek: Wymagana jest replikacja scalająca.
15 Odwzorowanie wymagań Uruchamianie replikacji na żądanieOpóźnienie synchronizacji danych nie przekracza 50 minut CPD: 10 baz odpowiadających dyrekcjom okręgowym Uniezależnienie replikacji od logiki biznesowej aplikacji
16 Zmiany w bazie danych i w aplikacjiTablice podlegające replikacji Powiązanie placówki z nazwą serwera bazy danych Dodanie w lokalnych bazach danych funkcji zwracającej identyfikator placówki W aplikacji przy zapisie musi być określony identyfikator placówki, dla której rejestrowane są dane
17 Warunki początkowe działania aplikacjiPrzeniesienie danych inicjalnych z baz lokalnych do bazy centralnej Krok 1 – Przesłanie danych z istniejącej aplikacji do CPD Krok 2 – Konwersja danych i uruchomienie lokalnej infrastruktury Krok 3 – Przesłanie inicjalnej bazy danych do placówki i uruchomienie replikacji Podsumowanie: Uruchomienie systemu i replikacji trwa tylko 5 godzin
18 Implementacja Konfiguracja replikacji Definiowanie replikacjiDefiniowanie publikacji Definiowanie subskrybcji
19 Konfiguracja replikacjiKrok 1 – Utworzenie użytkownika systemowego z prawami administratora Krok 2 – Zmiana użytkownika usługi „SQL Server agent” Krok 3 – Dodanie użytkownika do użytkowników instancji SQL Server i nadanie mu uprawnień Krok 4 – Konfiguracja replikacji
20 DEMO Konfiguracja replikacji na serwerze wydawcy
21 Definiowanie replikacjiParametry publikacji Parametry subskrypcji Rodzaje subskrypcji: typu „Push” – aktywną stroną synchronizacji danych jest wydawca typu „Pull” – aktywną stroną synchronizacji danych jest subskrybent
22 DEMO Definiowanie publikacji przy użyciu skryptu DefPublikacja.sql
23 DEMO Definiowanie subskrypcji przy użyciu skryptów DefSubskrypcja_pub.sql i DefSubskrypcja_sub.sql
24 Podsumowanie Gdzie szukać pomocy? SQL Server Books OnlineLista dyskusyjna: microsoft.public.sqlserver.replication
25