Microsoft Sync Framework

**Microsoft Sync Framework** adalah sebuah platform sinkronisasi yang memungkinkan untuk melakukan kolaborasi dan kemampuan mengakses secara offline pada suatu aplikasi, servis, dan perangkat keras.Fitur kunci Microsoft Sync Framework adalah kemampuan membuat kustomisasi provider sinkronisasi.

Teknologi ini memiliki karakteristik yang dapat melakukan roaming, berbagi, dan komunikasi dengan data offline. Dengan menggunakan Microsoft Sync Framework, pemrogram dapat membuat ekosistem sinkronisasi yang dapat diintegrasikan dengan sembarang aplikasi dengan data apapun pada protokol jaringan. Microsoft Sync Framework digunakan ketika membutuhkan suatu platform yang di dalamnya memerlukan sinkronisasi satu sama lainnya

## Komponen
 	
**Database synchronization providers.**

Provider ini berisi *Microsoft.Synchronization.dll, Microsoft.Synchronization.Data.dll, Microsoft.Synchronization.Data.Server.dll, Microsoft.Synchronization.Data.SqlServer.dll, dan Microsoft.Synchronization.Data.SqlServerCe.dll.* Skenario yang dapat diimplementasi, seperti: Collaborative Scenarios, Offline Scenarios.

**File synchronization provider.**

Berisi *FileSyncProvider.dll dan Microsoft.Synchronization.Files.dll.* Ini dapat digunakan untuk sinkronisasi file dan folder baik format NTFS, FAT, atau SMB. Direktori yang disinkronisasi dapat bertipe lokal komputer atau komputer yang jauh.

**Web feed synchronization components.**

Komponen ini berisi *FeedSync2.dll dan Microsoft.Synchronization.dll.* Komponen ini dapat digunakan dengan dua skenario, yaitu:
* *Web feed synchronization provider services* yang dapat digunakan untuk menyimpan FeedSync XML file.
* *Web feed producer dan consumer component* yang dapat digunakan untuk sinkronisasi data dengan RSS atau ATOM.

**Custom providers.**

Komponen ini berisi *Synchronization2.dll dan Microsoft.Synchronization.dll, SimpleProviders.dll, dan Microsoft Synchronization.SimpleProviders2.dll.* Ini dapat digunakan untuk membuat synchronization provider untuk berbagai tipe data store.

**Metadata storage service.**

Komponen ini berisi *Metastore2.dll dan Microsoft.Synchronization.dll.* Ini digunakan oleh kustomisasi provider yang dapat dimanfaatkan untuk menyimpan dan melakukan sinkronisasi metadata. Penyimpanan metadata ini sangat tepercaya dan database sederhana yang hanya membutuhkan memori kecil dan dapat didistribusikan bersama dengan provider.

**Core API and runtime.**

Komponen ini berisi *Synchronization2.dll dan Microsoft.Synchronization.dll.* :en:Core API dan :en:runtime digunakan oleh semua komponen kecuali untuk offline database provider.

## Arsitektur
 
Sync Framework memakai arsitektur berbasis provider. Provider dalam hal ini adalah komponen perangkat lunak yang mereprentasikan sebuah replika untuk sinkronisasi. Provider menyembunyikan kompleksitas dari komponen sinkronisasi dan spesifik implementasi untuk setiap data store. Arsitektur inilah yang memungkinkan dapat digunakan untuk berbagai tipe data store. Provider yang bisa digunakan untuk sinkronisasi oleh Microsoft Sync Framework, yaitu:
* Sync Services untuk :en:ADO.NET. Sinkronisasi untuk aplikasi berbasis data ADO.NET.
* Sync Services untuk File System. Sinkronisasi untuk file dan folder.
* Sync Services untuk :en:FeedSync. Sinkronisasi untuk feed RSS dan :en:ATOM

### Sync Services for ADO.NET

