Elastické fondy pomáhají spravovat a škálovat více databází v Azure SQL Database
PLATÍ PRO:
Azure SQL Database
Azure SQL Database fondy jsou jednoduché a nákladově efektivní řešení pro správu a škálování více databází s proměnlivými a nepředvídatelnými požadavky na využití. Databáze v elastickém fondu jsou na jednom serveru a sdílejí nastavený počet prostředků za stanovených cenu. Elastické fondy v Azure SQL Database umožňují vývojářům SaaS optimalizovat poměr cena/výkon pro skupinu databází v rámci předem daného rozpočtu a pro všechny databáze přitom zajistit elasticitu výkonu.
Co jsou SQL elastické fondy
Vývojáři SaaS sestavují aplikace nad datovými úrovněmi velkého rozsahu, které se skládají z několika databází. Běžným aplikačním postupem je zřídit pro každého zákazníka izolovanou databázi. Různí zákazníci ale často mají proměnlivé a nepředvídatelné vzory využití a je obtížné předpovědět požadavky jednotlivých uživatelů databáze na prostředky. Tradičně jste měli dvě možnosti:
- zřizování prostředků na základě využití ve špičce a nad platbou, nebo
- Pod zřízením ušetříte náklady na úkor výkonu a spokojenosti zákazníků ve špičkách.
Elastické fondy tento problém řeší tím, že zajišťují, aby databáze v případě potřeby měly k dispozici prostředky výkonu, které potřebují. Poskytují jednoduchý mechanismus přidělování prostředků v mezích předvídatelného rozpočtu. Další informace o návrhových schématech aplikací SaaS využívajících elastické fondy najdete v tématu Návrhová schémata pro víceklientské aplikace SaaS využívající službu Azure SQL Database.
Důležité
Za elastické fondy se neúčtjí žádné poplatky za databázi. Účtuje se vám každá hodina, po kterou fond existuje na nejvyšších eDTU nebo virtuálních jadech, bez ohledu na využití nebo na to, jestli byl fond aktivní méně než hodinu.
Elastické fondy umožňují vývojářům nakupovat prostředky pro fond sdílený více databázemi, aby se přizpůsoboval nepředvídatelným obdobím využití jednotlivými databázemi. Prostředky pro fond můžete nakonfigurovat buď na základě nákupního modelu založeného na DTU, nebo nákupního modelu založeného na virtuálních jade. Požadavek na prostředek pro fond je určen agregačním využitím jeho databází. Množství prostředků dostupných pro fond se řídí rozpočtem vývojáře. Vývojář jednoduše přidá databáze do fondu, volitelně nastaví minimální a maximální prostředky pro databáze (minimální a maximální počet DTU nebo minimální nebo maximální počet virtuálních jader v závislosti na vašem výběru modelu prostředků) a pak nastaví prostředky fondu na základě jejich rozpočtu. Vývojáři mohou fondy využít k tomu, aby zajistili elegantní růst svých služeb od úsporného startupu až po zralé podnikání, a to ve stále se zvětšujícím měřítku.
V rámci fondu disponují jednotlivé databáze flexibilní možností automatického škálování v rámci stanovených parametrů. Při velkém zatížení může databáze spotřebovávat více prostředků, aby splňovala poptávku. Databáze při menším zatížení spotřebovávají méně a databáze bez zatížení spotřebovávají žádné prostředky. Zřizováním prostředků pro celý fond, a nikoli pro jednotlivé databáze, se úkoly správy zjednodušují. Navíc máte předvídatelný rozpočet pro fond. Do existujícího fondu je možné přidat další prostředky s minimálními výpadky. Podobně pokud už další prostředky nepotřebujete, můžete je kdykoli odebrat z existujícího fondu. Databáze můžete také přidávat nebo odebírat z fondu. Pokud databáze podle předpokladu nedostatečně využívá prostředky, odeberte ji.
Poznámka
Při přesunu databází do elastického fondu nebo z elastického fondu neuplyne žádný prostoj s výjimkou krátkého časového období (v řádu sekund) na konci operace, kdy dojde k ukončení připojení k databázi.
Kdy byste měli zvážit SQL Database fondu
Fondy jsou vhodné pro velký počet databází se specifickými vzory využití. Pro danou databázi je tento vzor charakterizován nízkou mírou průměrného využití s relativně málo častými nárůsty využití. Naopak více databází s trvalým středním využitím by nemělo být umístěno ve stejném elastickém fondu.
Čím více databází je možné do fondu přidat, tím větší budou vaše úspory. V závislosti na modelu využití vaší aplikace je možné dosáhnout úspor při použití až dvou databází S3.
Následující části vás seznámí s postupy, pomocí kterých můžete vyhodnotit, jestli pro vaši konkrétní kolekci databází bude použití fondu přínosné. V příkladech se používají fondy Standard, ale stejné principy platí také pro fondy Basic a Premium.
Vyhodnocení vzorů využití databáze
Na následujícím obrázku je příklad databáze, která je většinu doby nečinná, ale má také pravidelné špičky aktivity. Tento vzor využití se pro fond skvěle hodí:

