Compartir a través de


Arquitectura de acceso a datos remotos

El acceso a datos remotos (RDA) utiliza tres componentes de Microsoft SQL Server Compact 3.5 (SQL Server Compact 3.5): SQL Server Compact 3.5 Motor de base de datos, el Agente de cliente de SQL Server Compact 3.5 y el Agente de servidor de SQL Server Compact 3.5.

El RDA utiliza Internet Information Services (IIS) de Microsoft como mecanismo de comunicación entre la base de datos de SQL Server en el servidor y la base de datos de SQL Server Compact 3.5 en el dispositivo. El Motor de base de datos de SQL Server Compact 3.5, el Agente de cliente de SQL Server Compact 3.5 y el Agente de servidor de SQL Server Compact 3.5 trabajan juntos para lograr el acceso a datos remotos (RDA), como se muestra en el siguiente diagrama.

Arquitectura de acceso a datos remotos (RDA)

Motor de base de datos de SQL Server Compact 3.5

El Motor de base de datos de SQL Server Compact 3.5 administra el almacén de datos de SQL Server en el dispositivo. Para las operaciones de extracción en las que se efectúa un seguimiento, Motor de base de datos realiza el seguimiento de todos los registros de base de datos que se hayan insertado, actualizado o eliminado manteniendo una pequeña cantidad de datos de seguimiento de cambios con cada registro. Si existen índices en los datos de SQL Server, el RDA también permitirá la creación de índices en los datos locales.

Agente de cliente de SQL Server Compact 3.5

El Agente de cliente de SQL Server Compact 3.5, ubicado en el dispositivo, es el principal componente utilizado para RDA. El Agente de cliente implementa la interfaz de objetos de RDA. Las aplicaciones llaman a esta interfaz para controlar el RDA mediante programación.

Las acciones que el Agente de cliente de SQL Server Compact 3.5 lleva a cabo en respuesta a las llamadas de métodos de objeto de RDA se describen en la siguiente tabla.

Método Acción

Pull

Reenvía la solicitud al Agente de servidor de SQL Server Compact 3.5 a través de HTTP. Cuando el Agente de cliente de SQL Server Compact 3.5 recibe el conjunto de registros de SQL Server, lo almacena en la base de datos de SQL Server Compact 3.5.

Push

Extrae todos los registros insertados, actualizados y eliminados de la base de datos de SQL Server Compact 3.5 y los envía al Agente de servidor de SQL Server Compact 3.5 a través de HTTP.

SubmitSQL

Reenvía la solicitud SQL especificada al Agente de servidor de SQL Server Compact 3.5 a través de HTTP.

Agente de servidor de SQL Server Compact 3.5

El Agente de servidor de SQL Server Compact 3.5, ubicado en el equipo que ejecuta ISS, controla las solicitudes de HTTP realizadas por el Agente de cliente de SQL Server Compact 3.5. Utiliza archivos de mensajes temporales (*.in y *.out) para administrar el intercambio de datos entre SQL Server y SQL Server Compact 3.5.

Las acciones que el Agente de servidor de SQL Server Compact 3.5 lleva a cabo en respuesta a las llamadas de métodos de objeto de RDA se describen en la siguiente tabla.

Método Acción

Pull

Recibe la solicitud del Agente de cliente de SQL Server Compact 3.5, se conecta a SQL Server a través del proveedor OLE DB para SQL Server y solicita la instrucción SQL del cliente. El Agente de servidor de SQL Server Compact 3.5 devuelve el conjunto de registros resultante al Agente de cliente de SQL Server Compact 3.5 a través de HTTP.

Push

Recibe todos los registros insertados, actualizados y eliminados del Agente de cliente de SQL Server Compact 3.5, se conecta a SQL Server a través de OLE DB, e inserta, actualiza o elimina los registros de la base de datos de SQL Server. Si se producen errores, el Agente de servidor de SQL Server Compact 3.5 informa de los errores al Agente de cliente de SQL Server Compact 3.5 a través de HTTP.

SubmitSQL

Recibe la solicitud de SQL especificada del Agente de cliente de SQL Server Compact 3.5 a través de HTTP, se conecta a SQL Server a través de OLE DB y solicita la instrucción SQL del cliente. Si se producen errores, el Agente de servidor de SQL Server Compact 3.5 informa de los errores al Agente de cliente de SQL Server Compact 3.5 a través de HTTP.