Microsoft Sync Framework

Microsoft Sync Framework jest platformą pełną synchronizację, która umożliwia współpracę i dostęp w trybie offline dla aplikacji, usług i urządzeń. Zawiera on technologie i narzędzia umożliwiające mobilnych, udostępnianie i przełączanie danych trybu offline.Za pomocą Sync Framework, deweloperzy mogą tworzyć ekosystemy synchronizacji, które integrują dowolnej aplikacji z wszelkich danych z dowolnego magazynu, który używa protokół za pośrednictwem dowolnej sieci.

Sync Framework składa się z następującymi technologiami, pierwsze trzy z nich można zainstalować za pomocą SQL Server 2008:

  • Sync Services for ADO.NET można użyć do synchronizacji bazy danych do trybu offline i wspomagające współpracę scenariuszy.

  • Sync Framework podstawowe składniki mogą być używane przez Sync Services for ADO.NET Aby zsynchronizować bazy danych i mogą również służyć do tworzenia dostawców synchronizacji dla innych typów danych.

  • Usługi synchronizacji dla FeedSync mogą być używane do synchronizowania danych RSS i Atom źródła danych w magazynie lokalnym.

  • Usługi synchronizacji dla systemów plików mogą służyć do synchronizacji plików i folderów w systemie plików.

  • usługa przesyłania metadane w pamięci masowej można używać do przechowywania metadane synchronizacji SQL Server Compact 3.5.

Pozostałe ten temat zawiera omówienie Sync Services for ADO.NET i zawiera porównanie do innej Microsoft technologie. Aby z pełną dokumentacją Sync Services for ADO.NET oraz Sync Framework, zobacz temat Centrum deweloperów programu Microsoft Sync Framework.

Instalowanie programu Microsoft Sync Framework i synchronizacji dla ADO.NET

Sync Framework można zainstalować za pomocą Kreatora instalacji programu SQL Server 2008 lub za pomocą opcji wiersza polecenia instalacji.Aby zainstalować Sync Framework za pomocą kreatora, na Wybieranie funkcji Wybierz opcję stronieProgram Microsoft Sync Framework.Aby uzyskać więcej informacji dotyczących sposobu instalowania SQL Server i składniki pokrewne, zobacz Overview of SQL Server Installation.

Omówienie i scenariusze synchronizacji

Zdolność do obsługi pracowników mobilnych i zdalnych staje się bardziej istotne dla organizacji, co dzień.Jest bardzo ważne dla organizacji upewnić się, że pracownicy mają dostęp do te same informacje, które mają, gdy są one w biurze.W większości przypadków te użytkownicy będą mieli komputera przenośnego, pulpitem pakietu office, smartphone lub urządzenie PDA.Z tych urządzeń użytkownicy często mogą uzyskać dostęp do danych bezpośrednio przy użyciu połączenia sieci VPN lub innej metoda bezpośrednie połączenie z siecią w głównej siedzibie firmy.Dla większości zdalnych użytkowników to rozwiązanie jest mniejsza niż zadowalające ze względu na wady głównych w następujących obszarach:

  • Wymagania sieciowe

    Aby umożliwić użytkownikom dostęp do informacji, zdalne urządzenie musi mieć stała połączenie z siecią firmową, w czasie, gdy uzyskuje dostęp do danych.Dla niektórych pracowników, takich jak te, pracujący w Główny to może być problem.Dla innych osób takich jak sprzedawców, którzy są stale w podróży, może to być trudniejsze.Na przykład jeśli sprzedawca jest strony klienta, nie może uzyskać dostępu do magazynu danych ponieważ nie ma połączenia z siecią, Sprzedawca skutecznie nie zadanie.

  • Szybkości dostępu do danych

    Użytkownicy mogą szybkich sieci, które umożliwiają szybki dostęp do informacji w środowisku firmowym typowe klient/serwer.Jednak pracowników zdalnych zazwyczaj są połączone za wolne, zawodne sieci przewodowe lub bezprzewodowe.Dzięki rozwiązaniu typowych każdy fragment danych, które użytkownik chce muszą być pobrane w każdym razem, gdy jest wymagane, ponieważ nie ma możliwości utrzymują danych na urządzeniu.Na przykład jeśli sprzedawcy, należy pobrać jego listy produktów, za każdym razem otwiera on jego aplikacji, opóźnienie czas wymaganego do wypełniania aplikacji informacje mogą być frustrujące.

  • Pojedynczy punkt awarii

    Z tego rodzaju rozwiązanie wszyscy użytkownicy opierają się na jednym serwerze.Jeśli ze względu na serwerze planowane przestoje lub awariach serwera bazy danych nie jest dostępna, wszystkim pracownikom zdalnym zostanie odłączona od swoich danych.

  • Skalowalność serwera

    Więcej osób pracuje zdalnie, będzie miała wpływ wydajność serwerów firmy i więcej sprzętu może mieć do dodania.

