Choisir une technologie de traitement de streaming et d’analytique en temps réel sur AzureChoose a real-time analytics and streaming processing technology on Azure

Plusieurs services sont disponibles pour le traitement du streaming et l’analytique en temps réel sur Azure.There are several services available for real-time analytics and streaming processing on Azure. Cet article fournit les informations nécessaires pour déterminer la technologie la mieux adaptée à votre application.This article provides the information you need to decide which technology is the best fit for your application.

Quand utiliser Azure Stream AnalyticsWhen to use Azure Stream Analytics

Azure Stream Analytics est le service recommandé pour l’analytique de flux sur Azure.Azure Stream Analytics is the recommended service for stream analytics on Azure. Il est destiné à un large éventail de scénarios qui incluent, sans s’y limiter, les scénarios suivants :It's meant for a wide range of scenarios that include but aren't limited to:

L’ajout d’un travail Azure Stream Analytics à votre application est le moyen le plus rapide d’obtenir une analytique du streaming opérationnelle, en utilisant le langage SQL que vous connaissez déjà.Adding an Azure Stream Analytics job to your application is the fastest way to get streaming analytics up and running in Azure, using the SQL language you already know. Stream Analytics est un service de travaux. Vous n’êtes donc pas obligé de passer votre temps à gérer des clusters, et les temps d’arrêt ne sont pas un problème grâce au contrat SLA qui propose une disponibilité de 99,9 % des travaux.Azure Stream Analytics is a job service, so you don't have to spend time managing clusters, and you don't have to worry about downtime with a 99.9% SLA at the job level. La facturation est également effectuée au niveau du travail, ce qui rend les coûts de démarrage peu élevés (une seule unité de streaming), mais scalables (jusqu’à 192 unités de streaming).Billing is also done at the job level making startup costs low (one Streaming Unit), but scalable (up to 192 Streaming Units). Il est beaucoup plus économique d’exécuter des travaux Stream Analytics que d’exécuter et de maintenir un cluster.It's much more cost effective to run a few Stream Analytics jobs than it is to run and maintain a cluster.

Azure Stream Analytics fournit une riche expérience prête à l’emploi.Azure Stream Analytics has a rich out-of-the-box experience. Vous pouvez immédiatement tirer parti des fonctionnalités suivantes sans aucune installation supplémentaire :You can immediately take advantage of the following features without any additional setup:

  • Opérateurs temporels intégrés, tels que des agrégations fenêtrées, des jointures temporelles et des fonctions analytiques temporelles.Built-in temporal operators, such as windowed aggregates, temporal joins, and temporal analytic functions.
  • Adaptateurs Azure natifs d’entrée et de sortie.Native Azure input and output adapters
  • Prise en charge de la modification lente des données de référence (également appelées tables de choix), notamment la jonction avec des données de référence géospatiales pour le geofencing.Support for slow changing reference data (also known as a lookup tables), including joining with geospatial reference data for geofencing.
  • Des solutions intégrées, telles que Détection d’anomalies.Integrated solutions, such as Anomaly Detection
  • Plusieurs fenêtres de temps dans la même requête.Multiple time windows in the same query
  • Possibilité de composer plusieurs opérateurs temporels dans des séquences arbitraires.Ability to compose multiple temporal operators in arbitrary sequences.
  • Latence de bout en bout inférieure à 100 ms à partir de l’entrée arrivant à Event Hubs, à la sortie dans Event Hubs, notamment le délai réseau depuis et vers Event Hubs, à haut débit soutenu.Under 100-ms end-to-end latency from input arriving at Event Hubs, to output landing in Event Hubs, including the network delay from and to Event Hubs, at sustained high throughput

Quand utiliser d’autres technologiesWhen to use other technologies

Vous voulez écrire des fonctions définies par l’utilisateur, des agrégats définis par l’utilisateur et des désérialiseurs personnalisés dans un langage autre que JavaScript ou C#You want to write UDFs, UDAs, and custom deserializers in a language other than JavaScript or C#

Azure Stream Analytics prend en charge les fonctions définies par l’utilisateur ou les agrégats définis par l’utilisateur en JavaScript pour les travaux cloud et en C# pour les travaux IoT Edge.Azure Stream Analytics supports user-defined functions (UDF) or user-defined aggregates (UDA) in JavaScript for cloud jobs and C# for IoT Edge jobs. Les désérialiseurs C# définis par l’utilisateur sont également pris en charge.C# user-defined deserializers are also supported. Si vous souhaitez implémenter un désérialiseur, une fonction définie par l’utilisateur ou un agrégat défini par l’utilisateur dans d’autres langages, tels que Java ou Python, vous pouvez utiliser Spark Structured Streaming.If you want to implement a deserializer, a UDF, or a UDA in other languages, such as Java or Python, you can use Spark Structured Streaming. Vous pouvez également exécuter le EventProcessorHost Event Hubs sur vos propres machines virtuelles pour le traitement arbitraire du streaming.You can also run the Event Hubs EventProcessorHost on your own virtual machines to do arbitrary streaming processing.

Votre solution est située dans un environnement incluant plusieurs cloud ou en localYour solution is in a multi-cloud or on-premises environment

Azure Stream Analytics est une technologie propriétaire de Microsoft et est uniquement disponible sur Azure.Azure Stream Analytics is Microsoft's proprietary technology and is only available on Azure. Si vous avez besoin que votre solution soit portable sur les clouds ou localement, envisagez des technologies open source telles que Structured Streaming Spark ou Storm.If you need your solution to be portable across Clouds or on-premises, consider open-source technologies such as Spark Structured Streaming or Storm.

Étapes suivantesNext steps