Introduzione ai Dashboard personalizzati in Azure Data Explorer

Azure Data Explorer (ADX) è un servizio di analisi completamente gestito e ad alte prestazioni ottimizzato per query ad hoc su grandi volumi di dati. Ingerisce i dati da una vasta gamma di fonti e fornisce analisi in tempo reale vicino utilizzando il linguaggio di query Kusto (KQL). Una delle più potenti funzionalità di ADX è la possibilità di creare dashboard personalizzati che danno agli stakeholder l'accesso immediato a metriche chiave, tendenze e eseguire ripetutamente anomalie.

I dashboard personalizzati costruiti su ADX possono servire team di tutta un'organizzazione, dal monitoraggio delle operazioni all'analisi dell'intelligenza aziendale e della sicurezza, consentendo agli utenti di visualizzare i punti di dati più rilevanti, applicare filtri dinamici, impostare percorsi di perforazione e condividere con altri punti di vista interattivi.

Comprendere Azure Data Explorer e le sue capacità di Dashboard

Azure Data Explorer è appositamente costruito per la gestione dei dati delle serie temporali, registri, telemetria e di qualsiasi dato strutturato o semistrutturato che richiede una rapida esplorazione. Può ingerire terabyte di dati al giorno e rispondere a domande complesse in pochi secondi. La caratteristica di dashboard nativo in ADX è strettamente integrata con il motore di query, il che significa che è possibile costruire un grafico direttamente da una query KQL e che si aggiorna come nuovi flussi di dati.

I dashboard ADX sono composti da tiles] – visualizzazioni individuali come grafici di linea, grafici di colonne, grafici di torta, diagrammi di spargimento, tabelle e schede multi-valore. Ogni piastrella è sostenuta da una o più domande KQL che definiscono la sua fonte di dati.

A differenza degli strumenti BI di uso generale, i cruscotti ADX sono ottimizzati per la velocità e lo streaming in tempo reale. Le stesse applicazioni di query distribuite che alimentano il cluster ADX, così anche le aggregazioni complesse rendono rapidamente.

Preparazione dei vostri dati per il consumo di Dashboard

Ingestione e progettazione dei dati

ADX supporta più metodi di ingestione: Event Hub per lo streaming dei dati, Azure Blob Storage per il caricamento in batch, Logstash e Apache Kafka connettori, e ingestione diretta utilizzando il Kusto SDK. Per cruscotti interattivi, generalmente si desidera che i dati siano freschi e continuamente aggiornati.

