Utilisation AWS Lambda avec les flux de modifications - Amazon DocumentDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation AWS Lambda avec les flux de modifications

Amazon DocumentDB est intégré AWS Lambda afin que vous puissiez utiliser les fonctions Lambda pour traiter les enregistrements dans un flux de modifications. Le mappage des sources d'événements Lambda est une ressource qui peut être utilisée pour appeler des fonctions Lambda afin de traiter les événements Amazon DocumentDB qui n'invoquent pas directement Lambda. Avec Amazon DocumentDB change stream comme source d'événements, vous pouvez créer des applications pilotées par les événements qui répondent aux modifications de vos données. Par exemple, vous pouvez utiliser les fonctions Lambda pour traiter de nouveaux documents, suivre les mises à jour de documents existants ou enregistrer les documents supprimés.

Vous pouvez configurer un mappage de source d'événements pour envoyer des enregistrements depuis votre flux de modifications Amazon DocumentDB vers une fonction Lambda. Les événements peuvent être envoyés un par un ou groupés pour une meilleure efficacité et seront traités dans l'ordre. Vous pouvez configurer le comportement de traitement par lots de votre mappage de sources d'événements en fonction d'une durée de fenêtre temporelle spécifique (0 à 300 secondes) ou d'un nombre d'enregistrements par lots (limite maximale de 10 000 enregistrements). Vous pouvez créer plusieurs mappages de sources d'événements pour traiter les mêmes données avec plusieurs fonctions Lambda, ou pour traiter des éléments distincts provenant de plusieurs flux avec une seule fonction.

Si votre fonction renvoie une erreur, Lambda réessaie le lot jusqu'à ce qu'il soit traité avec succès. Si les événements du flux de modifications ont expiré, Lambda désactivera le mappage des sources d'événements. Dans ce cas, vous pouvez créer un nouveau mappage des sources d'événements et le configurer avec la position de départ de votre choix. Les mappages de sources d’événements Lambda traitent les événements au moins une fois en raison de la nature distribuée de ses pollers. Par conséquent, votre fonction Lambda peut recevoir des événements dupliqués dans de rares situations. Suivez les meilleures pratiques d'utilisation des AWS Lambda fonctions et créez des fonctions idempotentes pour éviter les problèmes liés aux événements dupliqués. Pour plus d'informations, consultez la section Utilisation AWS Lambda console avec Amazon DocumentDB dans le manuel du AWS Lambda développeur.

Afin de respecter les bonnes pratiques en matière de performances, la fonction Lambda doit être de courte durée. Pour éviter d'introduire des retards de traitement inutiles, elle ne doit pas non plus exécuter de logique complexe. Pour un flux à haute vitesse en particulier, il est préférable de déclencher des flux de travail asynchrones avec des fonctions de post-traitement par étapes plutôt que des Lambdas synchrones de longue durée. Pour plus d'informations AWS Lambda, consultez le guide du AWS Lambda développeur.

Limites

Les limites suivantes sont à prendre en compte lors de l'utilisation d'Amazon DocumentDB et : AWS Lambda

  • AWS Lambda est actuellement pris en charge uniquement sur Amazon DocumentDB 4.0 et 5.0.

  • AWS Lambda n'est actuellement pas pris en charge sur les clusters élastiques ou les clusters globaux.

  • AWS Lambda la taille de la charge utile ne peut pas dépasser 6 Mo. Pour plus d'informations sur les tailles de lots Lambda, consultez la section « Comportement du traitement par lots » dans la section Mappages des sources d'événements Lambda du Guide du développeur.AWS Lambda