Graf znázorňuje využití DTU během časového období 1 hodiny od 12:00 do 1:00, kdy má každý datový bod 1minutovou členitost. V 12:10 DB1 využívá až 90 DTU, ale celkové průměrné využití je menší než pět DTU. Ke spuštění této úlohy v jedné databázi se vyžaduje velikost výpočetních prostředků S3, ale většina prostředků se tak během období nízké aktivity nepoužívá.
Fond umožňuje sdílet tyto nevyužité jednotky DTU napříč několika databázemi a snižuje tak počet potřebných jednotek DTU a celkové náklady.
Využijeme předchozí příklad a budeme předpokládat, že existují další databáze s podobnými vzory využití jako DB1. Na následujících dvou obrázcích je využití čtyř databází a 20 databází vrstvené do stejného grafu, aby bylo znázorněno nepřekrývající se povaha jejich využití v průběhu času pomocí nákupního modelu založeného na DTU:


Agregované využití DTU napříč všemi 20 databázemi je na předchozím obrázku znázorněné černou čárou. Ukazuje se, že agregované využití DTU nikdy nepřekračuje 100 jednotek DTU. Znamená to, že těchto 20 databází může v průběhu tohoto časového období sdílet 100 jednotek eDTU. Výsledkem je 20krát snížení počtu DTU a 13krát snížení ceny v porovnání s umístěním jednotlivých databází do velikosti výpočetních prostředků S3 pro jednotlivé databáze.
Tento příklad je ideální z následujících důvodů:
- Ukazuje velké rozdíly mezi využitím ve špičce a průměrným využitím jednotlivých databází.
- Špičky využití pro jednotlivé databáze nastávají v různých časových okamžicích.
- Jednotky eDTU jsou sdílené mezi mnoha databázemi.
V nákupním modelu DTU je cena fondu funkcí eDTU fondu. Přestože je cena ze jednotku eDTU pro fond 1,5krát vyšší než cena za jednotku DTU pro izolovanou databázi, jednotky eDTU fondu může sdílet velký počet databází, a proto stačí menší celkový počet jednotek eDTU. Tyto rozdíly v cenách a sdílení jednotek eDTU jsou základem potenciálních úspor, které fondy mohou nabídnout.
V nákupním modelu s virtuálními jádro je jednotková cena za virtuální jádro pro elastické fondy stejná jako jednotková cena za virtuální jádro pro jednotlivé databáze.
Návody správnou velikost fondu
Nejlepší velikost fondu závisí na agregovaných zdrojích potřebných pro všechny databáze ve fondu. To zahrnuje určení následujících možností:
- Maximální počet výpočetních prostředků využíovaných všemi databázemi ve fondu Výpočetní prostředky se indexují podle eDTU nebo virtuálních jadek v závislosti na vašem výběru nákupního modelu.
- Maximální počet bajtů úložiště využitých všemi databázemi ve fondu
Informace o úrovních služeb a omezeních prostředků v jednotlivých nákupních modelech najdete v nákupním modelu založeném na DTU nebo nákupním modelu založeném na virtuálních jadech.
Následující kroky vám můžou pomoct odhadnout, jestli je fond cenově výhodnější než jednotlivé databáze:
- Následujícím způsobem odhadněte eDTU nebo virtuální jádro potřebné pro fond:
- Nákupní model založený na DTU:
- MAX(<Total number of × DTU Average DTU utilization per DB>, <Number of concurrently peaking × DTU utilization per DB>)
- Nákupní model založený na virtuálních jade:
- MAX(<Total number of DBs Average × vCore utilization per DB>, <Number of concurrently peaking DBs × Peak vCore utilization per DB>)
- Nákupní model založený na DTU:
- Odhadněte celkový prostor úložiště potřebný pro fond přidáním velikosti dat potřebné pro všechny databáze ve fondu. U nákupního modelu DTU určete velikost fondu eDTU, která poskytuje toto množství úložiště.
- U nákupního modelu založeného na DTU využijte větší odhady eDTU z kroků 1 a 2. V případě nákupního modelu založeného na virtuálních jade využijte odhad virtuálních jadek z kroku 1.
- Podívejte se SQL Database s cenami a najděte nejmenší velikost fondu, která je větší než odhad z kroku 3.
- Porovnejte cenu fondu z kroku 4 s cenou za použití odpovídajících velikostí výpočetních prostředků pro jednotlivé databáze.
Důležité
Pokud se počet databází ve fondu blíží maximální podporované maximální skupině, nezapomeňte zvážit správu prostředků v silných elastických fondech.
Vlastnosti na databázi
Volitelně můžete nastavit vlastnosti pro každou databázi a upravit vzorce spotřeby prostředků v elastických fondech. Další informace najdete v dokumentaci k omezením prostředků pro elastické fondy DTU a vCore.
Použití dalších SQL Database s elastickými fondy
Elastické úlohy a elastické fondy
U fondu jsou úlohy správy zjednodušené díky spouštění skriptů v elastických úlohách. Elastická úloha eliminuje většinu únavných úkolů spojených s velkým počtem databází.
Další informace o ostatních databázových nástrojích pro práci s více databázemi najdete v tématu Horizontální navýšení kapacity se službou Azure SQL Database.
Možnosti kontinuity podnikových dat pro databáze v elastickém fondu
Databáze ve fondu obecně podporují stejné funkce provozní kontinuity, jaké jsou dostupné pro izolované databáze.
Obnovení k určitému bodu v čase
Obnovení k určitému bodu v čase využívá automatické zálohy databáze k obnovení databáze ve fondu k určitému bodu v čase. Viz Obnovení k určitému bodu v čase.
Geografické obnovení
Geografické obnovení poskytuje výchozí možnost obnovení, pokud je databáze nedostupná kvůli incidentu v oblasti, kde je databáze hostovaná. Viz Obnovení Azure SQL Database nebo převzetí služeb při selhání do sekundární lokality.
Aktivní geografická replikace
Pro aplikace, které mají agresivnější požadavky na obnovení, než nabízí geografické obnovení, nakonfigurujte aktivní geografickou replikaci nebo skupinu automatického převzetí služeb při selhání.
Vytvoření nového SQL Database elastického fondu pomocí Azure Portal
Existují dva způsoby, jak vytvořit elastický fond v Azure Portal.
Přejděte do Azure Portal a vytvořte elastický fond. Vyhledejte a vyberte Azure SQL.
Výběrem +Přidat otevřete stránku SQL nasazení. Další informace o elastických fondech můžete zobrazit výběrem možnosti Zobrazit podrobnosti na dlaždici Databáze.
Na dlaždici Databáze v rozevíracím seznamu Typ prostředku vyberte Elastický fond a pak vyberte Vytvořit:

