Cosè il sé in Python: esempi del mondo reale
Cos'è il sé in Python: esempi del mondo reale
In questo tutorial imparerai cosa fanno le cache di dati in un calcolo DAX. Capirai come funzionano con la formula e i motori di archiviazione per fornire risposte alle tue domande.
Sommario
Cosa sono le cache di dati?
Il motore di archiviazione interagisce con il motore delle formule sotto forma di una cache di dati.
Se ricordi dai precedenti post del blog sulla struttura di query DAX, saprai che il motore di formula richiede dati dal motore di archiviazione. Quest'ultimo va quindi al database, ottiene diversi tipi di dati e quindi li restituisce al motore delle formule sotto forma di cache di dati.
Il motore di archiviazione può eseguire semplici calcoli e aggregazioni che lo rendono più veloce. Offre anche il parallelismo che può riempire più cache di dati contemporaneamente. Una query del motore di archiviazione può richiedere del tempo per generare una risposta. Ma se si sommano tutte le diverse query del motore di archiviazione, i risultati non saranno gli stessi perché sta riempiendo più di una cache di dati.
Il motore delle formule, invece, funziona su query complesse. Poiché si tratta di un motore a thread singolo, può utilizzare solo un'ultima cache di dati consolidata. Inizia a lavorare sulla cache dei dati una volta che tutte le richieste sono state soddisfatte dal motore di archiviazione.
Se la richiesta del motore delle formule è esattamente la stessa della richiesta precedente, verrà utilizzata nuovamente la cache restituita in precedenza. Il motore di archiviazione è abbastanza intelligente da restituire la stessa cache di dati se riceve la stessa richiesta. Questo rende le prestazioni del DAX più veloci poiché i dati sono già memorizzati nella cache.
Quando si esegue una misura, è importante eseguirla su una cold cache; evitare sempre di eseguire le query nella cache a caldo. Una cache a caldo significa che la cache dei dati del motore di archiviazione è già formata e pronta per essere restituita.
Quali sono le caratteristiche principali?
Le cache di dati sono tabelle materializzate in memoria che richiedono tempo e consumano RAM. Tieni sempre presente che la materializzazione dovrebbe essere la più bassa possibile.
Un'altra caratteristica fondamentale è che queste cache non sono compresse . Una volta usciti dal motore di archiviazione e inviati al motore delle formule, la cache dei dati diventa una tabella completa non compressa in memoria. Questa esecuzione è molto più lenta di una richiesta del motore di archiviazione peer che è tutta in memoria e compressa.
Non ci sono problemi con l'utilizzo del motore di formule; devi solo fare in modo che il motore di archiviazione faccia il lavoro il più possibile.
Anche le cache di dati sono temporanee. Esistono per un po' e poi se ne vanno. Anche se sono materializzati nella memoria, non sono persistenti, quindi verranno cancellati.
Dove trovare le cache dei dati?
È possibile trovare queste informazioni nella colonna dei record dei piani di query fisiche e nelle tempistiche del server di DAX Studio nella colonna delle righe . Mostrerà quante righe vengono prodotte dal motore di archiviazione e inviate al motore di formula.
Se esegui determinati test nei tempi del server, noterai che il conteggio delle righe potrebbe essere leggermente inferiore. Questa è solo una linea guida di quante righe stai tirando su.
La cosa principale da tenere a mente con le cache di dati è che il numero di righe materializzate dovrebbe essere uguale al numero di righe necessarie per l'output il più vicino possibile. Se c'è una grande differenza nel numero di righe, significa che l'operazione di ordine è disattivata.
Se la quantità di righe materializzate è uguale alla quantità di righe necessarie per l'output, si parla di materializzazione tardiva . Tuttavia, se il numero di righe materializzate è maggiore del numero di righe necessarie, si parla di materializzazione anticipata . Poiché si tratta di dati non compressi, non consentire a entrambi i motori di materializzarli perché rallenterà le prestazioni di DAX.
Questo è un esempio di materializzazione precoce:
Nel piano di query fisico, puoi vedere 25 milioni di righe che vengono estratte nella colonna dei record. Tuttavia, la query di esempio non richiede 25 milioni di righe di output. Ciò significa che la query ha estratto troppe righe del necessario.
Se guardi i tempi del server, vedrai la stessa quantità di righe estratte nella colonna Righe.
Negli elementi visivi della CPU SE , vedrai un numero se ci sono parallelismi nelle tue query. Poiché questo esempio non ne ha, ha mostrato 0.
Che cos'è DAX Studio in LuckyTemplates Desktop
Esercitazione su DAX: contesto e
analizzatore VertiPaq del motore di calcolo in DAX Studio | Esercitazione su PowerBI
Conclusione
Un DAX con prestazioni lente può significare che la query sta estraendo cache non necessarie per il funzionamento dei motori. Le cache di dati sono responsabili della velocità e dell'accuratezza del tuo DAX perché i motori lavorano su di esse per generare risposte per richieste diverse. Per prestazioni DAX più veloci, puoi risolvere questo problema creando correttamente il modello di dati e le misure DAX.
Cos'è il sé in Python: esempi del mondo reale
Imparerai come salvare e caricare oggetti da un file .rds in R. Questo blog tratterà anche come importare oggetti da R a LuckyTemplates.
In questa esercitazione sul linguaggio di codifica DAX, scopri come usare la funzione GENERATE e come modificare dinamicamente il titolo di una misura.
Questo tutorial illustrerà come utilizzare la tecnica di visualizzazione dinamica multi-thread per creare approfondimenti dalle visualizzazioni di dati dinamici nei report.
In questo articolo, esaminerò il contesto del filtro. Il contesto del filtro è uno degli argomenti principali che qualsiasi utente di LuckyTemplates dovrebbe inizialmente conoscere.
Voglio mostrare come il servizio online di LuckyTemplates Apps può aiutare nella gestione di diversi report e approfondimenti generati da varie fonti.
Scopri come elaborare le modifiche al margine di profitto utilizzando tecniche come la ramificazione delle misure e la combinazione di formule DAX in LuckyTemplates.
Questo tutorial discuterà delle idee di materializzazione delle cache di dati e di come influiscono sulle prestazioni dei DAX nel fornire risultati.
Se finora utilizzi ancora Excel, questo è il momento migliore per iniziare a utilizzare LuckyTemplates per le tue esigenze di reportistica aziendale.
Che cos'è il gateway LuckyTemplates? Tutto quello che devi sapere