Microsoft Sync Services for ADO.NET adalah provider sinkronisasi untuk mensinkronisasi antar database dengan menggunakan ADO.NET. ADO.NET dataset disinkronisasikan antara tujuan dan sumber, yang kemudian dimasukkan ke dalam pusat sumber data. Selain itu juga dapat mendukung sumber data dibandingkan sebuah :en:relational database seperti :en:XML database or web service. Hal ini dapat berlangsung selama proxy siap untuk mengabstraksi sumber data dan pusat data tersedia untuk proxy.

Microsoft Sync for ADO.NET menekankan fungsi pada kegunaan aplikasi offline, di mana data berasal dari pusat data dengan lokasi cache. Kerja aplikasi dibandingkan data cache, dan perubahan dari mengunduh dengan label. Biasanya, pusat data dapat juga digunakan untuk aplikasi kolaborasi, di mana setiap aplikasi bekerja melawan pada data lokal, yang telah disinkronisasi secara periodik dalam peer to peer dengan partisipasi lainnya. Dasarnya, set data dapat disimpan berdasarkan penggunaan :en:SQL Server Compact atau pusat data lainnya yang mendukung ADO.NET.

### Sync Services for file system

Sync Services for file system digunakan untuk menyesuaikan dua lokasi sistem file, yang keduanya berada di folder lokal atau pembagian jaringan, biasanya untuk mengawasi file baru disamping perubahan untuk file yang ada juga disesuaikan. Perubahan untuk file di deteksi dengan menggunakan perangko waktu, atau pilihan dengan menghapus isi file. Perubahan untuk konflik dengan file telah terdeteksi dan secara otomatis telah diselesaikan untuk memperbaharui konflik dengan file yang sama. Editan terbaru akan disimpan, jika file dihapus dalam satu replika tetapi memperbaharui dengan yang lainnya. Perubahan akan diperbaharui setelah dilakukan penghapusan.

Jika perubahan operasi disebabkan file dengan nama sama, keduanya disiapkan dengan mengubah nama mereka, perubahan dapat dikonfigurasi untuk menempatkan file ke :en:recycle bin, sehingga bisa dikembalikan jika diperlukan. Sync Services for file system juga menyediakan *mode preview* dengan menyesuaikan tindakan yang akan dibuat untuk operasi sync dan mengizinkan pengguna untuk melihat kembali perubahan yang akan dibuat. Sinkronisasi ditampilkan dalam peer to peer. Sync services for file system harus menunjukkan identifikasi sebelum mengakses file jadi identifikasi. Sync services for file system juga didukung dengan statistik filter untuk menempatkan pada *kartu wild*, dalam tahap pertama CTP. Sync services for file system tidak dilengkapi dengan keamanan NTFS.

### Sync services for Feedsync

Sync services for Feedsync dapat digunakan untuk pertolongan sinkronisasi dengan menciptakan feedsync, dibandingkan RSS atau ATOM, yang bisa digambarkan untuk bagian yang menarik provider yang bisa digunakan untuk ekstrak jenis benda dari feed dan *merge* perubahan kembali penyimpanan data Sync services for Feedsync menggunakan operator lain untuk koneksi penyimpanan data

Sync services for Feedsync bisa digunakan untuk menolong sinkronisasi data dari replika(replika adalah partikular dari informasi yang bisa disesuaikan) dengan RSS data Atom feeds. Dengan menggunakan peraturan layanan feedsync, aplikasi sinkronisasi dapat bekerja dengan provider sinkronisasi untuk menciptakan daftar dari replika dan menempatkan mereka dalam RSS atau Atom XML stream ekstrak jenis benda tersebut, dan kemudian digunakan provider sinkronisasi untuk mengaplikasi hanya perubahan untuk replika, karena framework sync berdasarkan perubahan jenis benda, dua langkah bisa berseberangan digambarkan dan mudah disinkronisasi dengan lainnya sebagai pasangan di komunitas sinkronisasi. (komunitas sinkronisasi adalah satu set replika yang menyimpan data sinkronisasi dengan yang lainnya).

## Lihat Juga

:en:FeedSync

## Referensi

* MSDN Library, Microsoft Sync Framework
* Introducing the Microsoft Sync Framework: Next Generation Synchronization Framework - Code Magazine

## Pranala luar
* Microsoft Sync Framework v1.0.RN
* Introduction to Microsoft Sync Framework