Škálování prostředků jednoúčelové databáze ve službě Azure SQL Database
Tento článek popisuje, jak škálovat výpočetní prostředky a prostředky úložiště dostupné pro Azure SQL Database ve zřízené výpočetní vrstvě. Úroveň výpočetních prostředků bez serveru také poskytuje automatické škálování výpočetních prostředků a účtuje se za sekundu za využité výpočetní prostředky.
Po počátečním výběru počtu virtuálních jadr nebo DTU můžete dynamicky škálovat jednu databázi nahoru nebo dolů na základě skutečných zkušeností s využitím:
Důležité
Za určitých okolností může být nutné zmenšit databázi, aby se uvolnit nevyužité místo. Další informace najdete v tématu Správa prostoru souborů v Azure SQL Database.
Dopad
Změna úrovně služby nebo velikosti výpočetních prostředků spočívá hlavně v provedení následujících kroků:
Vytvořte pro databázi novou výpočetní instanci.
Vytvoří se nová výpočetní instance s požadovanou úrovní služby a velikostí výpočetních prostředků. U některých kombinací úrovně služby a změny velikosti výpočetních prostředků musí být v nové výpočetní instanci vytvořena replika databáze, která zahrnuje kopírování dat a může výrazně ovlivnit celkovou latenci. Bez ohledu na to zůstává databáze během tohoto kroku online a připojení budou i nadále směrována do databáze v původní výpočetní instanci.
Přepněte směrování připojení na novou výpočetní instanci.
Existující připojení k databázi v původní výpočetní instanci se zahodí. Všechna nová připojení se navázána k databázi v nové výpočetní instanci. U některých kombinací změn úrovně služby a velikosti výpočetních prostředků se databázové soubory během přepínače odpojeny a znovu připojí. Bez ohledu na to může přepnutí způsobit krátké přerušení služby, když je databáze obecně nedostupná po dobu kratší než 30 sekund a často jenom na několik sekund. Pokud při ukončení připojení běží dlouhotrání transakcí, může obnovení přerušených transakcí trvat delší dobu trvání tohoto kroku. zrychlené obnovení databáze snížit dopad přerušení dlouhotrajících transakcí.
Důležité
Během jakéhokoli kroku pracovního postupu se neztratí žádná data. Ujistěte se, že jste implementovali nějakou logiku opakování v aplikacích a komponentách, které používají Azure SQL Database při změně úrovně služby.
Latence
Odhadovaná latence pro změnu úrovně služby, škálování velikosti výpočetních prostředků jedné databáze nebo elastického fondu, přesun databáze do nebo z elastického fondu nebo přesun databáze mezi elastickými fondy je parametrizována takto:
| Úroveň služby | Basic single database,Standard (S0–S1) | Elastický fond basic,Standard (S2–S12), Pro obecné účely jedno databázi nebo elastický fond | Premium nebo Pro důležité obchodní informace jedno databázi nebo elastický fond | Hyperškálování |
|---|---|---|---|---|
| Basic single database, Standard (S0–S1) | • Konstantní časová latence nezávislá na použitém prostoru• Obvykle méně než 5 minut | • Latence úměrná prostoru databáze použitému při kopírování dat• Obvykle méně než 1 minutu na GB využité místa. | • Latence úměrná prostoru databáze použitému při kopírování dat• Obvykle méně než 1 minutu na GB využité místa. | • Latence úměrná prostoru databáze použitému při kopírování dat• Obvykle méně než 1 minutu na GB využité místa. |
| Elastický fond Basic, Standard (S2–S12), Pro obecné účely jedno databázi nebo elastický fond | • Latence úměrná prostoru databáze použitému při kopírování dat• Obvykle méně než 1 minutu na GB využité místa. | • U jedno databází je konstantní časová latence nezávislá na využitých prostorech.• Pro jedno databáze obvykle méně než 5 minut• Pro elastické fondy úměrné počtu databází | • Latence úměrná prostoru databáze použitému při kopírování dat• Obvykle méně než 1 minutu na GB využité místa. | • Latence úměrná prostoru databáze použitému při kopírování dat• Obvykle méně než 1 minutu na GB využité místa. |
| Premium nebo Pro důležité obchodní informace jedno databázi nebo elastický fond | • Latence úměrná prostoru databáze použitému při kopírování dat• Obvykle méně než 1 minutu na GB využité místa. | • Latence úměrná prostoru databáze použitému při kopírování dat• Obvykle méně než 1 minutu na GB využité místa. | • Latence úměrná prostoru databáze použitému při kopírování dat• Obvykle méně než 1 minutu na GB využité místa. | • Latence úměrná prostoru databáze použitému při kopírování dat• Obvykle méně než 1 minutu na GB využité místa. |
| Hyperškálování | N/A | N/A | N/A | • Konstantní časová latence nezávislá na použitém prostoru• Obvykle méně než 2 minuty |
Poznámka
Kromě toho u databází Standard (S2–S12) a Pro obecné účely bude latence přesunu databáze do nebo z elastického fondu nebo mezi elastickými fondy úměrná velikosti databáze, pokud databáze používá úložiště sdílené složky(PFS)Premium.
Pokud chcete zjistit, jestli databáze používá úložiště PFS, spusťte v kontextu databáze následující dotaz. Pokud je hodnota ve sloupci AccountType PremiumFileStorage nebo , databáze používá úložiště PremiumFileStorage-ZRS PFS.
SELECT s.file_id,
s.type_desc,
s.name,
FILEPROPERTYEX(s.name, 'AccountType') AS AccountType
FROM sys.database_files AS s
WHERE s.type_desc IN ('ROWS', 'LOG');
Poznámka
Zónově redundantní vlastnost zůstane při škálování z Pro důležité obchodní informace na úroveň Pro obecné účely stejná. Latence tohoto downgradu při povolené zónové redundanci a také latence pro přepnutí na zónovou redundanci pro Pro obecné účely bude úměrná velikosti databáze.
Tip
Pokud chcete monitorovat probíhající operace, projděte si: Správa operací pomocí SQL REST API ,Správa operací pomocí rozhraní příkazového řádku, Monitorování operací pomocí T-SQL a těchto dvou příkazů PowerShellu: Get-AzSqlDatabaseActivity a Stop-AzSqlDatabaseActivity.
Zrušení změn
Operaci změny úrovně služby nebo škálování výpočetních prostředků je možné zrušit.
Azure Portal
V okně přehledu databáze přejděte na Oznámení a klikněte na dlaždici s oznámením, že probíhá operace:

