Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:✅ Warehouse in Microsoft Fabric
In dit artikel worden belangrijke concepten beschreven voor het ontwerpen van tabellen in Microsoft Fabric.
In tabellen worden gegevens logisch ingedeeld in een rij- en kolomindeling. Elke rij vertegenwoordigt een unieke record en elke kolom vertegenwoordigt een veld in de record.
- In Warehouse zijn tabellen databaseobjecten die alle transactionele gegevens bevatten.
Tabelcategorie bepalen
Een stervormig schema ordent gegevens in feitentabellen en dimensietabellen. Sommige tabellen worden gebruikt voor integratie- of faseringsgegevens voordat u naar een feiten- of dimensietabel gaat. Wanneer u een tabel ontwerpt, bepaalt u of de tabelgegevens deel uitmaken van een feiten-, dimensie- of integratietabel. Deze beslissing informeert de juiste tabelstructuur.
Feitentabellen bevatten kwantitatieve gegevens die vaak worden gegenereerd in een transactioneel systeem en vervolgens in het datawarehouse worden geladen. Een retailbedrijf genereert bijvoorbeeld elke dag verkooptransacties en laadt de gegevens vervolgens in een feitentabel van een datawarehouse voor analyse.
Dimensietabellen bevatten kenmerkgegevens die mogelijk worden gewijzigd, maar meestal onregelmatig worden gewijzigd. De naam en het adres van een klant worden bijvoorbeeld opgeslagen in een dimensietabel en worden alleen bijgewerkt wanneer het profiel van de klant wordt gewijzigd. Als u de grootte van een grote feitentabel wilt minimaliseren, hoeft de naam en het adres van de klant zich niet in elke rij van een feitentabel te bevinden. In plaats daarvan kunnen de feitentabel en de dimensietabel een klant-id delen. Een query kan de twee tabellen samenvoegen om het profiel en de transacties van een klant te koppelen.
Integratietabellen bieden een plaats voor het integreren of faseren van gegevens. U kunt bijvoorbeeld gegevens laden in een faseringstabel, transformaties uitvoeren op de gegevens in fasering en de gegevens vervolgens invoegen in een productietabel.
In een tabel worden gegevens opgeslagen in OneLake als onderdeel van het magazijn. De tabel en de gegevens blijven behouden of een sessie al dan niet is geopend.
Tabellen in het magazijn
Als u de organisatie van de tabellen wilt weergeven, kunt u de tabelnamen gebruiken fact
of dim
int
als voorvoegsels gebruiken. In de volgende tabel ziet u enkele schema- en tabelnamen voor WideWorldImportersDW-voorbeelddatawarehouse .
Naam van brontabel WideWorldImportersDW | Tabeltype | Naam van datawarehouse-tabel |
---|---|---|
Stad | Dimensie | wwi.DimCity |
Bestelling | Feit | wwi.FactOrder |
- Tabelnamen mogen geen tabelnamen bevatten
/
of\
eindigen met een.
.
Een tabel maken
Voor Warehouse kunt u een tabel maken als een nieuwe lege tabel. U kunt ook een tabel maken en vullen met de resultaten van een select-instructie. Hier volgen de T-SQL-opdrachten voor het maken van een tabel.
T-SQL-instructie | Beschrijving |
---|---|
TABEL MAKEN | Hiermee maakt u een lege tabel door alle tabelkolommen en -opties te definiëren. |
TABEL AANMAKEN ALS SELECTEREN | Hiermee wordt een nieuwe tabel gevuld met de resultaten van een select-instructie. De tabelkolommen en gegevenstypen zijn gebaseerd op de resultaten van de select-instructie. Als u gegevens wilt importeren, kunt u deze instructie selecteren uit een externe tabel. |
In dit voorbeeld wordt een tabel met twee kolommen gemaakt:
CREATE TABLE MyTable (col1 int, col2 int );
Schemanamen
Warehouse ondersteunt het maken van aangepaste schema's. Net als in SQL Server zijn schema's een goede manier om objecten te groeperen die op een vergelijkbare manier worden gebruikt. Met de volgende code maakt u een door de gebruiker gedefinieerd schema met de naam wwi
.
- Schemanamen zijn hoofdlettergevoelig.
- Schemanamen kunnen geen schemanamen bevatten
/
of\
beëindigen met een.
.
CREATE SCHEMA wwi;
Gegevenstypen
Microsoft Fabric ondersteunt de meest gebruikte T-SQL-gegevenstypen.
- Zie Gegevenstypen in Fabric Data Warehouse voor meer informatie over gegevenstypen.
- Wanneer u een tabel maakt in Warehouse, controleert u de verwijzing naar gegevenstypen in CREATE TABLE (Transact-SQL).
- Zie Tabellen maken voor een handleiding voor het maken van een tabel in Warehouse.
Sortering
Latin1_General_100_BIN2_UTF8
is de standaardsortering voor zowel tabellen als metagegevens.
U kunt een magazijn maken met de hoofdletterongevoelige sortering Latin1_General_100_CI_AS_KS_WS_SC_UTF8
. Voor meer informatie, zie Hoe: Een magazijn maken met niet-hoofdlettergevoelige (CI)-sortering.
Ondersteunde sorteringen in de API zijn:
-
Latin1_General_100_BIN2_UTF8
(standaard) Latin1_General_100_CI_AS_KS_WS_SC_UTF8
Zodra de sortering is ingesteld tijdens het maken van de database, nemen alle volgende objecten (tabellen, kolommen enzovoort) deze standaardsortering over.
statistieken
De queryoptimalisatie maakt gebruik van statistieken op kolomniveau wanneer het plan voor het uitvoeren van een query wordt gemaakt. Om de queryprestaties te verbeteren, is het belangrijk dat u statistieken hebt over afzonderlijke kolommen, met name kolommen die worden gebruikt in querydeelnames. Warehouse ondersteunt het automatisch maken van statistieken.
Statistische updates worden niet automatisch uitgevoerd. Statistieken bijwerken nadat een aanzienlijk aantal rijen is toegevoegd of gewijzigd. Werk bijvoorbeeld statistieken bij na een belasting. Zie Statistieken in Fabric Data Warehouse voor meer informatie.
Primaire sleutel, refererende sleutel en unieke sleutel
Voor warehouse, PRIMAIRE SLEUTEL en UNIEKE beperking worden alleen ondersteund wanneer NIET-GECLUSTERD en NIET AFGEDWONGEN beide worden gebruikt.
REFERERENDE SLEUTEL wordt alleen ondersteund wanneer NIET AFGEDWONGEN wordt gebruikt.
- Controleer ALTER TABLE voor syntaxis.
- Zie Primaire sleutels, refererende sleutels en unieke sleutels voor meer informatie.
#temp tabellen
Tijdelijke tabellen met sessiebereik (#temp) kunnen worden gemaakt in Fabric Data Warehouse.
Deze tabellen bestaan alleen binnen de sessie waarin ze worden gemaakt en blijven bestaan gedurende die sessie. Ze zijn niet zichtbaar voor andere gebruikers of sessies en worden automatisch van het systeem verwijderd zodra de sessie is beëindigd of de #temp tabel wordt verwijderd. Deze tabellen zijn toegankelijk voor alle gebruikers zonder dat hiervoor een specifieke machtiging op itemniveau is vereist.
Er kunnen twee typen #temp tabellen worden gemaakt op basis van specifieke use cases, niet-gedistribueerd en gedistribueerd.
Niet-gedistribueerde #temp Tabel (door mdf ondersteund) is het standaardtype. De syntaxis voor het maken en gebruiken van niet-gedistribueerde #temp tabellen in Fabric Data Warehouse is vergelijkbaar met gebruikerstabellen, maar u moet de naam van de tijdelijke tabel vooraf laten gaan door
#
.CREATE TABLE #table_name ( Col1 data_type1, Col2 data_type2 );
Gedistribueerde tijdelijke tabellen (ondersteund door Parquet) kunnen worden gemaakt met het
DISTRIBUTION=ROUND_ROBIN
trefwoord.CREATE TABLE #table_name ( Col1 data_type1, Col2 data_type2 ) WITH (DISTRIBUTION=ROUND_ROBIN);
In het vorige script zijn data_type1
en data_type2
tijdelijke aanduidingen voor ondersteunde gegevenstypen in Fabric Data Warehouse.
Gedistribueerde #temp tabellen worden aanbevolen, omdat ze overeenkomen met normale gebruikerstabellen; ze hebben onbeperkte opslag, ondersteuning voor gegevenstypen en T-SQL-bewerkingen. De syntaxis voor gegevensmanipulatie en -definitie is identiek aan gebruikerstabellen in Fabric Data Warehouse, waarbij het voorvoegsel #
is toegevoegd aan de tabelnaam.
Brongegevens uitlijnen op het datawarehouse
Magazijntabellen worden gevuld door gegevens uit een andere gegevensbron te laden. Om een succesvolle lading te realiseren, moeten het aantal kolommen en de gegevenstypen in de brongegevens overeenkomen met de tabeldefinitie in het datawarehouse.
Als gegevens afkomstig zijn uit meerdere gegevensarchieven, kunt u de gegevens overzetten naar het magazijn en deze opslaan in een integratietabel. Zodra gegevens zich in de integratietabel bevinden, kunt u de kracht van het magazijn gebruiken om transformatiebewerkingen te implementeren. Zodra de gegevens zijn voorbereid, kunt u deze invoegen in productietabellen.
Beperkingen
Warehouse ondersteunt veel, maar niet alle, tabelfuncties die door andere databases worden aangeboden.
- Globale tijdelijke tabellen worden momenteel niet ondersteund.
In de volgende lijst ziet u enkele tabelfuncties die momenteel niet worden ondersteund.
- Maximaal 1024 kolommen per tabel
- Berekende kolommen
- Geïndexeerde weergaven
- Gepartitioneerde tabellen
- Sequentie
- Sparse-kolommen
- Surrogaatsleutels voor nummerreeksen met identiteitskolommen
- Synoniemen
- Aanleidingen
- Unieke indexen
- Door de gebruiker gedefinieerde typen
- Externe tabellen
Belangrijk
Er zijn beperkingen met het toevoegen van tabelbeperkingen of kolommen bij het gebruik van broncodebeheer met Warehouse.
Gerelateerde inhoud
- Wat is datawarehousing in Microsoft Fabric?
- Wat is Data Engineering in Microsoft Fabric?
- Een magazijn maken in Microsoft Fabric
- Query's uitvoeren op het SQL Analytics-eindpunt of -warehouse in Microsoft Fabric
- OneLake, oneDrive voor gegevens
- Tabellen maken in het magazijn in Microsoft Fabric
- Transacties in magazijntabellen in Microsoft Fabric