Información general sobre la sincronización del cliente y el servidor
Sync Framework permite sincronizar datos de orígenes diferentes en arquitecturas con dos niveles, arquitecturas n-tier y arquitecturas basadas en servicios. La API de Sync Framework para la sincronización del cliente y el servidor proporciona un conjunto de componentes para sincronizar datos entre los servicios de datos y un almacén local, en lugar de limitarse a replicar una base de datos y su esquema. Cada vez se usan más aplicaciones en los clientes móviles, como los equipos y dispositivos portátiles. Dado que éstos no tienen una conexión de red coherente o confiable a un servidor central, es importante que estas aplicaciones trabajen con una copia local de los datos en el cliente. Igual de importante es la necesidad de sincronizar la copia local de los datos con un servidor central cuando esté disponible una conexión de red. La API de sincronización de bases de datos de Sync Framework, que toma como modelo las API de acceso a datos de ADO.NET, proporciona una manera intuitiva de sincronizar los datos. Sync Framework convierte la creación de aplicaciones para entornos con conexiones esporádicas en una extensión lógica de la generación de aplicaciones donde se puede depender de una conexión de red coherente. Para obtener más información acerca de la arquitectura de la API, vea Arquitectura y clases para la sincronización del cliente y el servidor.
Comparar Sync Framework con otras tecnologías
Microsoft ofrece varias tecnologías diseñadas para las aplicaciones que se ejecutan en entornos con conexiones esporádicas. Las tecnologías más importantes son:
Acceso a datos remotos (RDA) Se usa para sincronizar una base de datos de SQL Server Compact con otra base de datos en otra edición de SQL Server.
Replicación de mezcla Se utiliza para sincronizar ediciones distintas de SQL Server, e incluye SQL Server Compact.
Use la tabla siguiente para averiguar qué tecnología es la más apropiada para las aplicaciones que desea crear.
Característica clave | RDA | Replicación de mezcla | Sync Framework |
---|---|---|---|
Sincronización por medio de servicios |
No |
No |
Sí |
Admite bases de datos heterogéneas |
No |
No |
Sí |
Seguimiento de cambios incrementales |
No1 |
Sí |
Sí |
Detección y resolución de conflictos |
No |
Sí2 |
Sí |
Facilidad para crear vistas de datos en el cliente3 |
No |
No |
Sí |
Inicialización automática del esquema y los datos |
Sí |
Sí |
Sí |
Compatibilidad con conjuntos de datos extensos |
Sí |
Sí |
Sí |
Propagación automática de los cambios del esquema |
No |
Sí |
No |
Volver a particionar automáticamente los datos |
No |
Sí |
No |
Uso en dispositivos |
Sí |
Sí |
Sí |
1 RDA admite las cargas incrementales, pero las descargas siempre son una instantánea que actualiza todos los datos en el cliente.
2 La replicación de mezcla proporciona resolución de conflictos integrada. Sync Framework proporciona un marco de trabajo para generar un esquema de resolución de conflictos. Para obtener más información, vea Controlar conflictos de datos y errores.
3 Para obtener más información, vea Crear vistas de datos en un cliente.
Sync Framework proporciona la flexibilidad de un modelo de programación como los conjuntos de datos sin conexión y un conjunto de características de sincronización más completo, como el disponible en la replicación de mezcla. La funcionalidad de Sync Framework es superior a la de RDA. La replicación de mezcla ha sido ideada para los administradores de bases de datos y está diseñada para sincronizar bases de datos de SQL Server. La replicación de mezcla proporciona una funcionalidad considerable, y se puede configurar mediante asistentes, procedimientos almacenados y su propia API. Sync Framework ha sido ideado para los desarrolladores, y les permite crear fácilmente vistas de datos en el cliente que están basadas en una base de datos servidor u otro origen de datos. Sync Framework admite las bases de datos heterogéneas y la sincronización a través de servicios, como los servicios de Windows Communication Foundation (WCF). Si la aplicación requiere la sincronización con bases de datos no SQL Server, o si necesita componentes independientes para permitir la sincronización a través de servicios o transportes diferentes, use Sync Framework.
En algunas aplicaciones, la decisión de qué tecnología se ha de utilizar es fácil: si debe sincronizar un origen de datos que no es una base de datos de SQL Server, Sync Framework es la solución. Si es un administrador de base de datos que necesita configurar la sincronización con poca programación, la mejor opción puede ser la replicación de mezcla. Finalmente, debe considerar meticulosamente los requisitos de la aplicación y determinar si la API de Sync Framework es la tecnología adecuada. Si desea hacer algo más que replicar un esquema y sus datos desde una base de datos a otra, se recomienda que use Sync Framework.
Nota
Ni RDA ni la replicación de mezcla se pueden usar con Sync Framework en la misma tabla de la base de datos cliente.
Usar la documentación de Sync Framework
Los temas de la documentación de Sync Framework proporcionan una introducción detallada a la API de sincronización de bases de datos de Sync Framework, al código de ejemplo y a una referencia de la API. Puede hallar la referencia de la API para la sincronización del cliente y el servidor en Microsoft.Synchronization, Microsoft.Synchronization.Data, Microsoft.Synchronization.Data.SqlServerCe y Microsoft.Synchronization.Data.Server.
Para obtener más información, conviene que lea la documentación en el orden siguiente:
Puede obtener información de la arquitectura de la API y las clases más importantes en Arquitectura y clases para la sincronización del cliente y el servidor.
Puede consultar el código de una aplicación básica en Introducción: sincronización de cliente y servidor.
Puede obtener información de las herramientas disponibles para desarrollar una aplicación en Herramientas que facilitan el desarrollo de aplicaciones.
Para hacerse una idea de cómo realizar tareas comunes, vea los temas de Programar tareas comunes de sincronización de cliente y servidor. Estos temas contienen código de ejemplo. Se ofrecen ejemplos adicionales en Sync Framework SDK y en la Galería de códigos.
Cuando lea estas secciones, estará preparado para apreciar los consejos de diseño que se proporcionan en Consideraciones sobre el diseño y la implementación de aplicaciones. Cuando se haya familiarizado con la API, le animamos a que empiece a escribir código: verá lo sencillo que es el proceso de agregar sincronización a una aplicación.
Vea también
Conceptos
Escenarios sin conexión
Arquitectura y clases para la sincronización del cliente y el servidor