Configurer un index de source de point de terminaison HTTP dans un pipeline de la préversion du Processeur de données Azure IoT
Important
Opérations Azure IoT (préversion) – activé parc Azure Arc est actuellement en PRÉVERSION. Vous ne devez pas utiliser ce logiciel en préversion dans des environnements de production.
Pour connaître les conditions juridiques qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou plus généralement non encore en disponibilité générale, consultez l’Avenant aux conditions d’utilisation des préversions de Microsoft Azure.
L’étape source est la première étape requise dans un pipeline Processeur de données Azure IoT (préversion). L’étape source obtient des données dans le pipeline de traitement des données et la prépare pour un traitement ultérieur. L’étape source du point de terminaison HTTP vous permet de lire des données à partir d’un point de terminaison HTTP à un intervalle défini par l’utilisateur. L’étape a un corps de requête facultatif et reçoit une réponse du point de terminaison.
Dans la phase source, vous définissez :
- Détails de connexion au point de terminaison HTTP.
- Intervalle auquel appeler le point de terminaison HTTP. L’étape attend une réponse avant de réinitialiser le minuteur d’intervalle.
- Configuration de partitionnement basée sur vos besoins spécifiques en matière de traitement des données.
Prérequis
- Une instance déployée du processeur de données Azure IoT en préversion qui inclut le composant Data Processor facultatif.
- Un point de terminaison HTTP avec toutes les données brutes nécessaires disponibles est opérationnel et accessible.
Configurer la source du point de terminaison HTTP
Pour configurer la source du point de terminaison HTTP :
- Fournissez des détails sur le point de terminaison HTTP. Cette configuration inclut la méthode, l’URL et la charge utile de requête à utiliser.
- Spécifiez la méthode d'authentification. Actuellement limité à l’authentification basée sur le nom d’utilisateur/mot de passe ou l’authentification basée sur l’en-tête.
Le tableau suivant décrit les paramètres de configuration source du point de terminaison HTTP:
Champ | Type | Description | Obligatoire | Par défaut | Exemple |
---|---|---|---|---|---|
Nom | Chaîne | Nom visible par le client pour l’étape source. | Requis | NA | erp-endpoint |
Description | Chaîne | Description visible par le client de l’étape source. | Facultatif | NA | Enterprise application data |
Méthode | Enum | Méthode HTTP à utiliser pour les requêtes. Soit GET ou POST |
Facultatif | GET |
GET |
URL | Chaîne | L’URL à utiliser pour les demandes. Tant http que https sont pris en charge. |
Requis | NA | https://contoso.com/some/url/path |
Authentification | Type d'authentification | La méthode d’authentification pour la requête HTTP. Soit : None , Username/Password , ou Header . |
Facultatif | NA |
Username/Password |
Nom d’utilisateur/mot de passe > Nom d’utilisateur | Chaîne | Nom d’utilisateur de l’authentification par nom d’utilisateur/mot de passe | Oui | N/D | myuser |
Nom d’utilisateur/mot de passe > secret | Référence au mot de passe stocké dans Azure Key Vault. | Oui | Oui | AKV_USERNAME_PASSWORD |
|
Clé > de l’en-tête | Chaîne | Nom de la clé pour l’authentification basée sur l’en-tête. | Oui | N/D | Authorization |
Valeur > de l’en-tête | Chaîne | Nom des informations d’identification dans Azure Key Vault pour l’authentification basée sur l’en-tête. | Oui | N/D | AKV_PASSWORD |
Format de données | Format | Format de données des données entrantes | Requis | NA | {"type": "json"} |
Corps de la requête API > | Chaîne | Corps de la requête statique à envoyer avec la requête HTTP. | Facultatif | NA | {"foo": "bar"} |
Requêtes d’API > d’en tête | Paires clé/valeur | En-têtes de requête statiques à envoyer avec la requête HTTP. | Facultatif | NA | [{"key": {"type":"static", "value": "asset"}, "value": {"type": "static", "value": "asset-id-0"}} ] |
Intervalle des requêtes | Durée | Représentation sous forme de chaîne du temps d’attente avant l’appel d’API suivant. | Requis | 10s |
24h |
Partitionnement | Partitionnement | Configuration du partitionnement pour l’étape source. | Requis | NA | Consultez Partitionnement |
Pour en savoir plus sur les secrets, consultez Gérer les secrets pour votre déploiement de la préversion d’Opérations Azure IoT.
Sélectionner le format de données
Dans un pipeline de processeur de données, le champ format dans l’étape source spécifie comment désérialiser les données entrantes. Par défaut, le pipeline processeur de données utilise le format raw
qui signifie qu’il ne convertit pas les données entrantes. Pour utiliser de nombreuses fonctionnalités de processeur de données telles que les étapes Filter
ou Enrich
dans un pipeline, vous devez désérialiser vos données à l’étape d’entrée. Vous pouvez choisir de désérialiser vos données entrantes à partir des formats JSON
, jsonStream
, MessagePack
, CBOR
, CSV
ou Protobuf
dans un message lisible par le processeur de données afin d’utiliser la fonctionnalité complète du processeur de données.
Les tableaux suivants décrivent les différentes options de configuration de désérialisation :
Champ | Description | Obligatoire | Default | Valeur |
---|---|---|---|---|
Format de données | Type du format de données. | Oui | Raw |
Raw JSON jsonStream MessagePack CBOR CSV Protobuf |
Le champ Data Format
est obligatoire et sa valeur détermine les autres champs requis.
Pour désérialiser les messages CSV, vous devez également spécifier les champs suivants :
Champ | Description | Obligatoire | Valeur | Exemple |
---|---|---|---|---|
En-tête | Indique si les données CSV incluent une ligne d’en-tête. | Oui | Yes No |
No |
Nom | Nom de la colonne au format CSV | Oui | - | temp , asset |
Chemin d’accès | Le chemin d’accès jq dans le message où les informations de colonne sont ajoutées. | Non | - | Le chemin jq par défaut est le nom de colonne |
Type de données | Type de données des données de la colonne et façon dont elles sont représentées à l’intérieur du pipeline du processeur de données. | Non | String , Float , Integer , Boolean , Bytes |
Valeur par défaut : String |
Pour désérialiser les messages Protobuf, vous devez également spécifier les champs suivants :
Champ | Description | Obligatoire | Valeur | Exemple |
---|---|---|---|---|
Descripteur | Descripteur codé en base64 pour la définition protobuf. | Oui | - | Zhf... |
Message | Nom du type de message utilisé pour mettre en forme les données. | Oui | - | pipeline |
Package | Nom du package dans le descripteur où le type est défini. | Oui | - | schedulerv1 |
Remarque
Le processeur de données ne prend en charge qu’un seul type de message dans chaque fichier .proto.
Configurer le partitionnement
Le partitionnement dans un pipeline divise les données entrantes en partitions distinctes. Le partitionnement permet le parallélisme des données dans le pipeline, ce qui peut améliorer le débit et réduire la latence. Les stratégies de partitionnement affectent la façon dont les données sont traitées dans les autres étapes du pipeline. Par exemple, la dernière étape de valeur connue et l’étape d’agrégation fonctionnent sur chaque partition logique.
Pour partitionner vos données, spécifiez une stratégie de partitionnement et le nombre de partitions à utiliser :
Champ | Description | Obligatoire | Par défaut | Exemple |
---|---|---|---|---|
Type de partition | Type de partitionnement à utiliser : partition ID ou partition Key |
Requis | ID |
ID |
Expression de partition | L’expression jq à utiliser sur le message entrant pour calculer la partition ID ou la partition Key |
Requis | 0 |
.payload.header |
Nombre de partitions | Nombre de partitions dans un pipeline de processeur de données. | Requis | 1 |
1 |
L’étape source applique l’expression de partitionnement au message entrant pour calculer la partition ID
ou Key
.
Le processeur de données ajoute des métadonnées supplémentaires au message entrant. Pour comprendre comment spécifier correctement l’expression de partitionnement qui s’exécute sur le message entrant, consultez vue d’ensemble de la structure des messages du processeur de données. Par défaut, l’expression de partitionnement est définie sur 0
avec le Type de partition sur ID
pour envoyer toutes les données entrantes à une seule partition.
Pour obtenir des suggestions et en savoir plus, consultez Qu’est-ce que le partitionnement ?.
Contenu connexe
Commentaires
https://aka.ms/ContentUserFeedback.
Prochainement : Tout au long de l'année 2024, nous supprimerons progressivement les GitHub Issues en tant que mécanisme de retour d'information pour le contenu et nous les remplacerons par un nouveau système de retour d'information. Pour plus d’informations, voir:Soumettre et afficher des commentaires pour