Přehled nákupního modelu založeného na DTU
Platí pro:Azure SQL Database
Tento článek obsahuje přehled nákupního modelu založeného na DTU pro Azure SQL Database. Nákupní model založený na DTU je jednoduchý, souhrnný balíček zahrnující výpočetní prostředky, úložiště a prostředky pro vstup a výstup dat. Je nejvhodnější pro většinu zákazníků s typickými úlohami. Nákupní model založený na DTU je k dispozici na úrovních služby Basic, Standard a Premium. Nákupní model založený na DTU je také k dispozici pro elastické pooly.
Nákupní model založený na DTU se liší od nákupního modelu založeného na virtuálních jádrech, takže můžete porovnat nákupní modely.
Jednotky databázových transakcí (DTU)
Jednotka databázové transakce (DTU) představuje kombinovaný ukazatel procesoru, paměti a operací čtení a zápisu. Úrovně služeb v nákupním modelu založeném na DTU se rozlišují podle rozsahu velikostí výpočetních prostředků s pevným množstvím zahrnutého úložiště, pevným obdobím uchovávání záloh a pevnou cenou. Všechny úrovně služeb v nákupním modelu založeném na jednotce DTU poskytují flexibilitu při změně velikostí výpočetních prostředků s minimálními výpadky. Během přepínacího období však může dojít ke krátkodobé ztrátě připojení k databázi, což lze minimalizovat použitím logiky opakování. Jednoúčelové databáze a elastické fondy se účtují každou hodinu na základě úrovně služby a velikosti výpočetních prostředků.
Pro jednu databázi v určité velikosti výpočetních prostředků v rámci úrovně služby azure SQL Database zaručuje pro danou databázi určitou úroveň prostředků (nezávisle na jakékoli jiné databázi). Tato záruka poskytuje předvídatelnou úroveň výkonu. Množství prostředků přidělených pro databázi se vypočítá jako počet DTU a je sadou výpočetních prostředků, úložiště a vstupně-výstupních prostředků.
Poměr těchto prostředků je původně určen srovnávací úlohou zpracování online transakcí (OLTP), která je navržená tak, aby byla typická pro úlohy OLTP z reálného světa. Když vaše úloha překročí množství těchto prostředků, omezí se propustnost, což vede k pomalejšímu výkonu a vypršení časového limitu.
U jednoúčelových databází nemají prostředky používané vaší úlohou vliv na prostředky dostupné pro jiné databáze v cloudu Azure. Podobně prostředky používané jinými úlohami nemají vliv na prostředky dostupné pro vaši databázi.
Jednotky DTU jsou nejužitečnější pro pochopení relativních prostředků přidělených pro databáze v různých velikostech výpočetních prostředků a úrovních služeb. Příklad:
- Zdvojnásobení jednotek DTU zvýšením velikosti výpočetních prostředků databáze se rovná zdvojnásobení sady prostředků dostupných pro danou databázi.
- Databáze úrovně služby Premium P11 s 1750 DTU poskytuje 350krát více výpočetního výkonu DTU než databáze úrovně služby Basic s 5 DTU.
Pokud chcete získat hlubší přehled o spotřebě prostředků (DTU) vaší úlohy, použijte analýzy výkonu dotazů k:
- Identifikujte dotazy s nejvyšší zátěží podle CPU, doby trvání, nebo počtu spuštění, které mohou být potenciálně optimalizovány pro zlepšení výkonu. Dotaz náročný na vstupně-výstupní operace může například těžit z technik optimalizace v paměti, aby se lépe využívala dostupná paměť v určité úrovni služby a velikosti výpočetních prostředků.
- Přejděte k podrobnostem dotazu a zobrazte jeho text a historii využití prostředků.
- Zobrazte doporučení pro ladění výkonu, která zobrazují akce prováděné nástrojem Database Advisor.
Elastické jednotky transakcí databáze (eDTU)
Místo poskytnutí vyhrazené sady prostředků (DTU), které nemusí být vždy potřeba, můžete tyto databáze umístit do elastického fondu. Databáze v elastickém fondu používají jednu instanci databázového stroje a sdílejí stejný fond prostředků.
Sdílené prostředky v elastickém fondu se měří jednotkami transakcí elastické databáze (eDTU). Elastické fondy poskytují jednoduché nákladově efektivní řešení pro správu výkonnostních cílů pro více databází, které mají široce proměnlivé a nepředvídatelné vzory využití. Elastický fond zaručuje, že všechny prostředky nemohou být spotřebovány jednou databází ve fondu a zároveň zajistí, aby každá databáze ve fondu vždy byla k dispozici minimální množství potřebných prostředků.
Fond má nastavený počet jednotek eDTU pro stanovenou cenu. V elastickém fondu můžou jednotlivé databáze automaticky škálovat v rámci nakonfigurovaných hranic. Databáze s větším zatížením spotřebovává více jednotek eDTU, aby splňovala poptávku. Databáze s nižším zatížením spotřebovávají méně eDTU. Databáze bez zatížení nespotřebovávají žádné eDTU. Vzhledem k tomu, že jsou prostředky zřízené pro celý fond, a ne pro každou databázi, elastické fondy zjednodušují úlohy správy a poskytují předvídatelný rozpočet pro fond.
Do existujícího fondu můžete přidat další eDTUs s minimálními výpadky provozu databáze. Podobně pokud už nepotřebujete další eDTU, odeberte je z existujícího fondu kdykoli. Do fondu můžete také kdykoli přidávat databáze nebo je z fondu odebírat. Pokud chcete rezervovat eDTU pro jiné databáze, omezte počet databází eDTU, které mohou být využity při velkém zatížení. Pokud má databáze konzistentně vysoké využití prostředků, které ovlivňuje jiné databáze ve fondu, přesuňte ji z fondu a nakonfigurujte ji jako jednu databázi s předvídatelným množstvím požadovaných prostředků.
Úlohy, které využívají elastický fond prostředků
Fondy jsou vhodné pro databáze s nízkým průměrem využití prostředků a relativně málo častými špičkami využití. Další informace najdete v tématu Elastické fondy ve službě Azure SQL Database.
Určení počtu DTU potřebných úlohou
Pokud chcete migrovat existující místní úlohu nebo úlohu serveru SQL na virtuálním počítači do služby SQL Database, podívejte se na doporučení SKU, která vám pomohou odhadnout počet potřebných jednotek DTU. Pro existující úlohu SQL Database využijte přehledy výkonu dotazů k pochopení spotřeby databázových prostředků (DTU) a získání hlubších přehledů pro optimalizaci úloh. Zobrazení sys.dm_db_resource_stats pro dynamickou správu (DMV) umožňuje zobrazit spotřebu prostředků za poslední hodinu. Zobrazení katalogu sys.resource_stats zobrazuje spotřebu prostředků za posledních 14 dnů, ale s nižší věrností pětiminutových průměrů.
Určení využití DTU
Pokud chcete zjistit průměrné procento využití DTU/eDTU vzhledem k limitu DTU/eDTU databáze nebo elastického fondu, použijte následující vzorec:
avg_dtu_percent = MAX(avg_cpu_percent, avg_data_io_percent, avg_log_write_percent)
Vstupní hodnoty pro tento vzorec lze získat z zobrazení dynamické správy sys.dm_db_resource_stats, sys.resource_stats a sys.elastic_pool_resource_stats. Jinými slovy, pokud chcete určit procento využití DTU/eDTU směrem k limitu DTU/eDTU databáze nebo elastického fondu, vyberte největší procentuální hodnotu z následujících možností: avg_cpu_percent
, avg_data_io_percent
a avg_log_write_percent
v daném časovém okamžiku.
Poznámka:
Limit DTU databáze je určen procesorem, čtením, zápisy a pamětí dostupnou pro databázi. Vzhledem k tomu, že stroj SQL Database obvykle používá pro svou mezipaměť dat veškerou dostupnou paměť ke zlepšení výkonu, avg_memory_usage_percent
bude tato hodnota obvykle téměř 100 % bez ohledu na aktuální zatížení databáze. Proto i když paměť nepřímo ovlivňuje limit DTU, nepoužívá se ve vzorci využití DTU.
Hardwarová konfigurace
V nákupním modelu založeném na DTU si zákazníci nemůžou zvolit konfiguraci hardwaru použitou pro své databáze. Zatímco daná databáze obvykle zůstává na určitém typu hardwaru po dlouhou dobu (obvykle několik měsíců), existují určité události, které můžou způsobit přesun databáze do jiného hardwaru.
Databázi je možné například přesunout na jiný hardware, pokud se upravuje její kapacita s ohledem na jiný cíl služby, nebo pokud aktuální infrastruktura v datacentru dosahuje kapacitních limitů, nebo pokud je aktuálně používaný hardware vyřazován z provozu kvůli dosažení konce své životnosti.
Pokud se databáze přesune na jiný hardware, může se změnit výkon úloh. Model DTU zaručuje, že propustnost a doba odezvy srovnávací úlohy DTU zůstanou podstatně stejné při přechodu databáze na jiný typ hardwaru, pokud její cíl služby (počet DTU) zůstane stejný.
V širokém spektru zákaznických úloh běžících ve službě Azure SQL Database ale může být dopad použití různého hardwaru pro stejný cíl služby výraznější. Různé úlohy můžou těžit z různých konfigurací hardwaru a funkcí. V případě jiných úloh než srovnávacího testu DTU je proto možné zobrazit rozdíly v výkonu, pokud se databáze přesune z jednoho typu hardwaru na jiný.
Zákazníci můžou model virtuálních jader použít k výběru preferované konfigurace hardwaru při vytváření a škálování databáze. V modelu virtuálních jader jsou podrobně zdokumentovány limity zdrojů pro každý servisní cíl v každé hardwarové konfiguraci pro c0/jednotlivé databáze/c0 a c1/elastic pooly/c1. Další informace naleznete v tématu Konfigurace hardwaru.
Porovnání úrovní služby
Poznámka:
Bezplatnou databázi ve službě Azure SQL Database můžete získat na úrovni služby Basic pomocí bezplatného účtu Azure. Informace najdete v tématu Vytvoření spravované cloudové databáze pomocí bezplatného účtu Azure.
Volba úrovně služby závisí především na požadavcích na provozní kontinuitu, úložiště a výkon.
Základní | Standard | Prémiový | |
---|---|---|---|
Cílová úloha | Vývoj a výroba | Vývoj a výroba | Vývoj a výroba |
SLA dostupnosti | 99,99 % | 99,99 % | 99,99 % |
Backup | Volba geograficky redundantního, zónově redundantního nebo místně redundantního úložiště zálohování, 1 až 7 dnů uchovávání (výchozí 7 dnů) Dlouhodobé uchování až na 10 let |
Volba geograficky redundantního, zónově redundantního nebo místně redundantního úložiště zálohování, uchovávání 1–35 dnů (výchozí 7 dnů) Dlouhodobé uchovávání je k dispozici po dobu až 10 let |
Volba místně redundantního úložiště (LRS), zónově redundantního úložiště (ZRS) nebo geograficky redundantního úložiště (GRS) Uchovávání na dobu 1–35 dnů (standardně 7 dnů) s možností dlouhodobého uchovávání až na 10 let. |
CPU | Nízká | Nízká, Střední, Vysoká | Střední, vysoký |
IOPS (přibližná)1 | 1–4 IOPS na DTU | 1–4 IOPS na DTU | >25 IOPS na DTU |
Latence vstupně-výstupních operací (přibližná) | 5 ms (čtení), 10 ms (zápis) | 5 ms (čtení), 10 ms (zápis) | 2 ms (čtení/zápis) |
Indexovánícolumnstore 2 | N/A | Standard S3 a vyšší | Podporováno |
OLTP v paměti | Nevztahuje se | není relevantní | Podporováno |
1 Všechny vstupně-výstupní operace čtení a zápisu IOPS proti datovým souborům, včetně vstupně-výstupních operací na pozadí (kontrolní bod a opožděný zapisovač).
2 Další informace naleznete v tématu Změna úrovní služby databází obsahujících columnstore indexy.
Důležité
Cíle služby Basic, S0, S1 a S2 poskytují méně než jedno virtuální jádro (CPU). Pro úlohy náročné na procesor se doporučuje cíl služby S3 nebo vyšší.
V cílech služby Basic, S0 a S1 jsou soubory databáze uložené ve službě Azure Standard Storage, která používá úložné médium založené na pevných discích (HDD). Tyto cíle služby jsou nejvhodnější pro vývoj, testování a další zřídka používané úlohy, které jsou méně citlivé na proměnlivost výkonu.
Tip
Pokud chcete zjistit skutečné limity správy prostředků pro databázi nebo elastický fond, dotazujte se na zobrazení sys.dm_user_db_resource_governance. Pro jednu databázi se vrátí jeden řádek. Pro databázi v elastickém fondu se vrátí řádek pro každou databázi ve fondu.
Omezení prostředků
Omezení prostředků se liší u jednoúčelových databází a databází ve fondu.
Limity jednoúčelových úložišť databáze
Ve službě Azure SQL Database se velikosti výpočetních prostředků vyjadřují z hlediska jednotek DTU (Database Transaction Units) pro izolované databáze a jednotky elastické databázové transakce (eDTU) pro elastické fondy. Další informace najdete v omezeních prostředků pro jednotlivé databáze.
Základní | Standard | Nadstandardní | |
---|---|---|---|
Maximální velikost úložiště | 2 GB | 1 TB | 4 TB |
Maximální počet DTU | 5 | 3000 | 4000 |
Důležité
Za určitých okolností možná budete muset zmenšit databázi, aby se uvolnilo nevyužité místo. Další informace najdete v tématu Správa prostoru souborů pro databáze ve službě Azure SQL Database.
Limity elastického fondu
Další informace najdete v omezeních prostředků pro elastické fondy pomocí nákupního modelu DTU.
Basic | Standard | Premium | |
---|---|---|---|
Maximální velikost úložiště na databázi | 2 GB | 1 TB | 1 TB |
Maximální velikost úložiště na jeden pool | 156 GB | 4 TB | 4 TB |
Maximální počet eDTU na databázi | 5 | 3000 | 4000 |
Maximální počet eDTU na fond | 1600 | 3000 | 4000 |
Maximální počet databází na fond | 500 | 500 | 100 |
Důležité
Ve všech oblastech s výjimkou Číny – východ, Čína – sever, Německo – střed a Německo – severovýchod je aktuálně k dispozici více než 1 TB úložiště na úrovni Premium. V těchto oblastech je úložiště na úrovni Premium omezeno na 1 TB. Další informace najdete v tématu Aktuální omezení P11-P15.
Důležité
Za určitých okolností možná budete muset zmenšit databázi, aby se uvolnilo nevyužité místo. Další informace najdete v tématu správa prostoru souborů ve službě Azure SQL Database.
Srovnávací test DTU
Fyzické charakteristiky (procesor, paměť, vstupně-výstupní operace) přidružené k jednotlivým mírám DTU se kalibrují pomocí srovnávacího testu, který simuluje úlohy reálné databáze.
Seznamte se se schématem, použitými typy transakcí, kombinací úloh, uživateli a pacingem, pravidly škálování a metrikami přidruženými k srovnávacímu testu DTU.
Porovnejte modely nákupu založené na DTU a vCore
Nákupní model založený na DTU používá svazek měření výpočetních prostředků, úložiště a vstupně-výstupních prostředků, zatímco naproti tomu nákupní model virtuálních jader pro Azure SQL Database vám umožňuje nezávisle vybírat a škálovat výpočetní prostředky a prostředky úložiště.
Nákupní model založený na virtuálních jádrech také umožňuje využívat Hybridní výhodu Azure pro SQL Server, abyste ušetřili náklady, a nabízí bezserverovou výpočetní úroveň pro Azure SQL Database a úroveň hyperškálování pro Azure SQL Database, které nejsou dostupné v nákupním modelu založeném na DTU.
Další informace najdete v článku Porovnání nákupních modelů založených na virtuálních jádrech a DTU služby Azure SQL Database.