Od czasu do czasu podłączonych aplikacji

Alternatywę dla rozwiązania opisane w poprzedniej sekcji jest wdrożenie aplikacji od czasu do czasu połączenia.Od czasu do czasu połączonych aplikacji umożliwia zdalny pracownika do uzyskania dostępu do danych w dalszym ciągu.Jednak inaczej niż w poprzednim scenariuszu, w którym użytkownik ma dostęp do bazy danych firmy bezpośrednio, aby uzyskać informacje użytkownik chciał, informacje, które chce jest przechowywany lokalnie na urządzeniu.Aby wypełnić lokalnej bazy danych, od czasu do czasu połączenia zazwyczaj używa aplikacja synchronizacji danych.

Synchronizacja danych składa się z możliwości okresowo zostały informacje przechowywane w baza danych klient (takich jak SQL Server Compact 3.5) i (takie jak zsynchronizować zmiany z bazą danych serwera SQL Server). Rozwiązanie oparte na synchronizację oferuje tę zaletę, że użytkownik nie ma już mieć stała połączenie, uzyskanie dostępu do informacji w sieci.Ponieważ dane są przechowywane lokalnie, użytkownik ma stały dostęp do danych podczas przetwarzania jest Odciążone z centralnej bazy danych.Ponadto ponieważ szybkość sieci nie jest już czynnikiem ograniczającym, użytkownik teraz dostępne dane z szybkością urządzenia.

Sync Services for ADO.NET

Sync Services for ADO.NET pozwala na synchronizację między bazami danych.It provides an intuitive and flexible API that enables you to build applications that target offline and collaboration scenarios.Sync Services for ADO.NET enables synchronization between two peers, such as SQL Server databases or between a SQL Server Compact 3.5 client database and any server database for which an ADO.NET provider is available.Interfejs API umożliwia korzystanie z wszystkich lub tylko niektórych składników, które są dostarczane, w zależności od architektury i wymagań aplikacji.

Poniższej ilustracji Pokaż przykłady od czasu do czasu połączonych aplikacji, w którym dane (reprezentowane przez zielony bazy danych) jest zachowywane lokalnie na urządzeniu zdalnym pracownika.W pierwszym przykładzie systemu autonomicznego bazy danych, w którym informacje są przechowywane bezpośrednio na urządzeniu przez użytkownika.W drugim przykładzie zdalnego biura, gdzie informacje są przechowywane w grupie roboczej bazy danych w ramach tego biura zdalnego tak, że wielu pracowników lokalnej mogą uzyskać dostępu do danych.

Sync Services Offline Scenario

Typowe rozszerzenie tego typu aplikacji co jakiś czas połączenia jest zdolność do obsługi scenariuszy współpracy.Są to scenariusze, w którym dwie bazy danych mogą być zsynchronizowane peer-to-peer bez konieczności przechodzenia przez koncentrator centralnego.Jak pokazano na poniższej ilustracji, zdalnej bazy danych jest bezpłatne do wymiany informacji z innej bazy danych.Tego rodzaju rozwiązanie jest użyteczne, gdy pracowników zdalnych (takich jak rewidentów finansowych na miejscu) działa jako grupy w lokalizacji zdalnej.Te pracowników często muszą współużytkować informacje między sobą.Jednak ponieważ nie mają łączność w centralnej bazie danych, ich musi udostępnianie informacji za pośrednictwem pewnego rodzaju sieci peer-to-peer.

