Analyse en temps différé
Parmi tous les exemples que nous avons étudiés, nombreux sont ceux qui font appel à des fonctions asynchrones. De plus, analyser plusieurs vidéos peut nécessiter plusieurs heures de calcul avant d’obtenir des résultats. Si vous procédez à l’étiquetage de nombreuses images ou vidéos, ou à la traduction de nombreux textes, il peut être intéressant de planifier ces tâches et de les laisser s’exécuter en arrière-plan, pour en récupérer les résultats plus tard.
On sort alors d’un environnement temps réel ou quasi temps réel que nous avons vu jusqu’à maintenant pour entrer dans celui des traitements par lot. Le service BatchBatch est là pour ça : lancer un traitement de calculs et pouvoir en consulter le résultat ultérieurement. Même si le service mérite un chapitre, voire un livre entier, je vais ici me concentrer sur une utilisation simple dans le cadre de traitements d’images par Rekognition et de l’écriture du résultat sous la forme de fichier texte. Le fonctionnement de Batch est en effet relativement simple à comprendre et l’exemple choisi ici pourra être adapté à d’autres cas identiques.
Batch est souvent utilisé conjointement avec d’autres services comme Lambda ou ElasticSearch. Un exemple d’une telle interaction est donné...