Nebo můžete vytvořit elastický fond tak, že přejdete na existující server a kliknete na + Nový fond a vytvoříte fond přímo na tomto serveru.
Poznámka
Na serveru můžete vytvořit více fondů, ale nemůžete do stejného fondu přidat databáze z různých serverů.
Úroveň služby fondu určuje funkce dostupné elastice ve fondu a maximální množství prostředků dostupných pro každou databázi. Podrobnosti najdete v tématu Limity prostředků pro elastické fondy v modelu DTU. Informace o omezeních prostředků založených na virtuálních jade pro elastické fondy najdete v tématu Limity prostředků na základě virtuálních jadek – elastické fondy.
Pokud chcete nakonfigurovat prostředky a ceny fondu, klikněte na Konfigurovat fond. Pak vyberte úroveň služby, přidejte databáze do fondu a nakonfigurujte omezení prostředků pro fond a jeho databáze.
Po dokončení konfigurace fondu můžete kliknout na Použít, fond pojmnovat a kliknutím na OK fond vytvořit.
Monitorování elastického fondu a jeho databází
V Azure Portal můžete monitorovat využití elastického fondu a databází v rámci tohoto fondu. Můžete také provést sadu změn elastického fondu a odeslat všechny změny najednou. Mezi tyto změny patří přidávání nebo odebírání databází, změna nastavení elastického fondu nebo změna nastavení databáze.
Můžete použít integrované nástroje pro monitorování výkonu a upozorněnív kombinaci s hodnocením výkonu. Kromě toho SQL Database generovat metriky a protokoly prostředků pro snadnější monitorování.
Zákaznické případové studie
-
SnelStart používal elastické fondy s Azure SQL Database k rychlému rozšíření svých obchodních služeb rychlostí 1 000 nových databází Azure SQL za měsíc.
-
Umbraco používá elastické fondy s Azure SQL Database k rychlému zřizování a škálování služeb pro tisíce tenantů v cloudu.
-
Daxko/CSI využívá elastické fondy s Azure SQL Database ke zrychlení vývojového cyklu a ke zlepšení zákaznických služeb a výkonu.
Další kroky
- Informace o cenách najdete v tématu Ceny elastického fondu.
- Informace o škálování elastických fondů najdete v tématu Škálování elastických fondů a Škálování elastického fondu – vzorový kód.
- Další informace o návrhových schématech aplikací SaaS využívajících elastické fondy najdete v tématu Návrhová schémata pro víceklientské aplikace SaaS využívající službu Azure SQL Database.
- Kurz SaaS s využitím elastických fondů najdete v tématu Úvod do saaS aplikace Wingtip.
- Další informace o správě prostředků v elastických fondech s mnoha databázemi najdete v tématu Správa prostředků v silných elastických fondech.