Procedure consigliate per la libreria di inserimento Kusto
Si applica a: ✅Microsoft Fabric✅Azure Esplora dati
Questo articolo illustra le procedure consigliate per l'inserimento di dati con la libreria di inserimento Kusto.
Preferire l'inserimento in coda rispetto all'inserimento diretto
Per gli scenari di produzione, usare il client di inserimento in coda. Per altre informazioni, vedere Inserimento in coda e Inserimento diretto.
Usare una singola istanza client di inserimento
Le implementazioni client di Inserimento Kusto sono thread-safe e riutilizzabili. Per ogni database di destinazione, usare una singola istanza di un client di inserimento in coda o diretto per ogni processo. L'esecuzione di più istanze può eseguire l'overload del database, causando la mancata risposta o la lentezza di rispondere alle richieste valide.
Limitare lo stato dell'operazione di rilevamento
Per i flussi di dati di volumi di grandi dimensioni, limitare l'uso di notifiche positive per le richieste di inserimento. Un rilevamento eccessivo può comportare una maggiore latenza di inserimento e persino una non velocità di risposta completa. Per altre informazioni, vedere Stato dell'operazione.
Ottimizzare la velocità effettiva
Quando si pianifica la pipeline di inserimento, considerare i fattori seguenti in quanto possono avere implicazioni significative sulla velocità effettiva di inserimento.
Fattore | Descrizione |
---|---|
Dimensioni dei dati | L'inserimento è più efficiente quando viene eseguito in blocchi di grandi dimensioni. È consigliabile inviare dati in batch da 100 MB a 1 GB (non compressi). |
Formato dati | Preferisce formati di dati come CSV o qualsiasi formato di testo delimitato, ad esempio PSV o TSV, nonché Parquet, JSON o AVRO, ottimizzati per la velocità effettiva massima. Per altre informazioni, vedere Formati di dati supportati per l'inserimento. |
Larghezza tabella | Inserire solo dati essenziali. Ogni colonna deve essere codificata e indicizzata, il che significa che le tabelle più ampie possono avere una velocità effettiva inferiore. Controllare i campi inseriti fornendo un mapping di inserimento. |
Percorso dati di origine | Evitare letture tra aree per velocizzare l'inserimento. |
Caricare nel database | Quando un database riscontra un carico elevato di query, il completamento dell'inserimento richiede più tempo. |
Nota
Il client di inserimento in coda suddivide i set di dati di grandi dimensioni in blocchi e li aggrega, utile quando i dati non possono essere inseriti in batch prima dell'inserimento.
Ottimizzare in base ai costi
L'uso delle librerie client Kusto per inserire dati nel database rimane l'opzione più economica e affidabile. Invitiamo i clienti a esaminare i metodi di inserimento per ottimizzare i costi e a sfruttare i prezzi Archiviazione di Azure che renderanno le transazioni BLOB notevolmente convenienti.
Per l'inserimento conveniente:
- Limitare il numero di blocchi di dati inseriti, ad esempio file, BLOB e flussi.
- Inserire blocchi di grandi dimensioni fino a 1 GB di dati non compressi.
- Optare per l'invio in batch.
- Fornire dimensioni esatte e non compresse dei dati per evitare transazioni di archiviazione aggiuntive.
- Evitare di impostare
FlushImmediately
sutrue
. - Evitare di inviare piccole quantità di dati con
ingest-by
tag extent odrop-by
.
Nota
L'utilizzo eccessivo degli ultimi due metodi può interrompere l'aggregazione dei dati, causare transazioni di archiviazione aggiuntive e danneggiare l'inserimento e le prestazioni delle query.