Per i grafici delle serie temporali, assicurarsi di avere una colonna di timestamp di tipo [. Per i guasti categorici, utilizzare colonne. Le metriche numeriche dovrebbero essere in colonne adatte per l'aggregazione (sum, media, conteggio). ADX supporta anche gli schemi dinamici tramite il tipo di evento

Dopo l'ingestione, eseguire richieste esplorative KQL nell'interfaccia web ADX per convalidare la qualità dei dati, controllare i nulls e capire la distribuzione dei valori.

Trasformazioni dei dati per Dashboards

A volte i dati grezzi devono essere rimodellati prima che sia utilizzabile in una dashboard. È possibile creare ] opinioni materializzate[]] o [ politiche aggiornate[ in ADX per pre-aggregare i dati, ridurre la latenza query e semplificare le query del cruscotto.

Un'altra tecnica è quella di utilizzare funzioni di memorizzazione[] – funzioni KQL riutilizzabili che incapsulano la logica complessa. Le funzioni memorizzate possono essere chiamate da query di dashboard, mantenendo le definizioni di piastrelle pulite e manutenbili.

Scrivere Kusto Query che alimentano il tuo Dashboard

Fondamenti di KQL per Dashboards

Ogni piastrella del cruscotto è guidata da una o più query KQL. Il linguaggio di query Kusto è un linguaggio di sola lettura, orientato alla tabella che supporta il filtraggio, il raggruppamento, l'unione, la combinazione di tempo e le funzioni statistiche. Per una piastrella del cruscotto, la query deve restituire un set di risultati che può essere visualizzato – tipicamente una tabella con colonne per valori, serie e misure.

Una semplice domanda di serie di tempo potrebbe assomigliare a questo:

StormEvents
| where StartTime between (datetime(2007-01-01) .. datetime(2007-12-31))
| summarize TotalDamage = sum(DamageProperty) by bin(StartTime, 1d)
| render timechart

Nel pannello di configurazione della piastrella del cruscotto, è possibile scegliere il tipo di visualizzazione esplicitamente, in modo da poter omettere l'operatore [ e invece impostare il tipo di grafico nelle impostazioni della piastrella. Questa separazione ti dà più controllo sullo styling, come i colori e le etichette degli assi.

Ottimizzazione delle query per le prestazioni di Dashboard

La reattività di Dashboard dipende fortemente dalle prestazioni della query.

  • Usa filtrando presto[[] – i range di tempo di spinta, i filtri dell'entità e altri predicati per quanto possibile nella pipeline di query. Il motore ADX può prune shards che non contengono dati rilevanti.
  • Limitare il set di risultati – non restituire milioni di righe al cruscotto. Utilizzare per aggregare, e considerare l'utilizzo o per i controlli di sanità.
  • Leverage cached results[[] – ADX memorizza automaticamente i risultati delle query per le piastrelle di dashboard per una durata configurabile (default 5 minutes).
  • Utilizzare visualizzazioni materializzate[] per aggregazioni pre-computate come indicato in precedenza.
  • Evitare con funzioni definite dall'utente costose – se possibile, colonne derivate precompute durante l'ingestione.

Provare le domande nell'interfaccia web ADX prima di incorporarle nelle dashboard è una migliore pratica.

Passo per passo: costruire un Dashboard personalizzato in Azure Data Explorer

Passo 1 – Accesso all'interfaccia di Dashboard

Se non si vede l'opzione, assicurarsi che la versione cluster supporta dashboard (tutti i nuovi cluster fanno). È inoltre possibile utilizzare il free ]ADX web UI (dataexplorer.azure.com)]

Passo 2 – Creare un nuovo Dashboard e Aggiungere piastrelle

Clicca + Nuovo Dashboard[[]]] e dagli un nome significativo. Vedrai una tela vuota. Clicca [+ Aggiungi Tile[]] per iniziare. Nell'editor di piastrelle, scrivi o incolla una query KQL. Per esempio, una query che conta errori per servizio nelle ultime 24 ore:

Logs
| where Timestamp > ago(24h)
| where Level == "Error"
| summarize Count = count() by ServiceName
| render columnchart

Dopo aver eseguito la query, l'anteprima della piastrella mostra un grafico.

  • Title[]] – dare un nome leggibile dall'uomo.
  • Visualizzazione[] – scegliere tra linea, colonna, barra, area, torta, spargimento, grafico del tempo, tabella e visuali personalizzate.
  • intervallo di tempo[] – impostare il filtro di tempo predefinito.
  • Parametri[[]] – è possibile definire i parametri di livello del cruscotto (ad esempio, ambiente, regione) e collegarli alle query di piastrelle utilizzando la sintassi di KQL.

Aggiungere più piastrelle per altre metriche. È possibile ridimensionare e ridimensionare piastrelle trascinandoli sulla tela.

Passo 3 - Aggiungi parametri e filtri Dashboard

I parametri fanno cruscotti interattivi. Vai alle impostazioni del cruscotto (icona di marcia) e aggiungi parametri come [] (dropdown: Produzione, Staging, Dev) o (rilativo o assoluto).

Passo 4 – Configurare Drill-Through e Cross-Filtering

Per esempio, fare clic su una barra in un grafico potrebbe navigare in una dashboard dettagliata filtrata da quel servizio. Il cross-filtering è anche possibile: selezionare un valore in una piastrella può filtrare automaticamente altre piastrelle sulla stessa dashboard. Per abilitare il cross-filtering, assicurarsi che le query delle piastrelle utilizzino gli stessi nomi dei parametri o si affidano alle proprietà condivise

Passo 5 – Salvare, pubblicare e condividere

Una volta completata la dashboard, salvala. Puoi publish]] il cruscotto per renderla accessibile ad altri utenti della tua organizzazione. Sotto il menu Share[], generare un URL di sola lettura che può essere incorporato in un portale o inviato via e-mail. Puoi anche scaricare il modello di dashboard (JSON) per la versione cluster

Migliorare le Dashboard con le funzionalità avanzate

Rifiuto dei dati in tempo reale

Per le dashboard operative, gli aggiornamenti in tempo reale sono critici. I dashboard ADX aggiornano automaticamente i dati in base all'intervallo di tempo e alle impostazioni della cache delle query. È possibile configurare un intervallo di aggiornamento automatico (ad esempio, ogni 1 minuto) sulle impostazioni del cruscotto.

Visivi e temi personalizzati

Oltre ai tipi di grafico incorporati, ADX supporta []] visuali personalizzate] alimentate dal linguaggio Charticulator (all'interno del dashboard editor ADX). È possibile creare visualizzazioni complesse come mappe di calore, grafici di sunburst e grafici di rete. Inoltre, è possibile sovrascrivere colori, font e layout per abbinare branding aziendale.

Integrazione alerting

Mentre i dashboard sono ottimi per il monitoraggio visivo, è possibile che siano necessari avvisi per le soglie critiche. ADX si collega agli avvisi Azure Monitor: è possibile creare una regola di avviso basata su una query KQL che viene eseguita periodicamente. Quando viene rilevata un'anomalia, l'avviso può attivare un'email, un webhook, o una funzione Azure.

Incorporando i pannelli di trazione nelle applicazioni personalizzate

È possibile inserire i dashboard ADX nelle proprie applicazioni web utilizzando un iframe o un SDK ADX. L'URL incorporato supporta i parametri di query per l'autenticazione e il filtraggio. Questo consente ai team di prodotto di esporre l'analisi dal vivo a clienti esterni o a portali interni senza costruire uno strato di visualizzazione separato. Per ulteriori dettagli, fare riferimento alla documentazione Azure Data Explorer embedded dashboard].

Controllo di sicurezza e accesso per Dashboard

ADX fornisce un controllo di accesso eccellente al cluster, al database e al livello della tabella utilizzando Controllo di accesso basato sul ruolo (RBAC). Per i cruscotti, i ruoli chiave sono:

  • Dashboard Admin[] – può creare, modificare, eliminare e pubblicare dashboard.
  • Dashboard Viewer[] – può solo visualizzare dashboard pubblicati.

Quando si condivide un dashboard tramite URL, tale URL è protetto dall’autenticazione Azure AD. Gli utenti devono essere firmati con un’identità Microsoft (account di lavoro o scuola) e sono stati concessi accesso al visualizzatore. È inoltre possibile limitare la visibilità dei dati utilizzando Row-Level Security (RLS)]] nelle funzioni KQL, assicurando che i diversi utenti vedano solo le righe che sono autorizzate a vedere una regione di vendita di posta elettronica.