Sync Services Collaboration Scenario

Za pomocą usługi synchronizacji dla ADO.NET z programem SQL Server

Sync Services for ADO.NET obsługuje bazy danych w następujący sposób:

  • W trybie offline scenariuszach musi być baza danych klient SQL Server Compact 3.5 w wersja 3.5 lub nowszej. Serwer może być dowolną bazę danych, dla których ADO.NET Dostawca jest dostępny.

  • W scenariuszach wspomagające współpracę musi być bazy danych każdy element równorzędny SQL Server 2000 Z dodatkiem usługa Pack 4 lub nowszym.

SQL Server is an enterprise-class database that provides a solid foundation for applications that require synchronization.SQL Server 2008 provides change tracking, one of the most useful features for synchronization developers.Sync Services for ADO.NET provides an API to synchronize changes, but it does not actually track changes in the server or peer database.(SQL Server Compact 3.5 Śledzenie zmian w baza danych klient.) Można tworzyć niestandardowe zmiany śledzenia systemu, ale to zwykle wprowadza istotne złożoności i obciążenie. Firma Microsoft zaleca, aby używać śledzenia w zmian SQL Server 2008, ponieważ jest łatwa do skonfigurowania i zapewnia wysoką wydajność śledzenia. Aby uzyskać więcej informacji zobacz Tracking Data Changes.

Porównywanie Sync Services dla ADO.NET do innych technologii

Microsoft oferuje kilka technologii, które są przeznaczone dla aplikacji, które wykonują synchronizację.Dlatego jest przydatne do porównania Sync Services for ADO.NET do innych technologii, które są używane w scenariuszach zespołowej i w trybie offline.

Synchronizacja offline

Najbardziej znaczący Microsoft technologie synchronizacji w trybie offline są w następujący sposób:

  • Zdalny dostęp do danych (RDA).Służy to do synchronizacji SQL Server Compact 3.5 bazy danych z bazą danych w innej wersji SQL Server. Aby uzyskać więcej informacji zobacz SQL Server Compact 3.5 Książki online.

  • replikacja łączenia.Służy do synchronizowania różnych wydań SQL Server, łącznie z SQL Server Compact 3.5. Aby uzyskać więcej informacji zobacz Omówienie replikacja łączenia i Wybierając odpowiedni typ replikacja.

Skorzystaj z poniższej tabela, aby pomóc w określeniu technologii jest odpowiedni dla aplikacji, które chcesz utworzyć.

Funkcja kluczy

RDA

Scalanie replikacja

Sync Services

Synchronizowanie przy użyciu architekturę n warstwowych lub zorientowanego na usługa

Nie

Nie

Tak

Obsługuje heterogenicznych bazy danych

Nie

Nie

Tak

Śledzenie zmian przyrostowych

Nr1

Tak

Tak

Wykrywanie konfliktów i rozdzielczości ekranu

Nie

Tak2

Tak

Łatwe tworzenie widoków danych na klient

Nie

Nie

Tak

Automatycznie zainicjować schemat oraz dane

Tak

Tak

Tak

Obsługuje dużych zestawów danych

Tak

Tak

Tak

Procesor kwerend jest dostępny lokalnie

Tak

Tak

Tak

Automatycznie propagowanie zmian schematu

Nie

Tak

Nie

Automatycznie ponownie podzielić na partycje danych

Nie

Tak

Nie

Za pomocą urządzeń

Tak

Tak

Tak

1 RDA obsługuje przyrostowe przekazywania, ale pliki do pobrania są zawsze migawka, który aktualizuje wszystkie dane na klient.

