Configurare una fase di origine InfluxDB v2
Importante
Anteprima delle operazioni di Azure IoT: abilitata da Azure Arc è attualmente disponibile in ANTEPRIMA. Non è consigliabile usare questo software di anteprima negli ambienti di produzione.
Vedere le condizioni per l'utilizzo supplementari per le anteprime di Microsoft Azure per termini legali aggiuntivi che si applicano a funzionalità di Azure in versione beta, in anteprima o in altro modo non ancora disponibili a livello generale.
La fase di origine è la prima e obbligatoria in una pipeline di Azure IoT Data Processor (anteprima). La fase di origine recupera i dati nella pipeline di elaborazione dati e lo prepara per un'ulteriore elaborazione. La fase di origine InfluxDB consente di leggere i dati da un database InfluxDB v2 a un intervallo definito dall'utente.
Nella fase di origine si definiscono:
- Dettagli della connessione per InfluxDB v2.
- Intervallo in cui eseguire una query sul database InfluxDB. La fase attende un risultato prima di reimpostare il timer dell'intervallo.
- Configurazione del partizionamento in base ai requisiti specifici per l'elaborazione dei dati.
Prerequisiti
- Istanza distribuita di Azure IoT Data Processor Preview che include il componente facoltativo responsabile del trattamento dei dati.
- Un database InfluxDB con tutti i dati non elaborati necessari è operativo e raggiungibile.
Preparare il database Influx
Per connettersi al database InfluxDB, è necessario:
- Creare un token di accesso che concede alla pipeline l'accesso in lettura al database InfluxDB. Per altre informazioni, vedere Gestire i token API.
- Creare un segreto in Azure Key Vault che contiene il token di accesso. Per altre informazioni, vedere Gestire i segreti per la distribuzione di Operazioni IoT di Azure.
Configurare l'origine InfluxDB
Per configurare l'origine InfluxDB:
- Specificare i dettagli del database InfluxDB. Questa configurazione include il nome del server e una query per recuperare i dati.
- Specificare il metodo di autenticazione. Attualmente, è possibile usare solo l'autenticazione del token di accesso.
La tabella seguente descrive i parametri di configurazione dell'origine InfluxDB:
Lo schema di base della configurazione di input è costituito da:
Campo | Tipo | Description | Obbligatorio? | Default | Esempio |
---|---|---|---|---|---|
Nome | string | Nome visibile al cliente per la fase di origine. | Richiesto | ND | erp-database |
Descrizione | Stringa | Descrizione visibile al cliente della fase di origine. | Facoltativo | ND | Enterprise database |
Database URL | String | URL del database InfluxDB | Sì | https://contoso.com/some/url/path |
|
Porta del database | Intero | Porta del database InfluxDB | No | 443 | 443 |
Organizzazione | String | L'organizzazione che contiene il bucket da cui eseguire una query | Sì | test-org |
test-org |
Autenticazione | Tipo di autenticazione | Metodo di autenticazione per la connessione al server. Supporta accessToken solo il tipo. |
Sì | {"type": "accessToken"} |
{"type": "accessToken"} |
Segreto | String | Riferimento al token archiviato in Azure Key Vault. | Sì | Sì | AKV_ACCESS_TOKEN |
Query Flux | String | Query InfluxDB | Sì | {"expression": 'from(bucket:"test-bucket")\|> range(start: -1h) \|> filter(fn: (r) => r._measurement == "stat")'} |
|
Intervallo di query | Durata | Rappresentazione di stringa del tempo di attesa prima della chiamata API successiva. | Sì | 24h |
|
Formato dati | Formato | La fase applica il formato alle singole righe recuperate dalla query. È supportato solo il json formato. Il livello path principale non è supportato. |
Sì | {"type": "json"} |
|
Partizionamento | Partizionamento | Configurazione del partizionamento per la fase di origine. | Richiesto | ND | Vedere partizionamento |
Configurare il partizionamento
Il partizionamento in una pipeline divide i dati in ingresso in partizioni separate. Il partizionamento consente il parallelismo dei dati nella pipeline, che può migliorare la velocità effettiva e ridurre la latenza. Le strategie di partizionamento influiscono sul modo in cui i dati vengono elaborati nelle altre fasi della pipeline. Ad esempio, l'ultima fase del valore noto e la fase di aggregazione operano su ogni partizione logica.
Per partizionare i dati, specificare una strategia di partizionamento e il numero di partizioni da usare:
Campo | Descrizione | Richiesto | Valore predefinito | Esempio |
---|---|---|---|---|
Tipo di partizione | Tipo di partizionamento da usare: Partizione ID o Partizione Key |
Richiesto | ID |
ID |
Espressione di partizione | Espressione jq da usare nel messaggio in ingresso per calcolare la partizione ID o la partizione Key |
Richiesto | 0 |
.payload.header |
Numero di partizioni | Numero di partizioni in una pipeline del responsabile del trattamento dei dati. | Richiesto | 1 |
1 |
Il responsabile del trattamento dei dati aggiunge metadati al messaggio in arrivo. Per informazioni su come specificare correttamente l'espressione di partizionamento eseguita nel messaggio in arrivo, vedere Panoramica della struttura dei messaggi del responsabile del trattamento dei dati. Per impostazione predefinita, l'espressione di partizionamento è impostata su 0
con il tipo di partizione per ID
inviare tutti i dati in ingresso a una singola partizione.
Per consigli e per altre informazioni, vedere Che cos'è il partizionamento?
Configurazione di esempio
L'esempio JSON seguente mostra una configurazione completa della fase di origine InfluxDB:
{
"displayName": "InfluxDB v2 - ec8750",
"type": "input/influxdbv2@v1",
"query": {
"expression": "from(bucket:\\\"test-bucket\\\") |> range(start: -1h) |> filter(fn: (r) => r._measurement == \\\"stat\\\")"
},
"url": "https://contoso.com/some/url/path",
"interval": "5s",
"port": 443,
"organization": "test-org",
"format": {
"type": "json"
},
"partitionCount": 1,
"partitionStrategy": {
"type": "id",
"expression": "0"
},
"authentication": {
"type": "accessToken",
"accessToken": "AKV_ACCESS_TOKEN"
},
"description": "Example InfluxDB source stage"
}
Contenuto correlato
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per