Per ambienti sensibili, è possibile limitare le capacità di esportazione (ad esempio, disabilitare il download di CSV da piastrelle) tramite le impostazioni di policy.

Migliori Pratiche per Pannelli di Produzione-Grade

Ottimizzazione delle prestazioni

  • Utilizzare tabelle pre-aggregate[[ (con viste materializzate) per metriche ad alta definizione.
  • Impostare i default dell'intervallo time[]] – iniziare con gli ultimi 7 giorni invece di tutti i dati.
  • Limitare il numero di piastrelle su una dashboard a 20–30 per evitare problemi di convalutazione di query.
  • Utilizzare sharded[] dashboard – metriche divise in più dashboard per dominio aziendale (operazioni, finanza, sicurezza) invece di un cruscotto gigante.

Layout logico e leggibilità

  • Gruppo piastrelle correlate insieme: posizionare le panoramiche in alto, dettagliati i guasti qui sotto.
  • Utilizzare codifica di colore coerente – per esempio, verde per metriche sane, rosso per problemi critici.
  • Includere un titolo e descrizione[] per ogni piastrella così gli spettatori capiscono quello che stanno guardando.
  • Leverage schede multi-valore[] per gli indicatori di performance chiave (KPI) – valore attuale, cambiamento nel tempo e scintilla.

Manutenzione e ciclo di vita

  • Mantenere le domande nel controllo della versione (funzioni memorizzate o file di query esterni).
  • Documento che le fonti di dati si nutrono di ogni cruscotto e quali trasformazioni vengono applicate.
  • Pianifica recensioni regolari con gli stakeholder per rimuovere le piastrelle inutilizzate e aggiungerne di nuove.
  • Monitorare l'utilizzo e il costo di query ADX; cruscotti che sono raramente visualizzati possono essere consumando risorse inutilmente.

Integrare Azure Data Explorer Dashboard con altri servizi Azure

I dashboard ADX funzionano bene in un ecosistema di analisi Azure più ampio.

  • Azure Monitor Workbooks[[] – È possibile incorporare le piastrelle di dashboard ADX all'interno delle cartelle di lavoro Azure Monitor per un'esperienza di monitoraggio IT unificata.
  • Power BI[ – Per le funzionalità BI avanzate, è possibile utilizzare il connettore ADX in Power BI per importare i risultati delle query e costruire report interattivi. Tuttavia, i dashboard nativi ADX sono più veloci per le viste in tempo reale.
  • Azure DevOps[[] – Utilizzare dashboard per monitorare i tassi di guasto, la frequenza di distribuzione o i risultati dei test di prestazione, interrogando i dati dalle Insights applicative archiviate in ADX.
  • Azure Logic Apps and Functions[[] – Automatizza il rinfresco del cruscotto o genera i riassunti tramite e-mail utilizzando flussi di lavoro senza server che query ADX e invia il risultato.

Per un'immersione più profonda nei modelli di integrazione, vedere il funzionario Azure Data Explorer e Power BI Guida di integrazione[.

Conclusioni

Basandosi su un'analisi strutturata sopra descritta, le organizzazioni possono trasformare la telemetria grezza in in intuizioni attuabili con una latenza minima. Seguire il processo strutturato sopra descritto – dalla preparazione dei dati e dalla scrittura di domande KQL efficienti alla progettazione di piastrelle interattive e alla sicurezza dell'accesso – è possibile costruire dashboard che consentano ai team di prendere decisioni più veloci e basate sui dati.

La flessibilità dei dashboard ADX, unita alla scalabilità del motore di analisi sottostante, li rende una scelta eccellente per il monitoraggio in tempo reale, l'analisi esplorativa e la reportistica operativa. Man mano che i dati crescono e i requisiti aziendali si evolvono, lo stesso framework di dashboard può essere esteso con nuovi parametri, visuali avanzate e l'integrazione con l'ecosistema Azure più ampio.

Per ulteriori riferimenti, consultare la panoramica ]Azure Data Explorer e il Kusto Query Language rapido riferimento[[.