2 replikacja łączenia udostępnia rozwiązywanie konfliktów wbudowanych; Sync Services for ADO.NET zapewnia ramy do tworzenia schematu rozwiązania konfliktu.

Współpraca podczas synchronizacji

The most significant technology to compare in terms of collaborative synchronization is peer-to-peer transactional replication, which is used to synchronize two or more SQL Server Enterprise databases.Sync Services for ADO.NET and transactional replication both support peer-to-peer synchronization: replikacja transakcyjnej jest najbardziej odpowiedni do utrzymania wysoka wysoka dostępność i skalowanie odczytu aktywności na wielu serwerach, natomiast Sync Services for ADO.NET jest najbardziej odpowiedni dla aplikacji, w którym użytkownicy pracować wspólnie z tymi samymi danymi.

Poniższa tabela może pomóc określić technologii jest odpowiedni dla aplikacji, które chcesz utworzyć.Aby uzyskać więcej informacji na temat replikacja transakcyjnej typu peer-to-peer zobacz Typu peer-to-peer transakcyjne replikacja.

Funkcja kluczy

replikacja transakcyjnej typu peer-to-peer

Sync Services

Synchronizowanie przy użyciu architekturę n warstwowych lub zorientowanego na usługa

Nie

Tak

Obsługuje heterogenicznych bazy danych

Nie

Tak

Śledzenie zmian przyrostowych1

Tak

Tak

Wykrywanie konfliktów i rozdzielczości ekranu2

Tak

Tak

Automatycznie zainicjować schemat oraz dane

Tak

Tak

Obsługuje dużych zestawów danych

Tak

Tak

Procesor kwerend jest dostępny lokalnie

Tak

Tak

Automatycznie propagowanie zmian schematu

Tak

Nie

Za pomocą urządzeń

Nie

Nie znajduje się w tej wersja

Za pomocą SQL Server Compact 3.5

Nie

Nie znajduje się w tej wersja

1Sync Services for ADO.NET uses net change tracking, in which the last version of a row is synchronized.Z replikacja transakcyjnej typu peer-to-peer wszystkie zmiany wprowadzone w wierszu są stosowane w kolejności, każdy komputer równorzędny.

2 Replikacja zapewnia rozwiązywania konfliktów wbudowanych; Sync Services for ADO.NET zapewnia ramy do tworzenia schematu rozwiązywania konfliktów.

Podejmowanie decyzji, jakie technologie do użycia

Sync Services for ADO.NET provides the flexibility of a programming model like offline datasets and a richer synchronization feature set like that found in replication.Sync Services for ADO.NET functionality is superior to RDA.Replikacja jest przeznaczona dla administratorów bazy danych i jest przeznaczony głównie do synchronizacji SQL Server bazy danych. Replication provides significant functionality with configuration available through wizards, stored procedures, and its own API.Sync Services for ADO.NET is intended for developers and supports heterogeneous databases and synchronization over services, such as Windows Communication Foundation (WCF).Jeśli aplikacja wymaga synchronizowanie przy użyciu innych niż-SQL Server bazy danych lub jeśli aplikacja musi mieć oddzielne składniki, umożliwiające synchronizacji za pośrednictwem innego transportu lub usług, wykorzystanie Sync Services for ADO.NET.

W niektórych aplikacjach decyzja o korzysta z technologii jest łatwe: Jeśli należy zsynchronizować urządzenie źródłowe danych inne niż SQL Server Baza danych, Sync Services for ADO.NET to rozwiązanie. Jeśli jesteś administrator bazy danych, który chce skonfigurować synchronizację bez dużo programowania replikacja może być lepszym rozwiązaniem.Ostatecznie, należy uważnie należy wziąć pod uwagę wymagania aplikacji i określić, czy Sync Services for ADO.NET Interfejs API jest za pomocą odpowiednich technologii. Jeśli chcesz przenieść poza Replikowanie schematu i jego danych z jednej bazy danych, zaleca się użycie Sync Services for ADO.NET.

See Also

Concepts