Přehled nákupního modelu založeného na DTU

PLATÍ PRO: Azure SQL Database

V tomto článku se dozvíte o nákupním modelu založeném na DTU pro Azure SQL Database.

Další informace najdete v nákupním modelu založeném na virtuálních jádrech a porovnání nákupních modelů.

Jednotky transakcí databáze (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 odlišují podle rozsahu výpočetních velikostí s pevným množstvím zahrnutého úložiště, pevnou dobou uchovávání záloh a pevnou cenou. Všechny úrovně služeb v nákupním modelu založeném na DTU poskytují flexibilitu při změně velikostí výpočetních prostředků s minimálními výpadky; Existuje však přechod v průběhu období, kdy dojde ke ztrátě připojení k databázi po krátkou dobu, což je možné zmírnit pomocí 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 konkrétní velikosti výpočetních prostředků v rámci úrovně služby Azure SQL Database zaručuje určitou úroveň prostředků pro danou databázi (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 jednotek DTU a je součástí sady 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 pro online zpracování 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ů, vaše propustnost je omezena, což vede k pomalejšímu výkonu a vypršení časového limitu.

Pro izolované databáze 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.

Bounding box

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 odpovídá zdvojnásobení sady prostředků dostupných pro danou databázi.
  • Databáze P11 úrovně Premium s 1750 DTU poskytuje 350krát větší výpočetní výkon DTU než databáze úrovně služby Basic s 5 DTU.

Pokud chcete získat hlubší přehled o spotřebě prostředků (DTU), použijte přehledy o výkonu dotazů k:

  • Identifikujte hlavní dotazy podle počtu procesorů, doby trvání nebo spouštění, které se dají potenciálně ladit, aby se zlepšil výkon. Dotaz náročný na vstupně-výstupní operace může například těžit z technik optimalizace v paměti , aby bylo možné lépe využívat dostupnou paměť na 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ů.
  • Přístup k doporučením pro ladění výkonu, která zobrazují akce prováděné SQL Database Advisorem.

Jednotky transakcí elastické 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 různé 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ň zajistit, aby každá databáze ve fondu měla vždy k dispozici minimální množství potřebných prostředků.

Fond má nastavený počet jednotek eDTU za stanovenou cenu. V elastickém fondu můžou jednotlivé databáze automaticky škálovat v rámci nakonfigurovaných hranic. Databáze pod těžším zatížením spotřebuje více jednotek eDTU, aby splňovala poptávku. Databáze pod lehčím zatížením budou spotřebovávat méně jednotek eDTU. Databáze bez zatížení nebudou využívat žádné eDTU. Vzhledem k tomu, že prostředky jsou zřízené pro celý fond, a ne pro 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ší eDTU s minimálními výpadky databáze. Podobně pokud už nepotřebujete další eDTU, odeberte je z existujícího fondu kdykoli. Databáze můžete také kdykoli přidat do fondu nebo je z fondu odebrat. Pokud chcete rezervovat eDTU pro jiné databáze, omezte počet databází eDTU, které můžou používat při velkém zatížení. Pokud má databáze konzistentně vysoké využití prostředků, které má vliv na 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 Kdy byste měli zvážit SQL Database elastický fond?.

Určení počtu jednotek DTU potřebných úlohou

Pokud chcete migrovat stávající místní nebo SQL Server úlohy virtuálního počítače do SQL Database, přečtěte si doporučení skladové položky k přibližnosti počtu potřebných jednotek DTU. U stávajících úloh 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í dynamické správy (DMV) sys.dm_db_resource_stats 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 sys.dm_db_resource_stats, sys.resource_stats a zobrazení dynamické správy 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 z následujících možností největší procentuální hodnotu: avg_cpu_percent, avg_data_io_percenta avg_log_write_percent v daném okamžiku.

Poznámka

Limit DTU databáze určuje procesor, čtení, zápisy a paměť dostupné pro databázi. Vzhledem k tomu, že modul SQL Database obvykle používá veškerou dostupnou paměť pro mezipaměť dat 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.

Konfigurace hardwaru

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. I když 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 na jiný hardware.

Databázi je například možné přesunout na jiný hardware, pokud je vertikálně navýšit nebo snížit na jiný cíl služby, nebo pokud aktuální infrastruktura v datacentru přistupuje ke svým limitům kapacity nebo pokud se aktuálně používaný hardware vyřadí z provozu kvůli konci životnosti.

Pokud se databáze přesune na jiný hardware, výkon úloh se může změnit. Model DTU zaručuje, že propustnost a doba odezvy srovnávací úlohy DTU zůstane podstatně stejná, protože databáze přejde na jiný typ hardwaru, pokud jeho cíl služby (počet jednotek DTU) zůstane stejný.

V širokém spektru úloh zákazníků běžících v Azure SQL Database však může být dopad použití různých 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 tedy možné zobrazit rozdíly v výkonu, pokud se databáze přesune z jednoho typu hardwaru do jiného.

Například aplikace, která je citlivá na latenci sítě, může kvůli použití akcelerovaných síťových služeb v Gen5 zobrazit lepší výkon na hardwaru Gen5 a Gen4 kvůli vyššímu poměru paměti na jádro Gen4.

Zákazníci můžou model virtuálních jader použít k výběru upřednostňované konfigurace hardwaru při vytváření a škálování databáze. V modelu virtuálních jader jsou podrobné limity prostředků jednotlivých cílů služby v každé konfiguraci hardwaru zdokumentované pro izolované databáze a elastické fondy. Další informace o hardwaru v modelu virtuálních jader najdete v tématu Konfigurace hardwaru pro SQL Database nebo Konfiguraci hardwaru pro SQL Managed Instance.

Porovnání úrovní služby

Volba úrovně služby závisí především na požadavcích na provozní kontinuitu, úložiště a výkon.

Basic Standard Premium
Cílová úloha Vývoj a výroba Vývoj a výroba Vývoj a výroba
Smlouva SLA o provozu 99,99 % 99,99 % 99,99 %
Maximální uchovávání záloh 7 dní 35 dní 35 dní
Procesor Nízká Nízká, Střední, Vysoká Střední, vysoká
IOPS (přibližný)* 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 S3 a vyšší Podporováno
OLTP v paměti N/A N/A Podporováno

* Všechny vstupně-výstupní operace čtení a zápis IOPS proti datovým souborům, včetně vstupně-výstupních operací na pozadí (kontrolní bod a opožděný zápis)

Důležité

Cíle služby Basic, S0, S1 a S2 poskytují méně než jedno virtuální jádro (CPU). U úloh náročných 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á diskové disky (HDD) úložiště. Tyto cíle služby jsou nejvhodnější pro vývoj, testování a další zřídka přístupné úlohy, které jsou méně citlivé na proměnlivost výkonu.

Tip

Pokud chcete zobrazit skutečné limity zásad správného řízení prostředků pro databázi nebo elastický fond, dotazujte se na zobrazení sys.dm_user_db_resource_governance .

Poznámka

Bezplatnou databázi můžete získat ve Azure SQL Database na úrovni služby Basic ve spojení s bezplatným účtem Azure a prozkoumat Azure. Informace najdete v tématu Vytvoření spravované cloudové databáze pomocí bezplatného účtu Azure.

Omezení prostředků

Limity prostředků se liší pro jednoúčelové databáze a databáze ve fondu.

Limity úložiště jednoúčelové databáze

Velikosti výpočetních prostředků se vyjadřují z hlediska jednotek DTU (Database Transaction Units) pro izolované databáze a elastické databázové transakční jednotky (eDTU) pro elastické fondy. Další informace najdete v omezeních prostředků pro izolované databáze.

Basic Standard Premium
Maximální velikost úložiště 2 GB 1 TB 4 TB
Maximální počet jednotek DTU 5 3000 4000

Důležité

Za určitých okolností možná budete muset zmenšit databázi, abyste uvolnili nevyužité místo. Další informace najdete v tématu Správa prostoru souborů v Azure SQL Database.

Limity elastického fondu

Další informace najdete v omezeních prostředků pro databáze ve fondu.

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 fond 156 GB 4 TB 4 TB
Maximální počet eDTU na databázi 5 3000 4000
Maximální počet jednotek eDTU na fond 1600 3000 4000
Maximální počet databází na fond 500 500 100

Důležité

Více než 1 TB úložiště na úrovni Premium je aktuálně dostupné ve všech oblastech s výjimkou: Čína – východ, Čína – sever, Německo – střed a Německo – východ. V těchto oblastech je maximální velikost úložiště ve vrstvě Premium omezena 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, abyste uvolnili nevyužité místo. Další informace najdete v tématu správa prostoru souborů v Azure SQL Database.

Srovnávací test DTU

Fyzické charakteristiky (procesor, paměť, vstupně-výstupní operace) spojené s každou mírou DTU se kalibrují pomocí srovnávacího testu, který simuluje úlohy databáze na reálném světě.

Přečtěte si o schématu, použitých typech transakcí, mixu úloh, uživatelích a pacingu, pravidlech škálování a metrikách přidružených k srovnávacímu testu DTU.

Porovnání nákupních modelů založených na DTU a virtuálních jader

Nákupní model založený na DTU je založený na sadě výpočetních prostředků, úložiště a vstupně-výstupních prostředků, a to porovnáním nákupního modelu virtuálních jader pro Azure SQL Database umožňuje nezávisle zvolit 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 vám také umožňuje používat Zvýhodněné hybridní využití Azure pro SQL Server k úsporě nákladů a nabízí možnosti bezserverového a hyperškálování pro Azure SQL Database, které nejsou k dispozici 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 Azure SQL Database.

Další kroky

Další informace o nákupních modelech a souvisejících konceptech najdete v následujících článcích: