Flux Amazon Cognito - Amazon Cognito

Flux Amazon Cognito

Si vous débutez avec Amazon Cognito Sync, utilisez AWS AppSync. Comme Amazon Cognito Sync, AWS AppSync est un service permettant de synchroniser des données d'application sur différents appareils.

Il permet de synchroniser les données utilisateur telles que des préférences de l'application ou l'état d'un jeu. Il étend également ces capacités en permettant à plusieurs utilisateurs de se synchroniser et de collaborer en temps réel sur des données partagées.

Les flux Amazon Cognito permettent aux développeurs de voir et de contrôler les données stockées dans Amazon Cognito. Les développeurs peuvent désormais configurer un flux Kinesis en vue de recevoir des événements lorsque les données sont mises à jour et synchronisées. Amazon Cognito peut transmettre en temps réel une modification de jeu de données à un flux Kinesis que vous possédez.

Les flux Amazon Cognito vous permettent de déplacer vers Kinesis toutes vos données de synchronisation, qui peuvent ensuite être envoyées à un outil d'entrepôt de données comme Amazon Redshift à des fins d'analyse complémentaire. Pour en savoir plus sur Kinesis, consultez Mise en route avec Amazon Kinesis.

Configuration des flux

Vous pouvez configurer les flux Amazon Cognito dans la console Amazon Cognito. Pour activer les flux Amazon Cognito dans la console Amazon Cognito, vous devez sélectionner le flux Kinesis dans lequel effectuer la publication, ainsi qu'un rôle IAM qui autorise Amazon Cognito à placer les événements dans le flux sélectionné.

A partir de la page d'accueil de la console :

  1. Cliquez sur le nom du groupe d'identités pour lequel vous souhaitez configurer des flux Amazon Cognito. La page Dashboard (Tableau de bord) correspondant à votre groupe d'identités s'affiche.

  2. Dans l'angle supérieur droit de la page Dashboard (Tableau de bord), cliquez sur Manage Identity Pools (Gérer les groupes d'identités). La page Gérer les identités fédérées s'ouvre.

  3. Faites défiler l'écran vers le bas et cliquez sur Cognito Streams (Flux Cognito) pour développer cette option.

  4. Dans le menu déroulant Nom de flux, sélectionnez le nom d'un flux Kinesis existant. Vous pouvez également cliquer sur Créer un flux pour en créer un, en saisissant un nom de flux et le nombre de partitions. Pour en savoir sur les partitions et déterminer le nombre de partitions requis pour votre flux, consultez le Manuel du développeur Kinesis.

  5. Dans le menu déroulant Publish role (Publier un rôle), sélectionnez le rôle IAM qui autorise Amazon Cognito à publier votre flux. Cliquez sur Create role (Créer un rôle) afin de créer ou de modifier les rôles associés à votre groupe d'identités dans la console AWS IAM.

  6. Dans le menu déroulant État du flux, sélectionnez Activé pour activer les mises à jour du flux. Cliquez sur Save Changes (Enregistrer les modifications).

Une fois que vous avez configuré les flux Amazon Cognito, toutes les mises à jour ultérieures apportées aux jeux de données de ce groupe d'identités sont envoyées au flux Kinesis.

Contenu du flux

Chaque enregistrement envoyé au flux représente une seule synchronisation. Voici un exemple d'enregistrement envoyé au flux :

{ "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 }

Pour les mises à jour qui dépassent la charge utile maximale de Kinesis de 1 Mo, Amazon Cognito inclut une URL Amazon S3 pré-signée comprenant le contenu total de la mise à jour.

Une fois que vous avez configuré les flux Amazon Cognito, si vous supprimez le flux Kinesis ou modifiez l'autorisation d'approbation de rôle pour qu'Amazon Cognito Sync ne puisse plus endosser ce rôle, vous désactivez les flux Amazon Cognito. Vous devez recréer le flux Kinesis ou corriger le rôle, puis réactiver le flux.

Publication en bloc

Une fois que vous avez configuré les flux Amazon Cognito, vous pouvez exécuter une publication en bloc des données existantes du groupe d'identités. Une fois que vous lancez ce type d'opération via la console ou directement via l'API, Amazon Cognito commence à publier ces données dans le même flux que celui qui reçoit les mises à jour.

Amazon Cognito ne garantit pas l'unicité des données envoyées au flux lors de l'opération de publication en bloc. Vous pouvez recevoir la même mise à jour en tant que mise à jour, ainsi que dans le cadre d'une publication en bloc. Gardez cette information à l'esprit lorsque vous traiterez les enregistrements de votre flux.

Pour publier en bloc tous vos flux, suivez les étapes 1 à 6 décrites dans la section Configuration des flux, puis cliquez sur Start bulk publish. Vous êtes limité à une publication en bloc à tout moment et à une demande de publication en bloc réussie toutes les 24 heures.