Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Importante
Questa pagina include istruzioni per la gestione dei componenti Azure IoT Operations usando i manifesti di distribuzione kubernetes, disponibile in ANTEPRIMA. Questa funzionalità viene fornita con diverse limitazioni e non deve essere usata per i carichi di lavoro di produzione.
Vedere le condizioni per l'utilizzo di Supplemental Terms of Use for Microsoft Azure Previews per le condizioni legali applicabili alle funzionalità di Azure disponibili in versione beta, in anteprima o non ancora rilasciate nella disponibilità generale.
Un data flow è il percorso che i dati prendono dall'origine alla destinazione con trasformazioni facoltative. È possibile configurare il data flow creando un Data flow risorsa personalizzata o usando l'interfaccia utente Web dell'esperienza operativa. Un data flow è costituito da tre parti: source, transformation e destination.
flowchart LR
subgraph Source
A[DataflowEndpoint]
end
subgraph BuiltInTransformation
direction LR
Datasets - -> Filter
Filter - -> Map
end
subgraph Destination
B[DataflowEndpoint]
end
Source - -> BuiltInTransformation
BuiltInTransformation - -> Destination
Per definire l'origine e la destinazione, è necessario configurare gli endpoint data flow. La trasformazione è facoltativa e può includere operazioni come l'arricchimento dei dati, il filtro dei dati e il mapping dei dati a un altro campo.
Importante
Ogni flusso di dati deve avere l'endpoint predefinito del broker MQTT locale di Operazioni di Azure IoT come o origine o destinazione.
È possibile usare l'esperienza operativa in Azure IoT Operations per creare un data flow. L'esperienza operativa fornisce un'interfaccia visiva per configurare il data flow. È anche possibile usare Bicep per creare un data flow usando un file Bicep oppure usare Kubernetes per creare un data flow usando un file YAML.
Continuare a leggere per informazioni su come configurare l'origine, la trasformazione e la destinazione.
Prerequisiti
È possibile distribuire i flussi di dati non appena si dispone di un'istanza di Azure IoT Operations usando il profilo e l'endpoint data flow predefiniti. Tuttavia, è possibile configurare i profili di flusso di dati e gli endpoint per personalizzare il flusso di dati.
profilo del flusso di dati
Se non sono necessarie varie impostazioni di scalabilità per i flussi di dati, utilizzare il profilo di flusso di dati predefinito fornito da Azure IoT Operations. Evitare di associare troppi flussi di dati a un singolo profilo di data flow. Se si dispone di un numero elevato di flussi di dati, distribuirli tra più profili data flow per ridurre il rischio di superare il limite di dimensioni di configurazione del profilo data flow pari a 70.
Per informazioni su come configurare un nuovo profilo di data flow, vedere Configurare i profili data flow.
Endpoint del flusso di dati
Sono necessari endpoint di flusso di dati per configurare l'origine e la destinazione del flusso di dati. Per iniziare rapidamente, usare l'endpoint predefinito del flusso di dati per il broker MQTT locale. È anche possibile creare altri tipi di endpoint data flow come Kafka, Hub eventi, OpenTelemetry o Azure Data Lake Storage. Per altre informazioni, vedere Configurare gli endpoint data flow.
Inizia
Quando si hanno i prerequisiti, è possibile iniziare a creare un data flow.
Per creare un flusso di dati in esperienza delle operazioni, selezionare flusso di dati>Crea flusso di dati.
Selezionare il nome segnaposto new-data-flow per impostare le proprietà data flow. Immettere il nome del data flow e scegliere il profilo data flow da usare. Il profilo di data flow predefinito è selezionato per impostazione predefinita. Per altre informazioni sui profili di flusso di dati, vedere Configurare il profilo di flusso di dati.
Importante
È possibile scegliere il profilo data flow solo durante la creazione di un data flow. Non è possibile modificare il profilo di data flow dopo la creazione del data flow. Per modificare il profilo di data flow di un data flow esistente, eliminare il data flow originale e crearne uno nuovo con il nuovo profilo di data flow.
Configurare l'endpoint di origine, trasformazione e destinazione per il data flow selezionando gli elementi nel diagramma data flow.
Vedere le sezioni seguenti per informazioni su come configurare i tipi di operazione del data flow.
Origine
Configurare l'endpoint di origine e le origini dati (argomenti) per il flusso di dati. È possibile usare il broker MQTT predefinito, un asset o un endpoint MQTT o Kafka personalizzato come origine.
Per informazioni complete sulla configurazione, inclusi caratteri jolly dell'argomento MQTT, sottoscrizioni condivise, argomenti Kafka e schema di origine, vedere Configurare un'origine del flusso di dati.
Se non si usa l'endpoint predefinito come origine, è necessario usarlo come destinazione. Per altre informazioni sull'uso dell'endpoint broker MQTT locale, vedere Flussi di dati che devono usare l'endpoint broker MQTT locale.
Richiedere la persistenza del disco
La persistenza del disco mantiene lo stato di elaborazione del flusso di dati tra i riavvii. Per informazioni dettagliate sulla configurazione, vedere Configurare la persistenza del disco.
Trasformazione
L'operazione di trasformazione consente di trasformare i dati dall'origine prima di inviarli alla destinazione. Le trasformazioni sono facoltative. Se non è necessario apportare modifiche ai dati, non includere l'operazione di trasformazione nella configurazione data flow. Più trasformazioni si concatenano in fasi indipendentemente dall'ordine in cui vengono specificate nella configurazione. L'ordine delle fasi è sempre:
- Arricchimento: aggiungere altri dati ai dati di origine in base a un set di dati e a una condizione per la corrispondenza.
- Filtro: filtra i dati in base a una condizione.
- Mappa, Calcola, Rinomina, o aggiungi una Nuova proprietà: sposta dati da un campo ad un altro con una conversione opzionale.
Questa sezione presenta un'introduzione alle trasformazioni data flow. Per informazioni più dettagliate, vedere Eseguire il mapping dei dati usando flussi di dati e Arricchire i dati usando i flussi di dati.
Nell'esperienza operativa selezionare Data flow>Aggiungi trasformazione (facoltativo).
Arricchire: Aggiungere dati di riferimento
Per arricchire i dati, aggiungere prima un set di dati di riferimento nell'archivio Azure IoT Operations state. Il set di dati aggiunge dati aggiuntivi ai dati di origine in base a una condizione. La condizione viene specificata come campo nei dati di origine che corrispondono a un campo nel set di dati.
È possibile caricare dati di esempio nell'archivio stati usando l'interfaccia della riga di comando state store. I nomi delle chiavi nell'archivio stati corrispondono a un set di dati nella configurazione data flow.
Attualmente, la fase Enrich non è supportata nell'esperienza operativa.
Se il set di dati ha un record con il campo asset, simile al seguente:
{
"asset": "thermostat1",
"location": "room1",
"manufacturer": "Contoso"
}
I dati dell'origine con il campo deviceId corrispondente a thermostat1 hanno i campi location e manufacturer disponibili nelle fasi di filtro e mappa.
Per altre informazioni sulla sintassi delle condizioni, vedere Arricchire i dati tramite flussi di dati
Filtro: filtrare i dati in base a una condizione
Usare la fase di filtro per eliminare i messaggi che non soddisfano una condizione. È possibile definire più regole di filtro con campi di input ed espressioni booleane.
Per informazioni complete sulla configurazione ed esempi, vedere Filtrare i dati in un flusso di dati.
Mappa: spostare i dati da un campo a un altro
Per eseguire il mapping dei dati a un altro campo con conversione facoltativa, usare l'operazione map . Specificare la conversione come formula che utilizza i campi nei dati di origine.
Nell'esperienza operativa è attualmente possibile mappare i dati utilizzando le trasformazioni Compute, Rinomina e Nuova proprietà.
Calcolo
Usare la trasformazione Calcolo per applicare una formula ai dati di origine. Questa operazione applica una formula ai dati di origine e archivia il risultato in un campo.
In Trasforma (facoltativo), selezionare Calcola>Aggiungi.
Immettere le impostazioni necessarie.
Impostazione Descrizione Selezionare la formula Scegliere una formula esistente dall'elenco a discesa o selezionare Personalizzato per immetterne una manualmente. Risultato Specificare il nome visualizzato dell'output per il risultato. Formula Immettere la formula da applicare ai dati di origine. Descrizione Specificare una descrizione per la trasformazione. Ultimo valore noto Facoltativamente, è possibile usare l'ultimo valore noto nel caso in cui il valore corrente non fosse disponibile. Immettere o modificare una formula nel campo Formula . La formula può utilizzare i campi nei dati di origine. Immettere
@o selezionare CTRL+SPAZIO per scegliere i punti dati da un elenco a discesa. Per le formule predefinite, selezionare il segnaposto<dataflow>per visualizzare l'elenco dei punti dati disponibili.Immettere le proprietà dei metadati MQTT usando il formato
@$metadata.user_properties.<property>o@$metadata.topic. Immettere le intestazioni $metadata usando il formato@$metadata.<header>. La sintassi$metadataè necessaria solo per le proprietà MQTT che fanno parte dell'intestazione del messaggio. Per altre informazioni, vedere riferimenti ai campi.La formula può utilizzare i campi nei dati di origine. Ad esempio, è possibile usare il campo
temperaturenei dati di origine per convertire la temperatura in Celsius e archiviarla nel campo di outputtemperatureCelsius.Selezionare Applica.
Rinominare
Utilizzare la trasformazione Rinomina per rinominare un punto dati. Questa operazione rinomina un punto dati nei dati di origine in un nuovo nome. Usare il nuovo nome nelle fasi successive del flusso di dati.
In Trasforma (facoltativo), selezionare Rinomina>Aggiungi.
Immettere le impostazioni necessarie.
Impostazione Descrizione Punto Dati Selezionare un punto dati dall'elenco a discesa o immettere un'intestazione $metadata. Nuovo nome del punto dati Immettere il nuovo nome per il punto dati. Descrizione Specificare una descrizione per la trasformazione. Immettere le proprietà dei metadati MQTT usando il formato
@$metadata.user_properties.<property>o@$metadata.topic. Immettere le intestazioni $metadata usando il formato@$metadata.<header>. La sintassi$metadataè necessaria solo per le proprietà MQTT che fanno parte dell'intestazione del messaggio. Per altre informazioni, vedere riferimenti ai campi.Selezionare Applica.
Nuova proprietà
Utilizzare la trasformazione Nuova proprietà per aggiungere una nuova proprietà ai dati di origine. Questa operazione aggiunge una nuova proprietà ai dati di origine. Utilizzare la nuova proprietà nelle fasi successive del data flow.
In Trasforma (facoltativo), selezionare Nuova proprietà>Aggiungi.
Immettere le impostazioni necessarie.
Impostazione Descrizione Chiave proprietà Immettere la chiave per la nuova proprietà. Valore proprietà Immettere il valore per la nuova proprietà. Descrizione Specificare una descrizione per la nuova proprietà. Selezionare Applica.
Per altre informazioni, vedere Eseguire il mapping dei dati usando i flussi di dati.
Rimuovi
Per impostazione predefinita, lo schema di output include tutti i punti dati. Rimuovere qualsiasi punto dati dalla destinazione usando la trasformazione Rimuovi .
In Trasforma (facoltativo) selezionare Rimuovi.
Selezionare il punto dati da rimuovere dallo schema di output.
Selezionare Applica.
Per altre informazioni, vedere Eseguire il mapping dei dati usando i flussi di dati.
Serializzare i dati in base a uno schema
Se si desidera serializzare i dati prima di inviarli alla destinazione, specificare uno schema e un formato di serializzazione. Per informazioni dettagliate, vedere Serializzare l'output con uno schema.
Destinazione
Configurare l'endpoint di destinazione e la destinazione dati (argomento, contenitore o tabella) per il flusso di dati. È possibile usare qualsiasi tipo di endpoint supportato come destinazione, tra cui MQTT, Kafka, Azure Data Lake Storage, Microsoft Fabric, Esplora dati di Azure e archiviazione locale.
Per informazioni complete sulla configurazione, tra cui la tabella di destinazione dei dati, gli argomenti relativi alla destinazione dinamica e la serializzazione dell'output, vedere Configurare una destinazione del flusso di dati.
Per inviare dati a una destinazione diversa dal broker MQTT locale, creare un endpoint data flow. Per informazioni su come, vedere Configurare gli endpoint data flow.
Importante
gli endpoint Storage richiedono un schema per la serializzazione. Per usare data flow con Microsoft Fabric OneLake, Azure Data Lake Storage, Azure Data Explorer o Storage locale, è necessario specificare un riferimento allo schema.
Esempio
L'esempio seguente è una configurazione data flow che usa l'endpoint MQTT per l'origine e la destinazione. L'origine filtra i dati dal topic MQTT azure-iot-operations/data/thermostat. La trasformazione converte la temperatura in Fahrenheit e filtra i dati in cui la temperatura moltiplicata per l'umidità è minore di 100000. La destinazione invia i dati all'argomento MQTT factory.
Per altri esempi di configurazioni di data flow, vedere Azure API REST - Data flow e quickstart Bicep.
Verificare che un data flow funzioni
Per verificare che il data flow funzioni, seguire Tutorial: ponte MQTT bidirezionale per Azure Event Grid.
Esportare configurazione del flusso di dati
Per esportare la configurazione del flusso di dati, utilizzare l’esperienza operativa o esportare la risorsa personalizzata del flusso di dati.
Selezionare il data flow da esportare, quindi selezionare Export dalla barra degli strumenti.
Configurazione data flow corretta
Per assicurarsi che il data flow funzioni come previsto, verificare le condizioni seguenti:
- L'endpoint MQTT data flow predefinito deve essere utilizzato come origine o destinazione.
- Il profilo data flow esiste ed è referenziato nella configurazione del flusso di dati.
- L'origine è un endpoint MQTT, un endpoint Kafka o un asset. Non è possibile usare endpoint di tipo storage come origine.
- Quando si usa Griglia di eventi come origine, si imposta il numero di istanze del profilo del flusso di dati su 1 perché il broker MQTT di Griglia di eventi non supporta le sottoscrizioni condivise.
- Quando si usano Hub eventi come origine, ogni hub eventi nello spazio dei nomi è un argomento Kafka separato ed è necessario specificare ognuno come origine dati.
- La trasformazione, se usata, viene configurata con la sintassi corretta, incluso l'escape corretto di caratteri speciali.
- Quando si usano endpoint di tipo storage come destinazione, viene specificato un schema.
- Quando si usano argomenti di destinazione dinamici per gli endpoint MQTT, assicurarsi che le variabili dell'argomento facciano riferimento a segmenti validi.