Delen via


De grootte bepalen, schalen en wachtrijgedrag van SQL-warehouse

In dit artikel wordt het gedrag van clustergrootten, wachtrijen en automatische schaalaanpassing van SQL-warehouses uitgelegd.

De grootte van een serverloos SQL-warehouse aanpassen

Begin altijd met een grotere t-shirtgrootte voor uw serverloze SQL Warehouse dan u denkt dat u het nodig hebt en de grootte lager zult hebben tijdens het testen. Begin niet met een kleine t-shirtgrootte voor uw serverloze SQL Warehouse en ga omhoog. Begin in het algemeen met één serverloze SQL-warehouse en vertrouw op Azure Databricks om de juiste grootte te geven aan serverloze clusters, workloads te prioriteren en snel gegevens te lezen. Zie Serverloze automatische schaalaanpassing en query's in de wachtrij plaatsen.

  • De querylatentie voor een bepaald serverloze SQL Warehouse verlagen:
    • Als query's overlopen op schijf, vergroot u de t-shirtgrootte.
    • Als de query's zeer parallelleerbaar zijn, vergroot u de t-shirtgrootte.
    • Als u meerdere query's tegelijk uitvoert, voegt u meer clusters toe voor automatisch schalen.
  • Als u de kosten wilt verlagen, probeert u de t-shirtgrootte te verlagen zonder over te lopen naar schijf of een aanzienlijke toename van de latentie.
  • Gebruik de volgende hulpprogramma's om de juiste grootte van uw serverloze SQL Warehouse te geven:
    • Bewakingspagina: bekijk het piekaantal query's. Als de piek in de wachtrij meestal boven één ligt, voegt u clusters toe. Het maximum aantal query's in een wachtrij voor alle SQL-warehousetypen is 1000. Zie Een SQL-warehouse bewaken.
    • Querygeschiedenis. Bekijk de querygeschiedenis.
    • Queryprofielen (zoek naar bytes die naar schijf zijn overgeslagen boven 1). Zie Queryprofiel.

Notitie

Voor serverloze SQL-warehouses kunnen de clustergrootten in sommige gevallen verschillende exemplaartypen gebruiken dan de typen exemplaren die worden vermeld in de documentatie voor pro- en klassieke SQL-warehouses voor een equivalente clustergrootte. Over het algemeen is de prijs-/prestatieverhouding van de clustergrootten voor serverloze SQL-magazijnen vergelijkbaar met die voor pro- en klassieke SQL-magazijnen.

Serverloze automatische schaalaanpassing en query's in de wachtrij plaatsen

Intelligent Workload Management (IWM) is een set functies waarmee serverloze SQL Warehouses grote aantallen query's snel en rendabel kunnen verwerken. Door AI gemaakte voorspellingsmogelijkheden te gebruiken om binnenkomende query's te analyseren en de snelste en efficiëntere (voorspellende IO) te bepalen, werkt IWM om ervoor te zorgen dat workloads snel over de juiste hoeveelheid resources beschikken. Het belangrijkste verschil is in de AI-mogelijkheden in Databricks SQL om dynamisch te reageren op workloadvereisten in plaats van statische drempelwaarden te gebruiken.

Deze reactiesnelheid zorgt voor het volgende:

  • Snelle upscaling om meer rekenkracht te verkrijgen wanneer dat nodig is om lage latentie te behouden.
  • Query-toegang dichter bij de beperking van de hardware.
  • Snelle schaalaanpassing om de kosten te minimaliseren wanneer de vraag laag is, waardoor consistente prestaties worden geboden met geoptimaliseerde kosten en resources.

Wanneer een query binnenkomt in het magazijn, voorspelt IWM de kosten van de query. Tegelijkertijd is IWM realtime bewaking van de beschikbare rekencapaciteit van het magazijn. Vervolgens voorspelt IWM met behulp van machine learning-modellen of de binnenkomende query de benodigde rekenkracht heeft die beschikbaar is voor de bestaande berekening. Als de rekenkracht niet nodig is, wordt de query toegevoegd aan de wachtrij. Als er wel rekenkracht nodig is, wordt de query onmiddellijk uitgevoerd.

IWM bewaakt de wachtrij ongeveer om de 10 seconden. Als de wachtrij niet snel genoeg afneemt, wordt automatisch schalen gestart om snel meer rekenkracht aan te schaffen. Zodra er nieuwe capaciteit is toegevoegd, worden query's in de wachtrij opgenomen in de nieuwe clusters. Met serverloze SQL-warehouses kunnen nieuwe clusters snel worden toegevoegd en kunnen meerdere clusters tegelijk worden gemaakt. Het maximum aantal query's in een wachtrij voor alle SQL-warehousetypen is 1000.

Clustergrootten voor pro- en klassieke SQL-warehouses

De tabel in deze sectie wijst SQL Warehouse-clustergrootten toe aan azure Databricks-clusterstuurprogrammagrootte en aantal werkrollen. De stuurprogrammagrootte is alleen van toepassing op pro- en klassieke SQL-warehouses.

