Confronto tra le tecnologie di sincronizzazione
Microsoft offre diverse tecnologie che sono progettate per applicazioni che vengono eseguite in ambienti connessi occasionalmente. Le tecnologie più rilevanti sono le seguenti:
- RDA (Remote Data Access), che viene utilizzato per sincronizzare un database SQL Server Compact 3.5 insieme a un database di un'altra edizione di SQL Server.
- La replica di tipo merge, che viene utilizzata per sincronizzare diverse edizioni di SQL Server. È compreso SQL Server Compact 3.5.
Nota
Non è possibile utilizzare Synchronization Services e qualsiasi altra tecnologia di sincronizzazione sulla stessa tabella nel database client.
Per stabilire quale tecnologia è appropriata per le applicazioni da creare, iniziare con la seguente tabella, che descrive le funzionalità chiave.
RDA | Replica di tipo merge | Servizi di sincronizzazione | |
---|---|---|---|
Sincronizzazione con i servizi |
No |
No |
Sì |
Supporta i database eterogenei |
No |
No |
Sì |
Rilevamento delle modifiche incrementale |
No1 |
Sì |
Sì |
Rilevamento e risoluzione di conflitti |
No |
Sì |
Sì |
Creazione facile di viste dati sul client |
No |
No |
Sì |
Inizializzazione automatica di schemi e dati |
Sì |
Sì |
Sì |
Supporta grossi set di dati |
Sì |
Sì |
Sì |
Query processor localmente disponibile |
Sì |
Sì |
Sì |
Propagazione automatica di modifiche allo schema |
No |
Sì |
No |
Ripartizione automatica dei dati |
No |
Sì |
No |
Utilizzo sui dispositivi |
Sì |
Sì |
Sì |
1 RDA supporta i caricamenti incrementali, mentre i download rappresentano sempre uno snapshot che aggiorna completamente i dati sul client.
Synchronization Services garantisce la flessibilità di un modello di programmazione come i set di dati non in linea, con un set di funzionalità di sincronizzazione più ricco come quello presente nella replica di tipo merge. La funzionalità di Synchronization Services è superiore a RDA.
La replica di tipo merge è destinata a DBA ed è progettata per la sincronizzazione con i database SQL Server. Garantisce una funzionalità significativa pronta per l'uso, con la configurazione disponibile mediante le procedure guidate, le stored procedure e gli API. Synchronization Services è destinata agli sviluppatori e consente di creare facilmente le viste dei dati sul client in base al database del server o a un'altra origine dati. Synchronization Services supporta database eterogenei e la sincronizzazione sui servizi, come WCF. Se l'applicazione prevede la sincronizzazione con i database non SQL Server o l'applicazione deve essere a componenti per consentire la sincronizzazione su diversi trasporti o servizi, utilizzare Synchronization Services.
Per alcune applicazioni, la scelta della tecnologia da utilizzare è semplice: se si deve sincronizzare un'origine dati diversa da un database di SQL Server, Synchronization Services è la scelta più appropriata. Se un amministratore di database desidera configurare la sincronizzazione senza effettuare ulteriori operazioni di programmazione, la replica di tipo merge rappresenta la scelta giusta. In fine, è necessario valutare attentamente i requisiti dell'applicazione e determinare se l'API Synchronization Services è la tecnologia appropriata da utilizzare. Per coloro che intendono spostare la replica di uno schema e i relativi dati da un database a un altro, Synchronization Services è chiaramente la scelta giusta.