Docs Menu
Docs Home
/ /
Configurar sincronización

Configurar y habilitar Atlas Device Sync

Puede configurar y habilitar la Sincronización de Dispositivos Atlas mediante la interfaz de usuario de App Services, la CLI de App Services o la API de administración de Atlas App Services. Puede actualizar una configuración existente de la misma manera. Si es la primera vez que habilita la Sincronización de Dispositivos, la interfaz de usuario es una excelente opción, ya que le guía por los pasos necesarios.

Es posible que desee modificar la configuración de Sincronización de Dispositivos Atlas después de haberla habilitado. Puede actualizar una configuración siguiendo el mismo procedimiento que para habilitarla inicialmente. Si utiliza el modo de Sincronización Flexible, puede actualizar la configuración sin necesidad de cerrar y volver a habilitar la sincronización.

Si desea volver a habilitar la sincronización del dispositivo después de pausarla o finalizarla, consulte Reanudar o volver a habilitar la sincronización del dispositivo.

Tip

Device Sync se pausa automáticamente después de 30 días de inactividad.

Si aún no ha decidido cómo desea configurar su modelo de datos, consulte Descripción general del modelo de datos de sincronización.

A menos que utilice el modo de desarrollo, debe especificar al menos un esquema válido para una colección en el clúster sincronizado antes de habilitar la sincronización. Como mínimo, el esquema debe definir _id como clave principal. También debe incluir los campos que desea utilizar como campos de consulta.

Para obtener más detalles sobre cómo definir un esquema, consulte Definir y aplicar un esquema.

Nota

Requisitos de la fuente de datos para la sincronización del dispositivo

Para habilitar la sincronización de dispositivos, su aplicación de Servicios de aplicaciones debe tener al menos una fuente de datos vinculada que cumpla con los siguientes requisitos:

  • Un clúster de MongoDB Atlas no fragmentado en ejecución MongoDB 5.0 o posterior.

  • El clúster no puede ser una instancia sin servidor ni una instancia de base de datos federada. Consulte las limitaciones de las fuentes de datos.

1

Para habilitar la sincronización de dispositivos para su aplicación, navegue hasta Device Sync Pantalla de configuración a través del menú de navegación izquierdo.

2

Sigue las instrucciones para configurar la sincronización de dispositivos. Para obtener más información sobre las opciones de configuración disponibles, consulta Ajustes de sincronización.

3

Haga clic en Enable Sync, tome nota de las recomendaciones que aparecen y luego confirme su elección.

1

Utilice su clave API de administrador de MongoDB Atlas para iniciar sesión en la CLI:

appservices login --api-key="<my api key>" --private-api-key="<my private api key>"
2

Obtén una copia local de los archivos de configuración de tu aplicación. Para obtener la última versión, ejecuta el siguiente comando:

appservices pull --remote="<Your App ID>"

También puedes exportar una copia de los archivos de configuración de tu aplicación desde la interfaz de usuario o con la API de administración. Para saber cómo, consulta Exportar una aplicación.

3

Puede habilitar la sincronización para un solo clúster vinculado en su aplicación. Si aún no ha vinculado el clúster a su aplicación, siga primero la guía Vincular una fuente de datos.

La aplicación Servicios de aplicaciones tiene un sync directorio donde se encuentra el archivo de configuración de sincronización. Si aún no ha habilitado la sincronización, este directorio está vacío.

Añade un config.json similar a:

{
"type": "flexible",
"development_mode_enabled": <Boolean>,
"service_name": "<Data Source Name>",
"database_name": "<Development Mode Database Name>",
"state": <"enabled" | "disabled">,
"client_max_offline_days": <Number>,
"is_recovery_mode_disabled": <Boolean>,
"indexed_queryable_fields_names": <Array of String Field Names>,
"queryable_fields_names": <Array of String Field Names>,
"collection_queryable_fields_names": <Map[String][]String>
}

Para obtener más detalles, consulte la Referencia del archivo de configuración de sincronización.

4

Implementa tus cambios para empezar a sincronizar datos. Importa la configuración de tu aplicación:

appservices push --remote="<Your App ID>"
1

Puede habilitar la Sincronización de Dispositivos para un solo clúster vinculado en su aplicación. Si aún no has vinculado el clúster a tu aplicación, siga la guía Vincular una fuente de datos.

Nota

Autenticando Tu Solicitud con un Token de Acceso

Para autenticar su solicitud a la API de administración de App Services, necesita un token de autorización válido y vigente de la API de MongoDB Cloud. Consulte la documentación de autenticación de la API para saber cómo obtener un token de acceso válido.

Necesitará el archivo de configuración del servicio del clúster para configurar la sincronización. Puede encontrarlo enumerando todos los servicios a través de la API de administración:

Encuentra el ID de tu clúster
curl https://services.cloud.mongodb.com/api/admin/v3.0/groups/{GROUP_ID}/apps/{APP_ID}/services \
-X GET \
-h 'Authorization: Bearer <Valid Access Token>'

Identifique el clúster cuya configuración necesita actualizar para habilitar la sincronización. Si aceptó los nombres predeterminados al configurar su aplicación, este debería ser un clúster cuyo name sea mongodb-atlas y type sea mongodb-atlas. Necesita el _id de este clúster.

Ahora puede obtener el archivo de configuración de servicio para este clúster:

Obtener el archivo de configuración de servicio para el clúster
curl https://services.cloud.mongodb.com/api/admin/v3.0/groups/{GROUP_ID}/apps/{APP_ID}/services/{MongoDB_Service_ID}/config \
-X GET \
-h 'Authorization: Bearer <Valid Access Token>'

Para configurar Sync, agregaremos un objeto flexible_sync a esta configuración en el siguiente paso.

2

Si desea habilitar el modo de desarrollo para optimizar la producción, utilice el siguiente comando:

Habilitar el modo de desarrollo
curl https://services.cloud.mongodb.com/api/admin/v3.0/groups/{GROUP_ID}/apps/{APP_ID}/sync/config \
-X PUT \
-h 'Authorization: Bearer <Valid Access Token>' \
-h "Content-Type: application/json" \
-d '{"development_mode_enabled": true}'
3

Para implementar sus cambios y comenzar a sincronizar datos, envíe una solicitud de API de administración que actualice la configuración del clúster con un flexible_sync objeto utilizando la siguiente configuración de plantilla:

Actualizar la configuración de sincronización
curl https://services.cloud.mongodb.com/api/admin/v3.0/groups/{GROUP_ID}/apps/{APP_ID}/services/{MongoDB_Service_ID}/config \
-X PATCH \
-h 'Authorization: Bearer <Valid Access Token>' \
-h "Content-Type: application/json" \
-d '<Flexible Sync Configuration>'
Configuración de sincronización flexible
{
"flexible_sync": {
"state": "enabled",
"database_name": "<Name of Database>",
"client_max_offline_days": <Number>,
"is_recovery_mode_disabled": <Boolean>,
"indexed_queryable_fields_names": <Array of String Field Names>,
"queryable_fields_names": <Array of String Field Names>,
"collection_queryable_fields_names": <Map[String][]String>
}
}

Para obtener detalles sobre la configuración de sincronización, consulte la Referencia del archivo de configuración de sincronización.

Puede confirmar que se agregó la configuración de sincronización obteniendo nuevamente la configuración del servicio, como se describe en el Paso 1.

Volver

Configurar sincronización

En esta página