Introduction
Aujourd'hui, les entreprises reçoivent des données à une échelle et à une vitesse considérables en raison de la croissance explosive des sources de données qui génèrent des flux continus. Qu'il s'agisse de données de journaux provenant de serveurs d'applications, de données de parcours de navigation provenant de sites Web et d'applications mobiles ou de données de télémétrie provenant d'appareils connectés à l'Internet des objets (IoT), elles contiennent toutes des informations qui peuvent vous aider à savoir ce que font vos clients, vos applications et vos produits en ce moment même.
Avoir la capacité de traiter et d'analyser ces données en temps réel est essentiel pour effectuer des tâches telles que la surveillance continue de vos applications. Cela vous permet d'assurer une disponibilité élevée du service et de personnaliser les offres promotionnelles et les recommandations de produits. Le traitement en temps réel et quasi réel peut également rendre d'autres cas d'utilisation courants (tels que l'analyse de sites Web et le Machine Learning) plus précis et exploitables en mettant les données à la disposition de ces applications en quelques secondes ou quelques minutes au lieu de plusieurs heures ou plusieurs jours.
Scénarios d'application en temps réel et quasi réel
Vous pouvez utiliser les services de données de streaming pour des applications en temps réel et quasi réel, notamment la surveillance des applications, la détection des fraudes et les classements dynamiques. Les cas d'utilisation en temps réel nécessitent des temps de latence de bout en bout de l'ordre de quelques millisecondes, depuis l'ingestion jusqu'au traitement en passant par l'émission des résultats vers les magasins de données cibles et d'autres systèmes. Par exemple, Netflix utilise Amazon Kinesis Data Streams
Les cas d'utilisation courants en temps quasi réel comprennent l'analyse des magasins de données pour la science des données et le Machine Learning (ML). Vous pouvez utiliser des solutions de données de streaming pour charger en continu des données en temps réel dans vos lacs de données. Vous pouvez ensuite mettre à jour plus fréquemment les modèles de Machine Learning à mesure que de nouvelles données sont disponibles, pour des résultats plus fiables et plus précis. Par exemple, Zillow utilise Kinesis Data Streams pour collecter les données d'enregistrement public et de multiples listes de services d'annonces (MLS), puis fournir aux acheteurs et aux vendeurs de maisons les estimations les plus récentes de la valeur des maisons en temps quasi réel. ZipRecruiter utilise Amazon MSK
Différence entre traitement par lots et en streaming
Pour collecter, préparer et traiter des données de streaming en temps réel, vous avez besoin d'un ensemble d'outils différents de ceux que vous utilisez traditionnellement pour l'analyse par lots. Avec l'analytique traditionnelle, vous collectez les données, les chargez périodiquement dans une base de données pour les analyser des heures, des jours ou des semaines plus tard. L'analyse des données en temps réel nécessite une approche différente. Les applications de traitement en streaming traitent les données en continu et en temps réel, avant même qu'elles ne soient stockées. Les données de streaming peuvent arriver à un rythme effréné et les volumes de données peuvent varier à la hausse ou à la baisse à tout moment. Les plateformes de traitement des données de streaming doivent être capables de gérer la vitesse et la variabilité des données entrantes et de les traiter au fur et à mesure qu'elles arrivent, souvent par millions voire centaines de millions d'événements par heure.