Implementación de flujos de Amazon Cognito Sync
Si es la primera vez que utiliza Amazon Cognito Sync, utilice AWS AppSync
Con este, se pueden sincronizar los datos de usuarios, como las preferencias de aplicación o el estado del juego. También amplía estas funcionalidades, ya que permite que varios usuarios se sincronicen y colaboren en tiempo real sobre los datos compartidos.
Amazon Cognito Streams ofrece a los desarrolladores control e información de los datos almacenados en Amazon Cognito. Ahora los desarrolladores pueden configurar un flujo de Kinesis para recibir eventos cuando los datos se actualicen y se sincronicen. Amazon Cognito puede enviar cada cambio del conjunto de datos a un flujo de Kinesis de su propiedad en tiempo real.
Con Amazon Cognito Streams, puede mover todos los datos de sincronización a Kinesis, que luego pueden transmitirse a una herramienta de almacenamiento de datos, como Amazon Redshift, para analizarlos en mayor profundidad. Para obtener más información sobre Kinesis, consulte Introducción al uso de Amazon Kinesis.
Configuración de los flujos
Puede configurar Amazon Cognito Streams en la consola de Amazon Cognito. Con el fin de habilitar Amazon Cognito Streams en la consola de Amazon Cognito, debe seleccionar el flujo de Kinesis en el que publicar y un rol de IAM que otorgue permiso a Amazon Cognito para poner eventos en el flujo seleccionado.
En la página de inicio de la consola
-
Haga clic en el nombre del grupo de identidades para el que desee configurar Amazon Cognito Streams. Se mostrará la página Dashboard (Panel) de su grupo de identidades.
-
En la esquina superior derecha de la página Dashboard (Panel), haga clic en Manage Identity Pools (Administrar grupos de identidades). Se visualizará la página Manage Federated Identities.
-
Desplácese hacia abajo y haga clic en Cognito Streams (Secuencias de Cognito) para expandir esta opción.
-
En el menú desplegable Stream name (Nombre de la secuencia), seleccione el nombre de un flujo de Kinesis ya existente. O bien haga clic en Create stream (Crear secuencia) para crear uno, introduciendo un nombre de secuencia y el número de fragmentos. Para obtener información sobre las particiones y ayuda para calcular la cantidad necesaria de particiones para el flujo, consulte la Guía para desarrolladores de Kinesis.
-
En el menú desplegable Publish role (Publicar rol), seleccione el rol de IAM que concede a Amazon Cognito permiso para publicar su flujo Haga clic en Create role (Crear rol) para crear o modificar los roles asociados a su grupo de identidades en la consola de IAM de AWS
. -
En el menú desplegable Stream status (Estado del flujo), seleccione Enabled (Habilitado) para habilitar las actualizaciones de la secuencia. Haga clic en Save Changes (Guardar cambios).
Después de configurar con éxito los flujos de Amazon Cognito, todas las actualizaciones posteriores aplicadas en conjuntos de datos de este grupo de identidades se enviarán al flujo.
Contenido de los flujos
Cada registro enviado al flujo representa una sincronización única. A continuación se muestra un ejemplo de un registro enviado al flujo:
{ "identityPoolId": "Pool Id", "identityId": "Identity Id", "dataSetName": "Dataset Name", "operation": "(replace|remove)", "kinesisSyncRecords": [ { "key": "Key", "value": "Value", "syncCount": 1, "lastModifiedDate": 1424801824343, "deviceLastModifiedDate": 1424801824343, "op": "(replace|remove)" }, ... ], "lastModifiedDate": 1424801824343, "kinesisSyncRecordsURL": "S3Url", "payloadType": "(S3Url|Inline)", "syncCount": 1 }
En el caso de las actualizaciones que superan el tamaño de carga máximo de Kinesis de 1 MB, Amazon Cognito incluye una URL de Amazon S3 prefirmada con el contenido completo de la actualización.
Después de configurar los flujos de Amazon Cognito, si elimina el flujo de Kinesis o cambia el permiso de confianza del rol para que Amazon Cognito Sync ya no lo pueda asumir, desactivará los flujos de Amazon Cognito. Deberá volver a crear el flujo de Kinesis o arreglar el rol y, a continuación, volver a activar el flujo.
Publicación en masa
Una vez que haya configurado los flujos de Amazon Cognito, podrá ejecutar una operación de publicación en masa de los datos existentes en su grupo de identidades. Después de iniciar una operación de publicación en masa, ya sea a través de la consola o directamente a través de la API, Amazon Cognito comenzará la publicación de estos datos en la misma secuencia que recibe las actualizaciones.
Amazon Cognito no garantiza la exclusividad de los datos enviados al flujo en la operación de publicación en masa. Puede recibir la misma actualización como una actualización o como parte de una publicación en masa. Tenga en mente esta posibilidad cuando proceso los registros de su flujo.
Para publicar en masa todos sus flujos, siga los pasos 1 a 6 de la sección de configuración de los flujos y, a continuación, haga clic en Start bulk publish. Tiene un límite de una operación de publicación en masa en curso en cualquier momento y una solicitud de publicación en masa correcta cada 24 horas.