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 de functies en innovaties in de architectuur van Fabric Data Warehouse beschreven die de prestaties, schaalbaarheid en kostenefficiëntie verbeteren.
Fabric Data Warehouse wordt uitgevoerd op een architectuur die gereed is voor de toekomst in een geconvergeerd gegevensplatform. Met een open Delta-opslagindeling en OneLake-integratie zijn uw gegevens in Fabric Data Warehouse klaar voor analyse.
Architectuur op hoog niveau
Fabric Data Warehouse is speciaal ontworpen voor analyses op schaal met de volgende bouwstenen:
| Bouwsteen | Beschrijving |
|---|---|
| Unified query optimizer | Genereert een optimaal uitvoeringsplan voor gedistribueerde cloudomgevingen, ongeacht de kwaliteit van door de gebruiker geschreven SQL-query's. |
| Gedistribueerde queryverwerking | Ondersteunt grootschalige parallelle query-uitvoering met snel opschalende cloudinfrastructuur, die direct de benodigde rekenkracht voor query's biedt. Afzonderlijke SELECT- en DML-workloads maken gebruik van verschillende pools voor efficiënte en geïsoleerde uitvoering. |
| Query-uitvoeringsengine | Een SQL-engine voor het uitvoeren van analysequery's op grote hoeveelheden gegevens met snelle prestaties en hoge gelijktijdigheid. |
| Metagegevens en transactiebeheer | Metagegevens bevinden zich in de front-end, back-end en in zowel de lokale SSD-cache als externe OneLake-opslag. Ondersteunt gelijktijdige transacties en zorgt voor ACID-naleving. |
| Opslag in OneLake | Log Structured Tables geïmplementeerd met behulp van de open Delta-tabelindeling, een Lakehouse-model met beveiligde open opslag. |
| Fabric-platform | Het Fabric Platform biedt een geïntegreerd verificatie- en beveiligingsmodel, bewaking en controle. Uw Fabric Data Warehouse is automatisch beschikbaar voor andere Fabric-platformservices om te voldoen aan bedrijfsbehoeften, waaronder Power BI, gegevenspijplijnen in Data Factory, Real-Time Intelligence en meer. |
Geïntegreerde query-optimalisator-motor
Unified Query Optimizer in Fabric Data Warehouse is de engine die de slimste manier bepaalt om uw SQL-query's uit te voeren.
Wanneer u een query verzendt, kijkt de geïntegreerde queryoptimalisatie naar mogelijke manieren om deze uit te voeren: tabellen samenvoegen, waar gegevens moeten worden verplaatst en hoe u resources zoals CPU, geheugen en netwerk gebruikt. De unified query optimizer kiest niet alleen de eerste optie, het kiest het meest optimale plan binnen de tijd die is toegestaan door kosten te evalueren op basis van deze factoren en beschikbare metagegevens en statistieken.
Wanneer u het uitvoeringsplan van een query optimaliseert, houdt de geïntegreerde queryoptimalisatie alles in één stap in aanmerking: de vorm van uw query, de gegevensdistributie van uw tabellen en de kosten voor het verplaatsen van gegevens versus het lokaal verwerken van gegevens. De geïntegreerde queryoptimalisatie kan slimme afwegingen maken, zoals bepalen of het uitzenden van een kleine tabel goedkoper is dan het versnipperen van een grote tabel. Dit betekent dat er minder onnodige gegevens in willekeurige volgorde worden gebruikt, beter gebruik wordtgemaakt van rekenkracht en snellere prestaties, zelfs voor complexe of slecht geschreven T-SQL-query's.
Voor consistente prestaties hoeven ontwikkelaars geen tijd te besteden aan het handmatig afstemmen van T-SQL-query's. U hoeft bijvoorbeeld niet handmatig de beste JOIN volgorde in query's te bepalen. Als in uw SQL eerst de grote tabel en een kleinere, zeer selectieve gegevenstabel wordt vermeld, kan de optimizer automatisch de positie wijzigen voor betere prestaties. De kleinere tabel wordt gebruikt als uitgangspunt voor overeenkomende rijen (de 'build'-zijde) en de grotere tabel als de tabel die moet worden doorzocht (de testzijde, gecontroleerd op overeenkomsten). Deze aanpak minimaliseert het geheugengebruik, vermindert de gegevensverplaatsing en verbetert parallellisme, terwijl er nog steeds nauwkeurige resultaten worden geleverd.
De geïntegreerde queryoptimalisatie leert continu van eerdere queryuitvoeringen naarmate workloads zich ontwikkelen, waarbij het optimalisatie-algoritme wordt verfijnd om de best mogelijke prestaties te leveren. Gebruikers profiteren automatisch van snelle uitvoering van query's, ongeacht complexiteit en zonder tussenkomst.
Engine voor gedistribueerde queryverwerking
In Fabric Data Warehouse wijst de gedistribueerde queryverwerkingsmotor rekenmiddelen toe aan taken in query-plannen. De engine voor gedistribueerde queryverwerking kan taken plannen op rekenknooppunten, zodat elk knooppunt een deel van een queryplan uitvoert, waardoor parallelle uitvoering mogelijk is voor snellere prestaties. Complexe rapporten over grote gegevenssets kunnen profiteren van gedistribueerde queryverwerking.
Om resources verder te optimaliseren, scheidt de gedistribueerde queryverwerkingsengine rekenresources in twee pools: voor SELECT query's en voor gegevensopnametaken (NON-SELECT query's). Elke werkbelasting ontvangt zo nodig toegewezen middelen. Dit betekent bijvoorbeeld dat uw nachtelijke ETL-taken geen ochtenddashboards vertragen.
Met snelle inrichting van knooppunten in de cloud schaalt de gedistribueerde queryverwerkingsengine automatisch rekenresources omhoog of omlaag als reactie op wijzigingen in queryvolume, gegevensgrootte en querycomplexiteit. Fabric Data Warehouse heeft parallelle verwerkingsmogelijkheden voor kleine gegevenssets of gegevens op schaal met meerdere petabyte.
Engine voor het uitvoeren van query's
De engine voor het uitvoeren van query's is een proces waarmee onderdelen van het gedistribueerde uitvoeringsplan worden uitgevoerd die zijn toegewezen aan de afzonderlijke rekenknooppunten. De query-uitvoeringsengine is gebaseerd op dezelfde engine die wordt gebruikt door SQL Server en Azure SQL Database om batchmodusuitvoering en kolomgegevensindelingen te gebruiken voor efficiënte analyses van grote datasets tegen een optimale prijs.
De engine voor het uitvoeren van query's leest gegevens rechtstreeks uit Delta Parquet-bestanden die zijn opgeslagen in Fabric OneLake en maakt gebruik van meerdere cachelagen (geheugen en SSD) om de queryprestaties te versnellen en ervoor te zorgen dat query's op optimale snelheid worden uitgevoerd. De engine voor het uitvoeren van query's verwerkt gegevens in het geheugen en haalt, indien nodig, extra gegevens op uit de SSD-cache of OneLake-opslag.
Tijdens het verwerken van gegevens voert de query-uitvoeringsengine kolom- en rijgroepeneliminatie uit om segmenten over te slaan die niet relevant zijn voor de query. Deze optimalisatie vermindert de hoeveelheid gegevens die worden gescand uit de bestanden en de geheugencache, waardoor het resourcegebruik wordt geminimaliseerd en de totale uitvoeringstijd wordt verbeterd.
De queryuitvoeringsengine excelleert bij het filteren en aggregeren van miljarden rijen, waarbij de algemene analysepatronen van gegevens worden ondersteund die worden gebruikt in moderne datawarehouse-oplossingen. De uitvoering van de batchmodus maakt gebruik van de moderne CPU-mogelijkheid om meerdere rijen parallel te verwerken, waardoor overhead aanzienlijk wordt verminderd en query's tot honderden keren sneller worden uitgevoerd in vergelijking met traditionele uitvoering van rijen per rij.
Metagegevens en transactiebeheer
De magazijnengine maakt gebruik van metagegevens om tabelschema's, bestandsorganisatie, versiegeschiedenis en transactionele statussen te beschrijven. Met deze metagegevens kan de magazijnengine efficiënt gegevens beheren en er query's op uitvoeren. Fabric Data Warehouse biedt een robuuste en uitgebreide architectuur voor metagegevens en transactiebeheer, waarbij een OLTP-transactiemanager wordt uitgebreid om zeer gelijktijdige metagegevensbewerkingen te organiseren en ACID-naleving te garanderen.
Dit ontwerp maakt snelle, betrouwbare navigatie van transactionele statussen mogelijk, waarbij workloads met hoge gelijktijdigheid worden ondersteund en tegelijkertijd consistentie wordt gegarandeerd.
Opslag en gegevensopname
Fabric Data Warehouse maakt gebruik van een lakehouse-architectuur met de opensource Delta-indeling voor schaalbare, veilige en krachtige opslag. De Delta-tabelindeling biedt ondersteuning voor gegevensversiebeheer, waardoor directe toegang tot historische momentopnamen mogelijk is via tijdreizen en klonen zonder kopiëren voor veilige test- en terugdraaibewerkingen. Gebruikersgegevens worden opgeslagen in OneLake, zodat alle Fabric-engines efficiënt toegang hebben tot gedeelde gegevens zonder redundantie.
Fabric Data Warehouse is gebaseerd op deze basis en is ontworpen om optimale prestaties voor gegevensopname te leveren met een focus op eenvoud en flexibiliteit. De engine beheert efficiënt de opslag van tabelgegevens via automatische gegevenscompressie, waarmee gefragmenteerde bestanden op de achtergrond worden geconsolideerd om onnodige gegevensscans te verminderen. De intelligente gegevensdistributiemethode verdeelt en organiseert gegevens in micropartitioneerde cellen om parallelle verwerking te stimuleren en queryresultaten te verbeteren. Deze mogelijkheden functioneren autonoom, zonder dat handmatige aanpassingen nodig zijn.