Jak funguje Azure Database for MySQL
V této lekci prozkoumáte, jak azure Database for MySQL funguje, počínaje její architekturou. Dozvíte se také, jak služba poskytuje vysokou dostupnost, funkce zálohování a škálování podle potřeb vašich úloh.
Architektura Azure Database for MySQL
Následující diagram popisuje architekturu instance flexibilního serveru Azure Database for MySQL.
- Instance MySQL běží na virtuálním počítači Azure.
- Data a protokoly se ukládají ve službě Azure Premium Storage.
- Data se replikují třikrát napříč místně redundantním úložištěm pro účely zálohování a odolnosti. Služba také poskytuje možnosti konfigurace zónově redundantních nebo geograficky redundantních záloh úložiště.
- Kromě toho máte možnost společně vyhledat různé klientské aplikace připojené k flexibilnímu serveru MySQL v rámci stejné zóny dostupnosti.
Můžete se dále rozhodnout pro stejnou zónu nebo zónově redundantní vysokou dostupnost, která automaticky zřizuje a udržuje pohotovostní repliku.
Jak funguje vysoká dostupnost
U flexibilního serveru Azure Database for MySQL v rámci jedné zóny dostupnosti dojde po selhání hostitelského serveru k následujícímu procesu:
- Azure zřídí nový virtuální počítač.
- Azure mapuje úložiště a datové soubory na nově zřízený virtuální počítač.
- Databázový stroj MySQL se přenese do online režimu.
- Klientské aplikace se znovu připojují k nové instanci MySQL.
Poznámka:
Pokud jste zřídili vysokou dostupnost napříč zónami, udržuje se aktivní pohotovostní server v jiné zóně dostupnosti ve stejné oblasti Azure. Tento server je plně synchronizovaná replika primárního serveru. V případě selhání primárního serveru může server aktivního pohotovostního režimu rychle převzít s minimálním přerušením a tím zachovat dostupnost služeb.
Jak fungují zálohy
Zálohy můžete použít k obnovení serveru k jakémukoli bodu v čase v období uchovávání (35 dnů nebo až 10 let s dlouhodobým uchováváním ve verzi Preview).
Jak funguje škálování
Škálování ve službě Azure Database for MySQL zahrnuje úpravu výpočetních prostředků podle potřeb aplikace, která může kolísat na základě poptávky uživatelů, složitost zpracovaných operací nebo jiných faktorů, jako je obchodní růst. Tato flexibilita je zásadní pro zachování optimálního výkonu a efektivity nákladů.
Typy škálování
-
Vertikální škálování (vertikální navýšení nebo snížení kapacity)
-
Škálování výpočetních prostředků: To se týká změny výpočetní úrovně flexibilního serveru MySQL. Azure nabízí několik úrovní výpočetních prostředků, které jsou navržené tak, aby vyhovovaly různým typům úloh:
- Nárazové škálování: Vhodné pro prostředí s přerušovanými nárůsty využití procesoru, které nevyžadují nepřetržitý plný výkon procesoru.
- Obecné účely: Navržené pro širokou škálu aplikací, které poskytují rovnováhu mezi výpočetními prostředky, pamětí a vstupně-výstupními prostředky.
- Pro důležité obchodní informace: Nabízí nejvyšší výkon pro databáze s výkonnějšími procesory a rychlejšími vstupně-výstupními operacemi vhodnými pro úlohy s vysokou latencí a nízkou latencí.
- Přidělení paměti a procesoru: V závislosti na vybrané úrovni můžete škálovat počet virtuálních jader a množství paměti RAM dostupné pro vaši databázi, které přímo ovlivňuje schopnost zpracovávat větší nebo složitější dotazy a umožňuje větší počet souběžných připojení.
-
Škálování výpočetních prostředků: To se týká změny výpočetní úrovně flexibilního serveru MySQL. Azure nabízí několik úrovní výpočetních prostředků, které jsou navržené tak, aby vyhovovaly různým typům úloh:
-
Horizontální škálování
- Azure Database for MySQL se může horizontálně škálovat přidáním replik pro čtení, které distribuují přenosy pro čtení mezi více serverů, což zlepšuje výkon čtení a současně udržuje primární server dostupný pro zápisy. Horizontální škálování umožňuje databázi zpracovat větší zatížení dotazů a zvýšit rychlost odezvy aplikace.
-
Škálování úložiště
- Dynamické škálování úložiště: Se službou Azure Database for MySQL můžete zvýšit kapacitu úložiště bez výpadků. Můžete začít s menším přidělením a vertikálně navýšit kapacitu dat.
- Funkce automatického zvětšování: Tato funkce před dosažením limitu kapacity automaticky zvětšuje velikost úložiště, čímž brání přerušení související s omezeními úložiště.
Automatické škálování IOPS
Automatické škálování IOPS (vstupně-výstupní operace za sekundu) je funkce, která dynamicky upravuje propustnost vstupně-výstupních operací na základě aktuální úlohy. To je zvlášť užitečné pro nepředvídatelné nebo náchylné vzory úloh, protože zajišťuje, že databáze dokáže zvládnout náhlé zvýšení zatížení bez ručního zásahu.
- Škálování vstupně-výstupních operací za sekundu na základě zatížení: Když se zatížení zvýší a vyžaduje se větší propustnost vstupně-výstupních operací, funkce automatického škálování automaticky zvýší limit IOPS až na maximální povolenou úroveň výpočetních prostředků. IOPS se naopak snižuje během období nízké aktivity, aby se minimalizovaly náklady.
- Nákladová efektivita: Automatickou úpravou IOPS na základě skutečného využití platíte pouze za IOPS, které používáte, a ne za prostředky nadměrného zřizování pro zpracování zatížení ve špičce, ke kterým může dojít pouze sporadicky.
Osvědčené postupy pro škálování
Pokud chcete efektivně škálovat službu Azure Database for MySQL, monitorovat metriky výkonu pomocí služby Azure Monitor, nastavovat kritické výstrahy, plánovat budoucí růst kontrolou vzorů využití a testovat škálovatelnost během mimo špičku, abyste zajistili hladký výkon při zvýšeném zatížení.
Díky pochopení a používání těchto mechanismů škálování můžete zajistit, aby flexibilní server Azure Database for MySQL vždy běžel efektivně a přizpůsobil se aktuálním i budoucím potřebám vaší firmy.
Konfigurace a ladění chování modulu
K snadné konfiguraci a přizpůsobení proměnných a parametrů serveru ve službě Azure Database for MySQL můžete použít Azure Portal, Azure CLI nebo rozhraní REST API k úpravě nastavení, jako je velikost mezipaměti dotazů, vypršení časového limitu připojení a předvolby modulu úložiště, abyste zajistili optimální výkon a chování pro konkrétní úlohy.
Dále zvažte, jestli Azure Database for MySQL splňuje potřeby vaší organizace, jejích aplikací a databázových úloh.