Abilitare le statistiche di scansione per le query
Importante
Azure HDInsight su AKS è stato ritirato il 31 gennaio 2025. Scopri di più con questo annuncio.
È necessario eseguire la migrazione dei carichi di lavoro a Microsoft Fabric o a un prodotto Azure equivalente per evitare la chiusura brusca dei carichi di lavoro.
Importante
Questa funzionalità è attualmente in anteprima. Le condizioni supplementari per l'utilizzo per le anteprime di Microsoft Azure includono termini legali più validi applicabili alle funzionalità di Azure in versione beta, in anteprima o altrimenti non ancora rilasciate nella disponibilità generale. Per informazioni su questa anteprima specifica, vedere informazioni sull'anteprima di Azure HDInsight su AKS. Per domande o suggerimenti sulle funzionalità, inviare una richiesta su AskHDInsight con i dettagli e seguiteci per altri aggiornamenti su Azure HDInsight Community.
Spesso i team di dati sono necessari per analizzare le prestazioni o ottimizzare le query per migliorare l'utilizzo delle risorse o soddisfare i requisiti aziendali.
È stata aggiunta una nuova funzionalità in Trino per HDInsight su AKS che consente all'utente di acquisire statistiche di scansione di qualsiasi connettore. Questa funzionalità fornisce informazioni più approfondite sul profilo delle prestazioni delle query oltre a quello disponibile nelle statistiche prodotte da Trino.
È possibile abilitare questa funzionalità usando proprietà di sessionecollect_raw_scan_statistics
e seguendo il comando Trino:
SET SESSION collect_raw_scan_statistics=true
Una volta abilitati, gli operatori di origine nella query, come TableScanOperator
, ScanFilterAndProject
e così via, possiedono statistiche sulle scansioni dei dati; la granularità delle statistiche è per ciascuna istanza dell'operatore in una pipeline.
Suggerimento
Le statistiche di analisi sono utili per identificare i colli di bottiglia quando il cluster o la query non sono vincolati dalla CPU e le prestazioni di lettura della query devono essere indagate. Consente anche di comprendere il profilo di esecuzione della query dal punto di vista del livello di divisione.
Nota
Attualmente, il numero acquisito di divisioni per ogni ruolo di lavoro è limitato a 1000 a causa di vincoli di dimensioni dei dati prodotti. Se il numero di divisioni per lavoratore per la query supera questo limite, vengono restituite le 1000 divisioni con l'esecuzione più lunga.
Come accedere alle statistiche di scansione
Dopo aver impostato la proprietà della sessione, le query successive nella sessione avviano l'acquisizione delle statistiche dagli operatori di origine ogni volta che sono disponibili. Esistono diversi modi in cui gli utenti possono usare e analizzare le statistiche di analisi generate per una query.
query JSON
La scheda Json nella pagina Dettagli query fornisce la rappresentazione JSON della query, che include statistiche su ogni stadio e sulla pipeline della query. Quando la proprietà della sessione è impostata, il codice JSON include un nuovo campo denominato scanStats
in queryStats.operatorSummaries[*]
. La matrice contiene un oggetto per ogni istanza dell'operatore.
L'esempio seguente mostra un json per una query usando hive connector
e le statistiche di analisi abilitate.
Nota
Il riepilogo delle statistiche di analisi include splitInfo popolato dal connettore. In questo modo gli utenti possono controllare quali informazioni sul negozio desiderano includere nei loro connettori personalizzati.
interfaccia utente delle statistiche di scansione
È possibile trovare una nuova scheda denominata Scan Stats
nella pagina Dettagli query che visualizza le statistiche generate da questa funzionalità e fornisce approfondimenti sulle prestazioni della suddivisione granulare di ciascun worker. La pagina consente agli utenti di visualizzare il profilo di esecuzione di Trino per la query con informazioni come letture contemporanee nel tempo e la velocità di trasferimento.
L'esempio seguente mostra una pagina per una query con statistiche di analisi abilitate.
Uso del registratore di Microsoft Query**
Microsoft Query logger supporta questa funzionalità. Se abilitata con questa funzionalità, il plug-in del logger di query popola una tabella denominata operatorstats
insieme alla tabella degli eventi di query, questa tabella viene denormalizzata in modo che ogni istanza dell'operatore sia una riga per ogni query.