Sortie Azure Functions d’Azure Stream AnalyticsAzure Functions output from Azure Stream Analytics

Azure Functions est un service de calcul serverless que vous pouvez utiliser pour exécuter du code à la demande sans configurer ou gérer l’infrastructure explicitement.Azure Functions is a serverless compute service that you can use to run code on-demand without having to explicitly provision or manage infrastructure. Grâce à ce service, vous pouvez implémenter le code qui est déclenché par les événements qui se produisent dans Azure ou des services partenaires.It lets you implement code that's triggered by events occurring in Azure or partner services. Comme Azure Functions peut répondre à des déclencheurs, il constitue l’outil de sortie logique pour Azure Stream Analytics.This ability of Azure Functions to respond to triggers makes it a natural output for Azure Stream Analytics. Cet adaptateur de sortie permet aux utilisateurs de connecter Stream Analytics à Azure Functions et d’exécuter un script ou un fragment de code en réaction à différents événements.This output adapter enables users to connect Stream Analytics to Azure Functions, and run a script or piece of code in response to a variety of events.

La sortie Azure Functions de Stream Analytics n’est pas disponible dans les régions Azure - Chine 21Vianet et Azure - Allemagne (T-Systems International).Azure Functions output from Stream Analytics is not available in the Azure China 21Vianet and Azure Germany (T-Systems International) regions. Il n’est pas non plus possible d’établir une connexion à Azure Functions au sein d’un réseau virtuel à partir d’une tâche Stream Analytics qui s’exécute dans un cluster multilocataire.Connection to Azure Functions inside a virtual network (VNet) from an Stream Analytics job that is running in a multi-tenant cluster is also not supported.

Azure Stream Analytics appelle Azure Functions via des déclencheurs HTTP.Azure Stream Analytics invokes Azure Functions via HTTP triggers. L’adaptateur de sortie Azure Functions est disponible, avec les propriétés configurables suivantes :The Azure Functions output adapter is available with the following configurable properties:

Nom de la propriétéProperty name DescriptionDescription
Conteneur de fonctionsFunction app Nom de votre application Azure Functions.The name of your Azure Functions app.
FonctionFunction Nom de la fonction dans votre application Azure Functions.The name of the function in your Azure Functions app.
CléKey Si vous souhaitez utiliser une fonction Azure à partir d’un autre abonnement, vous pouvez le faire en fournissant la clé permettant d’accéder à votre fonction.If you want to use an Azure Function from another subscription, you can do so by providing the key to access your function.
Taille de lot maximaleMax batch size Propriété qui peut être utilisée pour définir la taille maximale de chaque lot de sortie qui est envoyé à votre fonction Azure.A property that lets you set the maximum size for each output batch that's sent to your Azure function. L’unité d’entrée est exprimée en octets.The input unit is in bytes. Par défaut, cette valeur est définie sur 262 144 Ko (256 Ko).By default, this value is 262,144 bytes (256 KB).
Nombre maximal de lotsMax batch count Propriété qui vous permet de spécifier le nombre maximal d’événements dans chaque lot envoyé à Azure Functions.A property that lets you specify the maximum number of events in each batch that's sent to Azure Functions. La valeur par défaut est 100.The default value is 100.

Azure Stream Analytics attend l’état HTTP 200 de l’application Functions pour les lots traités avec succès.Azure Stream Analytics expects HTTP status 200 from the Functions app for batches that were processed successfully.

Lorsqu’Azure Stream Analytics reçoit une erreur 413 (qui indique que l’entité de requête HTTP est trop volumineuse) de la part d’une fonction Azure, il réduit la taille des lots envoyés à Azure Functions.When Azure Stream Analytics receives a 413 ("http Request Entity Too Large") exception from an Azure function, it reduces the size of the batches that it sends to Azure Functions. Dans le code de votre fonction Azure, utilisez cette exception pour vous assurer qu'Azure Stream Analytics n'envoie pas de lots trop volumineux.In your Azure function code, use this exception to make sure that Azure Stream Analytics doesn't send oversized batches. Vérifiez également que les valeurs de taille et de nombre de lots maximum utilisées dans la fonction correspondent à celles qui ont été saisies dans le portail Stream Analytics.Also, make sure that the maximum batch count and size values used in the function are consistent with the values entered in the Stream Analytics portal.

Notes

Lors du test de la connexion, Stream Analytics envoie un lot vide à Azure Functions pour s’assurer que la connexion entre les deux fonctionne.During test connection, Stream Analytics sends an empty batch to Azure Functions to test if the connection between the two works. Assurez-vous que votre Function App gère les demandes de lots vides pour vérifier si la connexion de test est bien établie.Make sure that your Functions app handles empty batch requests to make sure test connection passes.

De plus, si aucun événement n’est signalé dans le temps imparti, aucune sortie n’est générée.Also, in a situation where there's no event landing in a time window, no output is generated. De ce fait, la fonction computeResult n’est pas appelée.As a result, the computeResult function isn't called. Ce comportement est cohérent avec les fonctions d’agrégation fenêtrées intégrées.This behavior is consistent with the built-in windowed aggregate functions.

PartitionnementPartitioning

La clé de partition est basée sur la clause PARTITION BY dans la requête.The partition key is based on the PARTITION BY clause in the query. Le nombre d’enregistreurs de sortie suit le partitionnement d’entrée de requêtes entièrement mises en parallèle .The number of output writers follows the input partitioning for fully parallelized queries.

Taille de lot de sortieOutput batch size

Taille de lot par défaut : 262 144 Ko (256 Ko).The default batch size is 262,144 bytes (256 KB). Nombre d’événements par défaut par lot : 100.The default event count per batch is 100. La taille de lot, configurable, peut être augmentée ou diminuée dans les options de sortie de Stream Analytics.The batch size is configurable and can be increased or decreased in the Stream Analytics output options.

Étapes suivantesNext steps