Linee guida per la progettazione per le tabelle delle date in Power BI Desktop
Questo articolo illustra le procedure di progettazione consigliate per creare tabelle di date nei modelli di dati quando si usa Power BI Desktop.
Una tabella data è la tabella più comune usata per l'analisi. Archivia una riga per ogni data e supporta il requisito comune di filtrare o raggruppare per periodi specifici di date, come anni, trimestri o mesi.
Per poter usare le funzioni di Business Intelligence per le gerarchie temporali DAX (Data Analysis Expressions), il modello di dati deve avere almeno una tabella data. Una tabella data è una tabella modello che soddisfa i requisiti seguenti:
- Deve avere una colonna del tipo di dati data (o data/ora), detta colonna data.
- La colonna data deve contenere valori univoci.
- La colonna data non deve contenere valori BLANK.
- La colonna data non deve avere date mancanti.
- La colonna data deve estendersi ad anni completi. Un anno non coincide necessariamente con un anno di calendario (gennaio-dicembre).
- La tabella data deve essere contrassegnata come tabella data.
Per aggiungere una tabella data al modello, è possibile usare una delle numerose tecniche disponibili:
- Usa data/ora automatica
- Connettersi con Power Query (a una tabella delle dimensioni data esistente)
- Generare con Power Query
- Generare con DAX
- Clonare con DAX
Suggerimento
Una tabella data è probabilmente la funzionalità più coerente che verrà aggiunta a uno dei modelli di dati. All'interno di un'organizzazione deve essere definita in modo coerente una tabella data. Qualunque tecnica si decida di usare, è quindi consigliabile creare un modello di Power BI Desktop che includa una tabella data interamente configurata. Condividere il modello con tutti i modelli di dati nell'organizzazione. Pertanto, ogni volta che un utente sviluppa un nuovo modello di dati, può iniziare con una tabella data definita in modo coerente.
Usare data/ora automatica
L'opzione Data/ora automatica offre funzionalità di Business Intelligence per le gerarchie temporali pratiche, veloci e facili da usare. Gli autori di report possono usare le funzionalità di Business Intelligence per le gerarchie temporali per l'applicazione di filtri, il raggruppamento e il drill-down in periodi di tempo del calendario.
È consigliabile mantenere attivata l'opzione Data/ora automatica solo quando si lavora con periodi di tempo del calendario e si hanno requisiti di modellazione semplici in termini di tempo. È anche possibile usare questa opzione quando si creano modelli ad hoc o si esegue l'esplorazione o la profilatura dei dati. Questo approccio non supporta tuttavia la progettazione di un'unica tabella data in grado di eseguire la propagazione dei filtri a più tabelle. Per altre informazioni, vedere Linee guida per Data/ora automatica in Power BI Desktop.
Connettersi con Power Query
Quando l'origine dati contiene già una tabella data, è consigliabile usarla come origine della tabella data del modello. In genere è il caso in cui ci si connette a un data warehouse, perché dovrebbe avere già una tabella delle dimensioni data. In questo modo, il modello usa una singola fonte di verità per il tempo nell'organizzazione.
Se si sta sviluppando un modello DirectQuery e l'origine dati non include una tabella data, è consigliabile aggiungere una tabella data all'origine dati, che deve soddisfare tutti i requisiti di modellazione di una tabella data. È quindi possibile usare Power Query per connettersi alla tabella data. In questo modo, i calcoli del modello possono usare le funzionalità di business intelligence per le gerarchie temporali DAX.
Generare con Power Query
È possibile generare una tabella data usando Power Query. Per altre informazioni, vedere il post di blog di Chris Webb Generating A Date Dimension Table In Power Query.
Suggerimento
Se non si ha un data warehouse o un'altra definizione coerente per le gerarchie temporali nell'organizzazione, è consigliabile usare Power Query per pubblicare un flusso di dati. Fare in modo che tutti gli autori di modelli di dati si connettano al flusso di dati per aggiungere tabelle di date ai modelli. Il flusso di dati diventa l'unica origine di dati reali per le gerarchie temporali nell'organizzazione.
Se è necessario generare una tabella data, provare a usare DAX. L'operazione potrebbe risultare più semplice, oltre che più pratica, poiché DAX include alcune funzionalità di intelligence predefinite per semplificare la creazione e la gestione delle tabelle di date.
Generare con DAX
È possibile generare una tabella data nel modello creando una tabella calcolata usando la funzione DAX CALENDAR o CALENDARAUTO . Ogni funzione restituisce una tabella a colonna singola di date. È quindi possibile estendere la tabella calcolata con le colonne calcolate per supportare i requisiti di raggruppamento e filtro dell'intervallo di date.
- Usare la
CALENDAR
funzione quando si vuole definire un intervallo di date. Si passano due valori: la data di inizio e la data di fine. Questi valori possono essere definiti da altre funzioni DAX, ad esempioMIN(Sales[OrderDate])
oMAX(Sales[OrderDate])
. - Usare la
CALENDARAUTO
funzione quando si desidera che l'intervallo di date includa automaticamente tutte le date archiviate nel modello. È possibile passare un singolo parametro facoltativo che è il mese di fine dell'anno (se l'anno è un anno di calendario, che termina a dicembre, non è necessario passare alcun valore). È una funzione utile perché garantisce che vengano restituiti anni completi di date e quindi soddisfi i requisiti per una tabella data contrassegnata. Inoltre, non è necessario estendere la tabella con righe per gli anni futuri. Ciò avviene perché quando viene completato un aggiornamento dati, viene attivato il ricalcolo della tabella. Un ricalcolo estende automaticamente l'intervallo di date della tabella quando le date per un nuovo anno vengono caricate nel modello.
Suggerimento
Per altre informazioni sulla creazione di tabelle calcolate, e per vedere un esempio di come creare una tabella data, usare il modulo di apprendimento Aggiungere tabelle e colonne calcolate ai modelli di Power BI Desktop.
Prendere in considerazione anche l'uso di uno strumento open source gratuito per gestire le date con DAX. Per altre informazioni, vedere Bravo per Power BI.
Clonare con DAX
Quando il modello di dati ha già una tabella data e è necessaria un'altra tabella data, quando la data è una dimensione della dimensione con ruoli, è possibile clonare facilmente la tabella data esistente. È possibile clonare una tabella creando una tabella calcolata. L'espressione tabella calcolata è semplicemente il nome della tabella data esistente.
Ad esempio, per creare una Ship Date
tabella che clona la Date
tabella, usare l'espressione di tabella calcolata seguente.
Ship Date = 'Date'
Nota
Quando si clona una tabella con DAX, vengono create solo colonne. Non applica proprietà del modello dalla tabella clonata, ad esempio formati o descrizioni. Inoltre, le gerarchie non vengono clonate.
Contenuto correlato
Per altre informazioni correlate a questo articolo, vedere le risorse seguenti:
- Data/ora automatica in Power BI Desktop
- Linee guida per Data/ora automatica in Power BI Desktop
- Impostare e usare tabelle data in Power BI Desktop
- Preparazione dei dati self-service in Power BI
- Funzione CALENDAR (DAX)
- Funzione CALENDARAUTO (DAX)
- Domande? Provare a chiedere alla community dell'infrastruttura
- Suggerimenti? Contribuire alle idee per migliorare l'infrastruttura