Zarówno poprawę dostępności i skalowalności
W wielu aplikacjach ważne jest, aby zapewnić większą dostępność i skalowalność odczytu wyższe; replikacja może służyć jako część klucz rozwiązanie zapewniające zarówno.W niektórych aplikacjach cel może być poprawić dostępność i skalowalność dzięki replikacja.Jeśli potrzebujesz tylko adres jednego z tych obszarów, należy rozważyć jedną z następujących scenariuszy:
Następujące diagramy ilustrują dwie aplikacje, które korzystają z przy użyciu replikacja, aby zwiększyć dostępność i skalowalność.W obu przypadkach trzy bazy danych na diagramach są równorzędne ze sobą: zawierają one identyczne schemat i dane.Zapis musi być podzielony działania dla tych baz danych: Jeśli baza danych zawiera katalog produktów, na przykład może skierować aktualizacje pierwszej bazy danych dla nazwy produktów, począwszy od A-I, drugą bazę danych dla J R i trzeciego bazy danych dla S-Z.Aktualizacje są następnie replikowane do innych baz danych.
Pierwszy diagram ilustruje konfiguracja, w którym każdej sieci Web i serwera aplikacji korzysta z danych z określonym serwerem buforowania.Odczytuje i aktualizuje przepływu danego użytkownika do serwera aplikacji, a następnie do określonego serwera buforowania.Ponieważ serwer aplikacji aktualizuje pamięć podręczną bezpośrednio, centralny źródło serwera nie jest wymagane.Aktualizacje w każdy pamięci podręcznej są propagowane do pamięci podręcznej.
Drugi diagram przedstawia trzy serwery geograficznie z danych przepływających między wszystkich trzech, umożliwiając każdy z serwerów do obsługi żądań odczytu i poprawy dostępności.
Adventure Works cykli przykład
Adventure Works Cycles to fikcyjna firma produkcyjna używana do demonstrowania koncepcji i scenariuszy dotyczących baz danych.Aby uzyskać więcej informacji, zobacz Przykładowe bazy danych AdventureWorks2008R2.
Adventure Works Cycles Liczba urzędów ma całym świecie, w tym lokalizacje w Los Angeles, Londyn i Tajpej.Informacje zamówienia odbiorcy są zbierane w każdym miejscu i następnie replikowane do innych lokalizacji.
Informacje o zamówieniu można odczytać z dowolnej lokalizacji; Dlatego jeśli office Londyn występuje ciężkich odczytu aktywności, wewnętrzne aplikacje można rozpowszechniać niektóre inne biura tą działalność.
Jeśli serwer jest niedziałający konserwacji w urzędzie Londyn na przykład zamówień mogą nadal być pobierane z innej lokalizacji i pracowników w Londynie pakietu office można kontynuować odczytu i wprowadzania danych.Po powrocie do trybu online serwer Londyn zmiany odebranych podczas niedziałający będzie propagowane do serwera w Londynie, tak, że będzie on do data.
Wspólne wymagania dotyczące tego scenariusza
Aplikacje, które zazwyczaj używają replikacja dla skalowalność i dostępność mają następujące wymagania, które rozwiązanie odpowiednie replikacja musi adres:
System powinien zezwalać na zmiany dokonane na każdym serwerze i zmiany zostały zreplikowane na innych serwerach.
System musi utrzymać spójności transakcyjnej.
System powinien mieć niski opóźnienie: aktualizacje na jednym serwerze musi osiągnąć szybko innych serwerów.
System powinien mieć wysoką przepustowość: powinien on obsługiwać replikacja dużej liczby transakcji.
Przetwarzanie replikacji powinny wymagać jak najmniejszym stopniu obciążały.
Typ replikacji do użycia w tym scenariuszu
Microsoft SQL Server uses a publishing industry metaphor to describe the components of the replication system.Składniki obejmować Wydawca, abonentów, publikacje i artykułów i subskrypcje.
W diagramach powyżej są wszystkie serwery pamięci podręcznej wydawców i abonentów.Wszystkie dane w zreplikowanej bazy danych na każdym serwerze znajduje się w publikacja, z każdej tabela danych artykuł (artykuły można także inne obiekty bazy danych, takie jak procedury przechowywane).Każdy serwer subskrybuje publikacji z innych serwerów, odbieranie schemat i dane w postaci subskrypcja.Więcej informacji na temat składników systemu, zobacz Replikacja, omówienie modelu publikowania.
SQL Serveroferuje różne typy replikacja dla wymagań różnych aplikacji: replikacja migawka, replikacja transakcyjna i scalania replikacji.W tym scenariuszu najlepiej jest implementowany z peer-to-peer replikacja transakcyjna, który jest dobrze przystosowanych do obsługi wymagania opisane w poprzedniej sekcji.Więcej informacji na temat typu peer-to-peer replikacja transakcyjna, zobacz Peer-to-Peer replikacji transakcyjnej.
Ostrzeżenie
Jeśli aplikacja wymaga modyfikacji w danym wierszu dokonywane w więcej niż jeden węzeł w tym samym czas, może wystąpić konflikt danych.W takim przypadek należy używać replikacja scalająca dobrze przystosowanych do konfliktów.Więcej informacji na temat replikacja scalająca, zobacz Omówienie replikacji scalania.
Zgodnie z projektem replikacja transakcyjna adresy podstawowe wymagania dla tego scenariusza:
Zmiany mogą być dokonywane na każdym serwerze
Spójności transakcyjnej
Krótki opóźnienie
Wysoka wydajność
Obciążenie minimalne
Opcja typu peer-to-peer replikacja transakcyjna umożliwia serwerom do publikowania i subskrybować tych samych danych.Wszystkie węzły w topologii peer-to-peer są równorzędne: Każdy węzeł publikuje i subskrybuje tego samego schematu i danych.Zmiany (wstawia, aktualizowanie i usuwanie) może być dokonane na wszystkich węzłach i następnie replikowane do innych węzłów.
Czynności do wykonania tego scenariusza
Wdrożenia tego scenariusza, najpierw należy utworzyć publikacje i subskrypcje i zainicjować subskrypcja.Aby uzyskać więcej informacji, zobacz:
SQL Server Management Studio: Jak Konfigurowanie Peer-to-Peer replikacji transakcyjnej (SQL Server Management Studio)
Replikacja Transact-SQL programowania: Jak Konfigurowanie Peer-to-Peer replikacji transakcyjnej (Programowanie replikacji Transact-SQL)
Po subskrypcje są inicjowane i jest przepływ danych między komputerami, może zajść potrzeba informacji na wspólnego zarządzania i monitorowania zadań można znaleźć w następujących tematach: