Een elastische SQL-pool maken

Voltooid

SaaS-providers (Software as a Service), zoals uw fitnessbedrijf, moeten vaak een SQL-database inrichten voor elke klant; in ons geval voor elke locatie. Als serviceprovider moet u reageren op onvoorspelbare workloads, met name bij het opslaan van klantgegevens. Mogelijk hebt u geen inzicht in hoe snel elke client groeit of wanneer de vraag toeneemt.

Hoe worden databaseresources traditioneel ingericht?

SaaS-providers moesten traditioneel resources te veel inrichten om ervoor te zorgen dat ze capaciteit hebben voor piekvraag, wat kosten toevoegt; of onderinrichting, wat invloed kan hebben op de prestaties tijdens hoge vraag.

Wat is een elastische SQL-pool?

Elastische SQL-pools zijn een resourcetoewijzingsservice die wordt gebruikt voor het schalen en beheren van de prestaties en kosten van een groep Azure SQL-databases. Met elastische pools kunt u resources aanschaffen voor de groep. U stelt de hoeveelheid resources in die beschikbaar zijn voor de groep, voegt databases toe aan de pool en stelt minimum- en maximumresourcelimieten in voor de databases in de pool.

De resourcevereisten voor de pool zijn ingesteld op basis van de algemene behoeften van de groep. Met behulp van de pool kunnen de databases in de pool de toegewezen resources delen. Elastische SQL-pools worden gebruikt voor het beheren van het budget en de prestaties van meerdere SQL databases.

Wanneer kunt u een elastische pool gebruiken?

Elastische SQL-groepen zijn ideaal als u over meerdere SQL databases beschikt met een laag gemiddeld gebruik, maar zeldzame en sterke pieken in het gebruik kent. In dit scenario kunt u voldoende capaciteit in de pool toewijzen voor het beheren van de pieken voor de groep, maar het totaal aan resources mag minder zijn dan de som van alle pieken in de vraag van alle databases. Omdat de pieken niet vaak voorkomen, is een piek van de ene database waarschijnlijk niet van invloed op de capaciteit van de andere databases in de pool.

In ons scenario van het fitnessbedrijf kunnen de afzonderlijke locaties promoties uitvoeren op verschillende tijdstippen van het jaar of pieken in de vraag zien tijdens regionale feestdagen of op verschillende tijdstippen van de dag.

Hoeveel databases kunnen aan een pool worden toegevoegd?

De algemene richtlijnen zijn dat als de gecombineerde resources die u nodig hebt voor afzonderlijke databases, meer dan 1,5 keer de capaciteit is die nodig is voor de elastische pool, de pool rendabel is.

We raden u minimaal aan om ten minste twee S3-databases of vijftien S0-databases toe te voegen aan één pool, zodat deze potentiële kostenbesparingen kunnen hebben.

Afhankelijk van de prestatielaag kunt u 500 databases toevoegen aan één pool.

Een elastische pool maken

Elastische SQL-pools moeten worden gehost in een SQL-server. U geeft een bestaande server op of maakt een nieuwe server bij het maken van een elastische pool.

Net als bij veel Azure-resources kunnen elastische pools worden gemaakt vanuit Azure Portal of met behulp van de Azure CLI waarop de az sql elastic-pools create opdracht wordt uitgevoerd, of via PowerShell die de New-AzSqlElasticPool opdracht uitvoert.

In de oefening in de volgende eenheid gaat u een elastische SQL-pool maken.

Databases toevoegen aan een elastische pool

U kunt databases toevoegen met behulp van Azure Portal, De Azure CLI of PowerShell.

Wanneer u Azure Portal gebruikt, kunt u een nieuwe pool toevoegen aan een bestaande SQL-server of een nieuwe elastische SQL-poolresource maken en de server opgeven.

Wanneer u de CLI gebruikt, roept u az sql db create aan en geeft u de poolnaam op met de parameter --elastic-pool-name. Met deze opdracht kunt u een bestaande database naar de pool verplaatsen of een nieuwe maken als deze niet bestaat.

Wanneer u PowerShell gebruikt, kunt u nieuwe databases toewijzen aan een pool met New-AzSqlDatabase en bestaande databases verplaatsen met behulp van Set-AzSqlDatabase.

U kunt vanuit uw Azure SQL-server bestaande Azure SQL databases toevoegen aan de pool of nieuwe databases maken. U kunt servicelagen in dezelfde pool combineren.