Lezione 5-2 - Definizione di una relazione di fatto
Si applica a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
Talvolta può essere necessario dimensionare le misure in base ai dati contenuti nella tabella dei fatti o eseguire query per trovare informazioni correlate specifiche aggiuntive, come ad esempio i numeri delle fatture o degli ordini di acquisto collegati a operazioni di vendita specifiche. Quando viene definita una dimensione basata su un elemento della tabella dei fatti di questo tipo, la dimensione viene denominata dimensione dei fatti. Le dimensioni dei fatti sono inoltre note come dimensioni degeneri. Le dimensioni dei fatti sono utili per raggruppare righe di tabelle dei fatti collegate, come ad esempio tutte le righe collegate a un particolare numero di fattura. Sebbene sia possibile inserire queste informazioni in una tabella della dimensione separata del database relazionale, la creazione di una tale tabella non si rivela vantaggiosa in quanto la tabella della dimensione aumenterebbe allo stesso modo della tabella dei fatti determinando un'inutile duplicazione dei dati nonché un'inutile complessità.
All'interno di SQL Server Analysis Services, è possibile determinare se duplicare i dati della dimensione dei fatti in una struttura di dimensione MOLAP per aumentare le prestazioni delle query o se definire la dimensione dei fatti come dimensione ROLAP per risparmiare spazio di archiviazione a spese delle prestazioni delle query. Quando si archivia una dimensione con la modalità di archiviazione MOLAP, tutti i membri della dimensione vengono archiviati nell'istanza di SQL Server Analysis Services in una struttura MOLAP altamente compressa, oltre a essere archiviata nelle partizioni del gruppo di misure. Quando si archivia una dimensione con la modalità di archiviazione ROLAP, solo la definizione della dimensione viene archiviata nella struttura MOLAP, i membri della dimensione stessi vengono sottoposti a query dalla tabella dei fatti relazionali sottostanti in fase di query. È possibile decidere la modalità di archiviazione appropriata in base alla frequenza con la quale vengono eseguite query sulla dimensione dei fatti, al numero delle righe restituite da una query tipica, alle prestazioni delle query e ai costi di elaborazione. Se una dimensione viene definita come ROLAP non è necessario che anche tutti i cubi in cui viene utilizzata la dimensione siano archiviati tramite la modalità di archiviazione ROLAP. La modalità di archiviazione di ogni dimensione può essere configurata in modo indipendente.
Quando si definisce una dimensione dei fatti, è possibile definire la relazione tra la dimensione dei fatti e il gruppo di misure come una relazione di tipo Fatti. Alle relazioni di tipo Fatti si applicano i vincoli seguenti:
L'attributo di granularità deve essere la colonna chiave della dimensione che crea una relazione uno-a-uno tra la dimensione e i fatti nella tabella dei fatti.
Una dimensione può avere una relazione di tipo Fatti con un solo gruppo di misure.
Nota
È inoltre necessario eseguire aggiornamenti incrementali delle dimensioni dei fatti dopo ogni aggiornamento del gruppo di misure a cui fa riferimento la relazione di tipo Fatti.
Per altre informazioni, vedere Relazioni tra dimensionie Definire una relazione di tipo Fatti e le relative proprietà.
Nelle attività di questo argomento verrà aggiunta una nuova dimensione del cubo basata sulla colonna CustomerPONumber della tabella dei fatti FactInternetSales . Verrà quindi definita come relazione di tipo Fatti la relazione tra questa nuova dimensione del cubo e il gruppo di misure Internet Sales .
Definizione della dimensione dei fatti Internet Sales Orders
In Esplora soluzioni fare clic con il pulsante destro del mouse su Dimensionie quindi scegliere Nuova dimensione.
Nella pagina iniziale di Creazione guidata dimensione fare clic su Avanti.
Nella pagina Selezione metodo di creazione verificare che la pagina Usa una tabella esistente sia selezionata e fare clic su Avanti.
Nella pagina Specifica informazioni origine verificare che sia selezionata la visualizzazione origine dati Adventure Works DW 2019 .
Nell'elenco Tabella principale selezionare InternetSales.
Nell'elenco Colonne chiave verificare che siano presenti SalesOrderNumber e SalesOrderLineNumber .
Nell'elenco Colonna nome selezionare SalesOrderLineNumber.
Fare clic su Avanti.
Nella pagina Selezione tabelle correlate deselezionare le caselle di controllo accanto a tutte le tabelle e quindi fare clic su Avanti.
Nella pagina Selezione attributi dimensione fare clic due volte sulla casella di controllo nell'intestazione per deselezionare tutte le caselle di controllo. L'attributo Sales Order Number rimarrà selezionato perché è l'attributo chiave.
Selezionare l'attributo Customer PO Number e quindi fare clic su Avanti.
Nella pagina Completamento procedura guidata modificare il nome in Internet Sales Order Details e quindi fare clic su Fine per completare la procedura guidata.
Scegliere Salva tutti dal menu File.
Nel riquadro Attributi di Progettazione dimensioni per la dimensione Internet Sales Order Details , selezionare Sales Order Numbere impostare la proprietà Name nella finestra Proprietà su Item Description.
Nella cella della proprietà NameColumn fare clic sul pulsante Sfoglia (...). Nella finestra di dialogo Nome colonna selezionare Product nell'elenco Tabella di origine , selezionare EnglishProductName per la colonna Origine e quindi fare clic su OK.
Aggiungere l'attributo Sales Order Number alla dimensione trascinando la colonna SalesOrderNumber dalla tabella InternetSales del riquadro Vista origine dati al riquadro Attributi .
Modificare la proprietà Name del nuovo attributo Sales Order Number in Order Numbere modificare la proprietà OrderBy in Key.
Nel riquadro Gerarchie creare una gerarchia utente Internet Sales Orders contenente i livelli Order Number e Item Description , in quest'ordine.
Nel riquadro Attributi selezionare Internet Sales Order Detailse quindi controllare il valore della proprietà StorageMode nella finestra Proprietà.
Si noti che per impostazione predefinita la dimensione viene archiviata come una dimensione MOLAP. Sebbene la modifica della modalità di archiviazione in ROLAP consenta di risparmiare tempo di elaborazione e spazio di archiviazione, ciò avviene a discapito delle prestazioni delle query. Ai fini di questa esercitazione, verrà utilizzata la modalità di archiviazione MOLAP.
Per aggiungere la dimensione appena creata al cubo esercitazione SQL Server Analysis Services come dimensione del cubo, passare a Cubo Designer. Fare clic con il pulsante destro del mouse nel riquadro Dimensioni della scheda Struttura cubo e selezionare Aggiungi dimensione al cubo.
Nella finestra di dialogo Aggiungi dimensione al cuboselezionare Internet Sales Order Details e fare clic su OK.
Definizione di una relazione di tipo Fatti per la dimensione dei fatti
Nel cubo Designer per il cubo esercitazione SQL Server Analysis Services fare clic sulla scheda Utilizzo dimensioni.
Si noti che la dimensione del cubo Internet Sales Order Details viene configurata automaticamente come provvista di una relazione di tipo Fatti, indicata dall'icona univoca.
Fare clic sul pulsante sfoglia (...) nella cella Descrizione elemento , all'intersezione del gruppo di misure Internet Sales e della dimensione Dettagli ordine Internet , per esaminare le proprietà della relazione dei fatti.
Verrà visualizzata la finestra di dialogo Definisci relazione . Si noti che non è possibile configurare le proprietà.
L'immagine seguente illustra le proprietà della relazione di tipo Fatti nella finestra di dialogo Definisci relazione .
Fare clic su Annulla.
Esplorazione del cubo tramite la dimensione dei fatti
Nel menu Compila fare clic su Distribuisci esercitazione di Analysis Services per distribuire le modifiche all'istanza di SQL Server Analysis Services e elaborare il database.
Al termine della distribuzione, fare clic sulla scheda Browser in Cubo Designer per il cubo esercitazione SQL Server Analysis Services, quindi fare clic sul pulsante Riconnetti.
Deselezionare tutte le misure e le gerarchie del riquadro Dati, quindi aggiungere la misura Internet Sales-Sales Amount all'area dati del riquadro Dati.
Nel riquadro Metadati espandere Customer, Location, Customer Geography, Members, All Customers, Australia, Queensland, Brisbane, 4000, fare clic con il pulsante destro del mouse su Adam Powelle quindi scegliere Aggiungi a filtro.
Il filtraggio degli ordini di vendita relativi ad un singolo cliente consente di eseguire il drill-down del dettaglio sottostante in una tabella dei fatti estesa senza determinare un significativo peggioramento delle prestazioni delle query.
Aggiungere la gerarchia definita dall'utente Internet Sales Orders dalla dimensione Internet Sales Order Details all'area riga del riquadro Dati.
Si noti che i numeri relativi agli ordini di vendita e i ricavi tramite Internet di Adam Powell vengono visualizzati nel riquadro Dati.
Nell'immagine seguente viene illustrato il risultato dei passaggi precedenti.
Attività successiva della lezione
Definizione di una relazione molti-a-molti
Vedere anche
Relazioni tra dimensioni
Definire una relazione di tipo Fatti e le relative proprietà