Vergleich von Remotedatenzugriff (Remote Date Access, RDA) und Mergereplikation

Ob die Verwendung von Remotedatenzugriff (Remote Data Access, RDA) oder Replikation in einer SQL Server Compact-Anwendung sinnvoller ist, hängt vom Zweck, der Funktion, dem Umfang und den Anforderungen der Anwendung für intelligente Geräte ab. Jede Konnektivitätsdatenlösung bietet verschiedene Vor- und Nachteile.

Sowohl RDA als auch Replikation eignen sich gut für den drahtlosen Transport. Komprimierung wird verwendet, um den Umfang der übertragenen Daten zu verringern. Sie können Verschlüsselung verwenden, um sensitive Benutzerdaten während der Übertragung zu schützen.

Featurevergleich

Feature Replikation RDA

Austausch von nachverfolgten Datenänderungen

Replikation von Änderungen von und zu Server und Client

Nachverfolgung auf Spaltenebene - reduziert die übertragene Datenmenge, indem nur geänderte Spaltendaten übertragen werden

Nachverfolgung auf Zeilenebene - es wird die gesamte Zeile übertragen

Änderungen nur von Client zu Server übertragen. Vollständige Aktualisierung der zum Empfang von Serveränderungen erforderlichen Daten.

Nachverfolgung auf Zeilenebene - es wird die gesamte Zeile übertragen.

Anzahl der Tabellen, von denen Daten weitergegeben werden können

Mehrere Tabellen - so viele, wie in der Veröffentlichung definiert

Eine Tabelle pro RDA-Methode

Typen von Tabellen, die weitergegeben werden können

Verschiedene Tabellentypen zum Steuern des Datenflusses

Das Hinzufügen oder Entfernen einer Tabelle in der Veröffentlichung (Server) wird automatisch ohne Neuinitialisierung des Abonnements auf dem Client repliziert

N/V

Das Hinzufügen oder Entfernen einer Tabelle auf dem Server wird nicht automatisch auf dem Client repliziert.

Einschränkungen und Indizes

Einschränkungen und Indizes für referenzielle Integrität werden automatisch vom Server repliziert.

Einschränkungen für referenzielle Integrität werden nicht repliziert, Indizes werden optional repliziert. Beim Client muss eine zusätzliche Schemadefinition definiert werden.

Konflikte

Zu Konflikten gehören Datenänderungen durch verschiedene Benutzer sowie Zeilen, die wegen eines Fehlers nicht angewendet werden.

Lösung und Verwaltung von Konflikten auf dem Server

Integrierte und benutzerdefinierte Konfliktlöser werden unterstützt.

Zu Konflikten gehören nur Zeilen, die wegen eines Fehlers nicht angewendet wurden. Von RDA wird nicht erkannt, ob Daten von einem anderen Benutzer geändert wurden.

Konflikte werden nicht verwaltet, aber optional in eine Fehlertabelle auf dem Client geschrieben.

Keine Konfliktlöser.

Schemaänderungen

Schemaänderungen wie Hinzufüge-/Löschspalten, Hinzufüge-/Löscheinschränkungen oder das Ändern von Spaltendefinitionen können repliziert werden.

Schemaänderungen sind nicht zulässig. Wenn das Schema geändert wird, muss der Client die Tabelle beim Client löschen und die Daten wieder mit einem Pull-Vorgang vom Server abrufen. Abhängig von der Schemaänderung kann ein Push-Vorgang fehlschlagen.

Identitätsspalten

Manuelle und automatische Identitätsbereichsbehandlung. Spalten vom Typ BigInt und Int werden unterstützt.

Manuelle Identitätsbereichsbehandlung. Spalten vom Typ BigInt und Int werden unterstützt.

Daten-/Schemadefinition

Tritt beim Server auf, wenn die Veröffentlichung konfiguriert und automatisch beim Client definiert wird, wenn das Abonnement erstellt wird.

Daten- und Schemadefinitionen treten beim Client auf, wenn Daten mit einem Pull-Vorgang vom Server zum Client übertragen werden.

Tools (Benutzeroberfläche)

Umfangreiche Tools zum Erstellen und Verwalten von Abonnements sowie Überwachungstools zum Verwalten mehrerer Abonnements, für die Leistungsüberwachung und zum Überwachen von Synchronisierungszeiten.

Es werden keine Tools unterstützt.

Serverinvasivität

Der Serverdatenbank hinzugefügte Tabellen und Spalten zum Verwalten der Replikation.

Keine Änderung an Datenbanken auf dem Server.

Wichtig

Aufgrund von Entwurfseinschränkungen wird der Remotedatenzugriff (RDA) in einer Folgeversion entfernt. Wenn Sie zurzeit RDA verwenden, sollten Sie dazu übergehen, Microsoft Synchronization Services für ADO.NET zu verwenden. Wenn Sie beabsichtigten, RDA in einer neuen Anwendung zu verwenden, sollten Sie stattdessen die Verwendung von Mergereplikation oder Synchronization Services in Betracht ziehen. Beachten Sie, dass Synchronization Services gegenwärtig für Desktopcomputer und mobile Geräte verfügbar ist.