Grootte van cluster Exemplaartype voor stuurprogramma (alleen van toepassing op pro- en klassieke SQL-warehouses) Aantal werkrollen
2X-klein Standard_E8ds_v4 1 x Standard_E8ds_v4
X-klein Standard_E8ds_v4 2 x Standard_E8ds_v4
Klein Standard_E16ds_v4 4 x Standard_E8ds_v4
Gemiddeld Standard_E32ds_v4 8 x Standard_E8ds_v4
Groot Standard_E32ds_v4 16 x Standard_E8ds_v4
X-groot Standard_E64ds_v4 32 x Standard_E8ds_v4
2X-groot Standard_E64ds_v4 64 x Standard_E8ds_v4
3X groot Standard_E64ds_v4 128 x Standard_E8ds_v4
4x groot Standard_E64ds_v4 256 x Standard_E8ds_v4

De instantiegrootte van alle werkrollen is Standard_E8ds_v4.

Elk stuurprogramma en elke werkrol heeft acht standard LRS-beheerde schijven van 128 GB. Gekoppelde schijven worden elk uur in rekening gebracht.

Vereist Azure vCPU-quotum voor klassieke en pro SQL-warehouses

Als u een klassiek of pro SQL Warehouse wilt starten, moet u voldoende Azure vCPU-quotum hebben voor Standard_E8ds_v4 exemplaren in uw Azure-account. Gebruik de volgende richtlijnen om het vereiste vCPU-quotum te bepalen:

  • Als u slechts één of twee SQL-warehouses hebt, moet u ervoor zorgen dat er 8 Azure vCPU's beschikbaar zijn voor elke kern in het cluster. Dit zorgt ervoor dat u voldoende Azure vCPU hebt om rekening te houden met de herinrichting van uw magazijn dat ongeveer om de 24 uur plaatsvindt. Als uw SQL-warehouses automatisch schalen of taakverdeling voor meerdere clusters gebruiken, moet u mogelijk de vermenigvuldiger verhogen.
  • Naarmate het aantal SQL-warehouses toeneemt, kunt u voor elke kern in het cluster tussen 4 en 8 Azure vCPU's toestaan. Databricks raadt aan om te beginnen met een groter aantal en bewaking voor stabiliteit.
  • Azure vCPU's die worden gebruikt door SQL-warehouses, is een aanvulling op Azure vCPU's die worden gebruikt door clusters die worden gebruikt door Datawetenschap & Engineering of door niet-Databricks-workloads.

Als u extra Azure vCPU-quotum wilt aanvragen, raadpleegt u Standaardquotum: Limieten verhogen per VM-serie in de Azure-documentatie.

Notitie

De informatie in deze tabel kan variëren op basis van de beschikbaarheid van producten of regio's en het type werkruimte.

Wachtrijen en automatisch schalen voor pro- en klassieke SQL-warehouses

Azure Databricks beperkt het aantal query's op een cluster dat is toegewezen aan een SQL-warehouse op basis van de kosten voor het berekenen van de resultaten. Upscaling van clusters per magazijn is gebaseerd op querydoorvoer, de snelheid van binnenkomende query's en de wachtrijgrootte. Azure Databricks raadt een cluster aan voor elke 10 gelijktijdige query's. Het maximum aantal query's in een wachtrij voor alle SQL-warehousetypen is 1000.

Azure Databricks voegt clusters toe op basis van de tijd die nodig is voor het verwerken van alle actieve query's, alle query's in de wachtrij en de binnenkomende query's die in de komende twee minuten worden verwacht.

  • Als u minder dan 2 minuten hebt, kunt u niet opschalen.
  • Als het cluster 2 tot 6 minuten duurt, voegt u 1 cluster toe.
  • Als 6 tot 12 minuten, voegt u 2 clusters toe.
  • Als 12 tot 22 minuten, voegt u drie clusters toe.

Anders voegt Azure Databricks 3 clusters plus 1 cluster toe voor elke extra 15 minuten aan verwachte querybelasting.

Bovendien wordt een magazijn altijd opgeschaald als een query vijf minuten in de wachtrij wacht.

Als de belasting 15 minuten laag is, schaalt Azure Databricks het SQL-warehouse omlaag. Er worden voldoende clusters bijgehouden om de piekbelasting van de afgelopen 15 minuten af te handelen. Als de piekbelasting bijvoorbeeld 25 gelijktijdige query's was, bewaart Azure Databricks 3 clusters.

Query's in wachtrij plaatsen voor pro- en klassieke SQL-warehouses

Azure Databricks wachtrijen query's wanneer alle clusters die aan het magazijn zijn toegewezen, query's uitvoeren op volledige capaciteit of wanneer het magazijn de STARTING status heeft. Het maximum aantal query's in een wachtrij voor alle SQL-warehousetypen is 1000.

Metagegevensquery's (bijvoorbeeld DESCRIBE <table>) en statuswijzigingsquery's (bijvoorbeeld SET) worden nooit in de wachtrij geplaatst, tenzij het magazijn de STARTING status heeft.