Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Applica a:✅ Warehouse in Microsoft Fabric
Questo articolo spiega i concetti chiave per progettare tabelle in Microsoft Fabric.
Nelle tabelle, si organizzano logicamente i dati in un formato riga e colonna. Ogni riga rappresenta un record univoco e ogni colonna rappresenta un campo all'interno del record.
Determinare la categoria della tabella
Uno schema star organizza i dati in tabelle dei fatti e tabelle delle dimensioni. Alcune tabelle vengono usate per i dati di integrazione o di staging prima di essere spostati in una tabella dei fatti o delle dimensioni. Quando si progetta una tabella, occorre decidere se i dati appartengono a una tabella dei fatti, di dimensioni o di integrazione. Questa decisione determina la struttura adeguata della tabella.
Le tabelle dei fatti contengono dati quantitativi generati dai sistemi transazionali e poi caricati nel data warehouse. Un'azienda di vendita al dettaglio, ad esempio, genera quotidianamente transazioni di vendita e successivamente carica i dati in una tabella fact di data warehouse per analizzarli.
Le tabelle delle dimensioni contengono dati di attributo che potrebbero cambiare, ma in genere cambiano raramente. Ad esempio, memorizza il nome e l'indirizzo di un cliente in una tabella dimensionale e aggiornali solo quando il profilo del cliente cambia. Per ridurre al minimo le dimensioni di una tabella dei fatti di grandi dimensioni, si può evitare di inserire il nome e l'indirizzo del cliente in ogni riga della tabella. Invece, la tabella dei fatti e la tabella delle dimensioni possono condividere un ID cliente. Una query può eseguire un join tra le due tabelle per associare il profilo di un cliente e le sue transazioni.
Le tabelle di integrazione offrono una posizione per l'integrazione o la gestione temporanea dei dati. È ad esempio possibile caricare i dati in una tabella di staging, eseguire trasformazioni sui dati in staging e quindi inserirli in una tabella di produzione.
Una tabella archivia i dati in OneLake come parte del magazzino. La tabella e i dati sono persistenti indipendentemente dalla presenza o meno di una sessione aperta.
Tabelle nel magazzino
Per mostrare l'organizzazione delle tabelle, usa fact, dim, o int come prefissi ai nomi delle tabelle. La tabella seguente mostra alcuni dei nomi degli schemi e delle tabelle per il data warehouse di esempio WideWorldImportersDW .
| Tabella sorgente di origine WideWorldImportersDW | Tipo di tabella | nome tabella Data Warehouse |
|---|---|---|
| Città | Dimensione | wwi.DimCity |
| Ordinamento | Fatto | wwi.FactOrder |
- I nomi delle tabelle non possono contenere
/o\o terminare con un.. - Puoi creare tabelle temporanee con ambito di sessione (
#temp) in Fabric Data Warehouse. Per maggiori informazioni, consulta Tabelle temporanee in Fabric Data Warehouse.
Crea una tabella
Per Warehouse, è possibile creare una tabella come nuova tabella vuota. È inoltre possibile creare e popolare una tabella con i risultati di un'istruzione SELECT. La tabella seguente mostra i comandi T-SQL per creare una tabella.
| Istruzione T-SQL | Descrizione |
|---|---|
| CREATE TABLE | Crea una tabella vuota definendo tutte le opzioni e le colonne della tabella. |
| CREATE TABLE AS SELECT | Popola una nuova tabella con i risultati di un'istruzione SELECT. Le colonne e i tipi di dati della tabella si basano sui risultati dell'istruzione SELECT. Per importare i dati, questa istruzione può selezionare da una tabella esterna. |
Questo esempio crea una tabella con due colonne:
CREATE TABLE MyTable (col1 int, col2 int );
Fabric Data Warehouse supporta colonne IDENTITY nelle tabelle per inserire automaticamente una sequenza numerica incrementale. Per iniziare, consulta Usare le colonne IDENTITY in Fabric Data Warehouse.
Allo stesso modo, puoi modificare le tabelle esistenti con la sintassi T-SQL ALTER TABLE (Transact-SQL).
I metadati delle viste nel warehouse possono diventare obsoleti a causa di modifiche alle tabelle sottostanti da cui dipende la vista. Per aggiornare i metadati di una visualizzazione, usa sys.sp_refreshview (Transact-SQL). Le visualizzazioni create con SCHEMABINDING bloccano le modifiche agli oggetti sottostanti quando tali modifiche influenzano la definizione della vista. Se la vista non è stata creata con SCHEMABINDING, esegui sp_refreshview quando apporti modifiche agli oggetti sottostanti della vista che ne influenzano la definizione. Altrimenti, la vista potrebbe restituire risultati inaspettati quando la interroghi.
Nomi schema
Warehouse supporta la creazione di schemi personalizzati. Come in SQL Server, gli schemi sono un buon modo per raggruppare gli oggetti usati in modo simile. Il codice seguente crea uno schema definito dall'utente denominato wwi.
- I nomi di schemi non possono contenere
/o\o terminare con un..
CREATE SCHEMA wwi;
Tipo di dati
Microsoft Fabric supporta i tipi di dati T-SQL usati più di frequente.
- Per ulteriori informazioni sui tipi di dati, consultare Tipi di dati nel Fabric Data Warehouse.
- Quando crei una tabella in Warehouse, esamina il riferimento ai tipi di dati in CREATE TABLE (Transact-SQL).
- Per una guida alla creazione di una tabella in Warehouse, vedere Creare tabelle.
Regole di confronto
I fabric warehouse vengono configurati in base all'impostazione delle regole di confronto dell'area di lavoro, che per impostazione predefinita corrisponde alle regole di confronto con distinzione tra maiuscole e minuscole Latin1_General_100_BIN2_UTF8. Quando si crea un nuovo magazzino, si utilizzano le impostazioni di confronto dello spazio di lavoro. Per altre informazioni, vedere regole di confronto del Data Warehouse.
Le regole di confronto del warehouse supportate sono:
-
Latin1_General_100_BIN2_UTF8(impostazione predefinita) Latin1_General_100_CI_AS_KS_WS_SC_UTF8
Puoi creare un warehouse con una collation non predefinita usando l'API REST. Per altre informazioni, vedere Procedura: Creare un warehouse con regole di confronto senza distinzione tra maiuscole e minuscole (CI).
Dopo aver impostato le regole di confronto durante la creazione del database, tutti gli oggetti successivi (tabelle, colonne, ecc.) ereditano queste regole di confronto predefinite. Dopo aver creato un magazzino, non puoi cambiare l'impostazione di collation.
Statistiche
Quando crea il piano per l'esecuzione di una query, Query Optimizer usa le statistiche a livello di colonna. Per migliorare le prestazioni delle query, è importante avere statistiche su singole colonne, in particolare sulle colonne usate nei join delle query. Warehouse supporta la creazione automatica di statistiche.
L'aggiornamento delle statistiche non è automatico. Aggiornare le statistiche dopo l'aggiunta o la modifica di un numero significativo di righe. Aggiornare, ad esempio, le statistiche dopo un carico. Per altre informazioni, vedere Statistics in Fabric Data Warehouse.
Chiave primaria, chiave esterna e chiave univoca
Per il magazzino, puoi usare solo i vincoli PRIMARY KEY e UNIQUE quando usi sia NONCLUSTERED che NOT ENFORCED.
Puoi usare FOREIGN KEY solo quando usi NOT ENFORCED.
- Per la sintassi, vedi ALTER TABLE.
- Per altre informazioni, vedere Chiavi primarie, chiavi esterne e chiavi univoce.
Allineare i dati di origine con il data warehouse
Puoi popolare le tabelle del Warehouse caricando dati da un'altra fonte di dati. Per caricare con successo i dati, il numero e i tipi di dati delle colonne nei dati sorgente devono allinearsi con la definizione della tabella nel warehouse.
Se i dati provengono da più archivi, puoi portarli nel warehouse e memorizzarli in una tabella di integrazione. Quando i dati sono nella tabella di integrazione, puoi usare la potenza del warehouse per implementare operazioni di trasformazione. Quando i dati sono pronti, puoi inserirli nelle tabelle di produzione.
Limiti
Warehouse supporta molte delle funzionalità per tabelle offerte da altri database, ma non tutte.
- Attualmente non sono supportate tabelle temporanee globali.
Di seguito sono elencate alcune delle funzionalità per tabelle che non sono attualmente supportate.
- 1.024 colonne massime per tabella
- Colonne calcolate
- Viste indicizzate
- Tabelle partizionate
- Sequenza
- Colonne di tipo sparse
- Sinonimi
- Trigger
- Indici univoci
- Tipi definiti dall'utente
- Tabelle esterne
Fabric Data Warehouse memorizza nella cache i metadati degli oggetti warehouse per fornire un accesso rapido agli oggetti e alle loro definizioni. Per magazzini molto grandi con più di 750.000 oggetti (ad esempio, tabelle, viste, stored procedure e funzioni), il sistema non memorizza più i metadati nella cache. Al contrario, le operazioni dello schema eseguono query direttamente sull'archivio metadati. Questo design garantisce la stabilità del sistema e previene lo starvation della cache in database estremamente grandi. Tuttavia, le operazioni di aggiornamento dello schema possono richiedere più tempo rispetto ai warehouse più piccoli in cui è abilitata la memorizzazione nella cache dei metadati.
Importante
Ci sono limitazioni nell'aggiungere vincoli di tabella o colonne quando si utilizza Git Integration per lo sviluppo di Fabric Warehouse.