Potom klikněte na tlačítko s popiskem Zrušit tuto operaci.

PowerShell
Na příkazovém řádku PowerShellu nastavte , a a $resourceGroupName $serverName pak spusťte následující $databaseName příkaz:
$operationName = (az sql db op list --resource-group $resourceGroupName --server $serverName --database $databaseName --query "[?state=='InProgress'].name" --out tsv)
if (-not [string]::IsNullOrEmpty($operationName)) {
(az sql db op cancel --resource-group $resourceGroupName --server $serverName --database $databaseName --name $operationName)
"Operation " + $operationName + " has been canceled"
}
else {
"No service tier change or compute rescaling operation found"
}
Další aspekty
- Pokud upgradujete na vyšší úroveň služby nebo velikost výpočetních prostředků, maximální velikost databáze se nezvýší, pokud explicitně nezadáte větší velikost (maxsize).
- Pokud chcete downgradovat databázi, musí být využité místo databáze menší než maximální povolená velikost cílové úrovně služby a velikosti výpočetních prostředků.
- Při downgradu z Premium na úroveň Standard platí další náklady na úložiště, pokud obě (1) maximální velikost databáze podporuje cílová velikost výpočetních prostředků a (2) maximální velikost překračuje zahrnutou velikost úložiště cílové velikosti výpočetních prostředků. Pokud je například databáze P1 s maximální velikostí 500 GB z downsized na S3, pak se účtuly další náklady na úložiště, protože S3 podporuje maximální velikost 1 TB a zahrnutá velikost úložiště je pouze 250 GB. Takže další velikost úložiště je 500 GB – 250 GB = 250 GB. Ceny za úložiště navíc najdete na Azure SQL Database . Pokud je skutečné využité místo menší než zahrnuté množství úložiště, můžete se této dodatečné náklady vyhnout snížením maximální velikosti databáze na zahrnuté množství.
- Při upgradu databáze s povolenou geografickou replikací upgradujte sekundární databáze na požadovanou úroveň služby a velikost výpočetních prostředků před upgradem primární databáze (obecné pokyny k dosažení nejlepšího výkonu). Při upgradu na jinou edici je nutné nejprve upgradovat sekundární databázi.
- Při downgradu databáze s povolenou geografickou replikací před downgradem sekundární databáze downgrade primární databáze na požadovanou úroveň služby a velikost výpočetních prostředků (obecné pokyny pro dosažení nejlepšího výkonu). Při downgradu na jinou edici je nutné nejprve downgradovat primární databázi.
- Nabídky služeb pro obnovení se u různých úrovní služby liší. Pokud downgradujete na úroveň Basic, je doba uchovávání záloh nižší. Viz Azure SQL Database zálohování.
- Nové vlastnosti databáze se použijí až po dokončení změn.
- Pokud se ke škálování databáze vyžaduje kopírování dat (viz Latence),může vysoké využití prostředků souběžné s operací škálování způsobit delší dobu škálování. Vzhledem k zrychlené obnovení databáze (ADR)není vrácení dlouhotrvalých transakcí významným zdrojem zpoždění, ale vysoké souběžné využití prostředků může ponechat méně výpočetních prostředků, prostředků úložiště a šířky pásma sítě pro škálování, zejména pro menší velikosti výpočetních prostředků.
Fakturace
Účtuje se vám každá hodina, po kterou databáze existuje, s nejvyšší úrovní služby a velikostí výpočetních prostředků, která se během této hodiny použila, bez ohledu na využití nebo na to, jestli byla databáze aktivní méně než hodinu. Pokud například vytvoříte jednu databázi a o pět minut později ji odstraníte, bude se vám účtovat poplatek za jednu hodinu databáze.
Změna velikosti úložiště
Nákupní model založený na virtuálních jádrech
- Storage 1 GB je možné zřídit až do limitu maximální velikosti úložiště dat. Minimální konfigurovatelné úložiště dat je 1 GB. Informace o omezeních maximální velikosti úložiště dat v jednotlivých cílech služby najdete na stránkách dokumentace k limitům prostředků pro limity prostředků pro jednotlivé databáze s využitím nákupního modelu s virtuálními jádro a limity prostředků pro jednoduché databáze pomocí nákupního modelu DTU.
- Úložiště dat pro jednu databázi je možné zřídit zvýšením nebo snížením její maximální velikosti pomocí příkazů Azure Portal, Transact-SQL, PowerShell, Azure CLI nebo REST API. Pokud je hodnota maximální velikosti zadaná v bajtech, musí to být násobek 1 GB (1073741824 bajtech).
- Množství dat, které lze uložit v datových souborech databáze, je omezené maximální velikostí nakonfigurovaného úložiště dat. Kromě tohoto úložiště Azure SQL Database automaticky přidělí o 30 % více úložiště, které se použije pro transakční protokol.
- Azure SQL Database databázi automaticky přidělí 32 GB na virtuální
tempdbjádro.tempdbse nachází v místním úložišti SSD ve všech úrovních služby. - Cena za úložiště pro jednu databázi nebo elastický fond je součet částek úložiště datového úložiště a transakčních protokolů vynásobené cenou jednotky úložiště úrovně služby. Náklady na
tempdbjsou zahrnuté v ceně. Podrobnosti o cenách úložiště najdete v tématu Azure SQL Database ceny.
Důležité
Za určitých okolností může být nutné zmenšit databázi, aby se uvolnit nevyužité místo. Další informace najdete v tématu Správa prostoru souborů v Azure SQL Database.
Nákupní model založený na DTU
- Cena za DTU pro jednu databázi zahrnuje určité množství úložiště bez dalších nákladů. Další úložiště nad rámec zahrnuté velikosti je možné zřídit pro dodatečné náklady až do limitu maximální velikosti v přírůstcích po 250 GB až do 1 TB a pak v přírůstcích po 256 GB nad 1 TB. Informace o zahrnutých objemech úložiště a maximálních velikostech najdete v tématu Jedno databázi: Storage velikost a velikosti výpočetních prostředků.
- Dodatečné úložiště pro jednu databázi je možné zřídit zvýšením její maximální velikosti pomocí služeb Azure Portal, Transact-SQL, PowerShell, Azure CLI nebo REST API.
- Cena za další úložiště pro jednu databázi je další velikost úložiště vynásobená cenou za jednotku úložiště úrovně služby. Podrobnosti o ceně dodatečného úložiště najdete v tématu Azure SQL Database ceny.
Důležité
Za určitých okolností může být nutné zmenšit databázi, aby se uvolnit nevyužité místo. Další informace najdete v tématu Správa prostoru souborů v Azure SQL Database.
Geograficky replikovaná databáze
Pokud chcete změnit velikost databáze replikované sekundární databáze, změňte velikost primární databáze. Tato změna se pak bude replikovat a implementovat i v sekundární databázi.
Omezení P11 a P15 při maximální velikosti větší než 1 TB
Více než 1 TB úložiště na úrovni Premium je aktuálně k dispozici ve všech oblastech s výjimkou oblastí Čína – východ, Čína – sever, Německo – střed a Německo – severovýchod. V těchto oblastech je maximální velikost úložiště v Premium omezená na 1 TB. Následující aspekty a omezení platí pro databáze P11 a P15 s maximální velikostí větší než 1 TB:
- Pokud byla maximální velikost databáze P11 nebo P15 někdy nastavená na hodnotu větší než 1 TB, je možné ji obnovit nebo zkopírovat pouze do databáze P11 nebo P15. Následně je možné databázi škálovat na jinou velikost výpočetních prostředků za předpokladu, že množství místa přidělené v době operace škálování nepřekročí limity maximální velikosti nové velikosti výpočetních prostředků.
- Scénáře aktivní geografické replikace:
- Nastavení vztahu geografické replikace: Pokud je primární databáze P11 nebo P15, sekundární databáze musí být také P11 nebo P15. Nižší velikost výpočetních prostředků se zamítá jako sekunda, protože nejsou schopny podporovat více než 1 TB.
- Upgrade primární databáze ve vztahu geografické replikace: Změna maximální velikosti na více než 1 TB v primární databázi aktivuje stejnou změnu v sekundární databázi. Oba upgrady musí být úspěšné, aby se změna na primárním serveru projeví. Platí omezení oblastí pro více než 1 TB možností. Pokud je sekundární databáze v oblasti, která nepodporuje více než 1 TB, primární databáze se ne upgrade.
- Použití Import/export pro načítání databází P11/P15 s více než 1 TB se nepodporuje. Pomocí SqlPackage.exe můžete importovat a exportovat data.
Další kroky
Celkové limity prostředků najdete v tématu Azure SQL Database prostředků založených na virtuálních Azure SQL Database a omezení prostředků založených na DTU – jedno databází.