Sdílet prostřednictvím


Spolehlivost ve službě Azure AI Search

Azure AI Search je škálovatelná infrastruktura vyhledávání, která indexuje heterogenní obsah a umožňuje načítání prostřednictvím rozhraní API, aplikací a agentů AI. Je vhodný pro scénáře podnikového vyhledávání a prostředí zákazníků využívajících AI, které vyžadují generování dynamického obsahu prostřednictvím modelů dokončování chatu. Jako služba Azure poskytuje služba AI Search celou řadu funkcí, které podporují vaše požadavky na spolehlivost.

Při používání Azure je spolehlivost sdílenou odpovědností. Microsoft nabízí celou řadu možností, které podporují odolnost a obnovení. Zodpovídáte za pochopení toho, jak tyto možnosti fungují ve všech službách, které používáte, a výběrem možností, které potřebujete ke splnění vašich obchodních cílů a cílů dostupnosti.

Tento článek popisuje, jak zajistit odolnost služby Azure AI Search vůči nejrůznějším potenciálním výpadkům a problémům, včetně přechodných chyb, výpadků zón dostupnosti, výpadků oblastí a údržby služeb. Popisuje také, jak můžete použít zálohy k zotavení z jiných typů problémů a zvýrazní některé klíčové informace o smlouvě o úrovni služeb Azure AI Search (SLA).

Doporučení pro produkční nasazení pro spolehlivost

Pro produkční úlohy doporučujeme:

  • Použijte fakturovatelnou úroveň , která má aspoň dvě repliky. Díky této konfiguraci je vaše vyhledávací služba odolnější vůči přechodným chybám a operacím údržby. Splňuje také smlouvu o úrovni služeb (SLA) pro službu AI Search. Smlouva SLA vyžaduje dvě repliky pro úlohy jen pro čtení a tři nebo více replik pro úlohy čtení i zápisu.
  • Nepoužívejte úroveň Free pro produkční použití. AI Search neposkytuje smlouvu SLA pro úroveň Free, která je omezená na jednu repliku.

Přehled architektury spolehlivosti

Když používáte AI Search, vytvoříte vyhledávací službu. Každá vyhledávací služba podporuje mnoho vyhledávacích indexů , které ukládají prohledávatelný obsah.

Vyhledávání AI není navržené jako primární úložiště dat. Místo toho použijete indexery k připojení vyhledávací služby k externím zdrojům dat. Indexer prochází zdrojová data, vyvolá dovednosti , které provádějí zpracování a rozšiřování, a naplní index výstupy dovedností.

Také nakonfigurujete počet replik pro vaši službu. Ve službě AI Search je replika kopií vyhledávacího enginu vaší služby. Repliku si můžete představit jako reprezentaci jednoho virtuálního počítače. Každá vyhledávací služba může mít 1 až 12 replik.

Přidání více replik umožňuje službě AI Search:

  • Zvyšte dostupnost vyhledávací služby.

  • Proveďte údržbu na jedné replice, zatímco dotazy nadále běží na jiných replikách.

  • Zpracování vyššího indexování a dotazování úloh

  • Zlepšení odolnosti tím, že se pokusíte zřídit repliky v různých zónách dostupnosti, pokud váš region tyto zóny podporuje.

Vyhledávání AI automaticky přiřadí jednu repliku jako primární repliku. Všechny operace zápisu se provádějí s danou replikou. Ostatní repliky se používají pro operace čtení.

Následující diagram znázorňuje, jak se vyhledávací služba se třemi replikami může být rozložená do tří zón dostupnosti:

Diagram znázorňující službu AI Search se třemi replikami Operace čtení se odesílají do všech replik a operace zápisu se odesílají do primární repliky.

Můžete také nakonfigurovat počet oddílů, které představují úložiště, které používají indexy vyhledávání.

Je důležité pochopit dopad přidávání replik a oddílů, protože každý z nich má vliv na výkon čtení a zápisu různými způsoby. Další informace o replikách a oddílech najdete v tématu Odhad a správa kapacity vyhledávací služby.

Odolnost proti přechodným chybám

Přechodné chyby jsou krátká, přerušovaná selhání ve složkách. V distribuovaném prostředí, jako je cloud, se vyskytují často a jsou normální součástí provozu. Přechodné chyby se opravují po krátké době. Je důležité, aby vaše aplikace mohly zpracovávat přechodné chyby, obvykle opakováním ovlivněných požadavků.

Všechny aplikace hostované v cloudu by měly při komunikaci se všemi cloudovými rozhraními API, databázemi a dalšími komponentami postupovat podle pokynů pro zpracování přechodných chyb Azure. Další informace najdete v tématu Doporučení pro zpracování přechodných chyb.

Indexery vyhledávání AI mají integrované zpracování přechodných chyb. Pokud je zdroj dat krátce nedostupný, indexer je navržený k obnovení a opakování. Používá sledování změn k obnovení indexování z posledního úspěšně indexovaného dokumentu.

Vyhledávací služby můžou během standardních neplánovaných operací údržby zaznamenat přechodné chyby. Azure AI Search neposkytuje předběžné oznámení ani neumožňuje plánování údržby v určitých časech. I když se snažíme minimalizovat výpadky, a to i u služeb s jednou replikou, může dojít k krátkému přerušení. Pokud chcete zlepšit odolnost proti těmto přechodným chybám, doporučujeme použít dvě nebo více replik.

Pokud sestavíte jakékoli aplikace, které pracují s AI Search, měly by zpracovávat přechodné chyby. Pro operace čtení i zápisu použijte strategii opakování s exponenciálními odklady.

Odolnost proti chybám zóny dostupnosti

Zóny dostupnosti jsou fyzicky oddělené skupiny datacenter v rámci oblasti Azure. Když jedna zóna selže, mohou služby přejít na jednu ze zbývajících zón.

AI Search je zónově redundantní, což znamená, že vaše repliky jsou distribuovány v několika zónách dostupnosti v rámci oblasti vyhledávací služby.

Když do služby přidáte dvě nebo více replik, služba AI Search se pokusí umístit každou repliku do jiné zóny dostupnosti. Pro služby, které mají více replik než dostupné zóny, se repliky distribuují mezi zóny co nejvíce rovnoměrně.

Následující diagram znázorňuje, jak může být ukázková vyhledávací služba se čtyřmi replikami nasazená napříč třemi zónami dostupnosti:

Diagram znázorňující službu AI Search se čtyřmi replikami distribuovanými napříč třemi zónami dostupnosti

Důležité

AI Search nezaručuje přesné umístění replik. Umístění podléhá omezením kapacity, operacím škálování a dalším faktorům.

Požadavky

Redundance zón je automaticky povolená, když vyhledávací služba splňuje všechna následující kritéria:

  • Podpora oblastí: Podpora zón dostupnosti závisí na infrastruktuře a úložišti. Seznam podporovaných oblastí najdete v tématu Volba oblasti pro vyhledávání AI.

  • Úroveň: Vaše služba musí být na úrovni Basic nebo vyšší.

  • Počet replik: Vaše služba musí mít aspoň dvě repliky.

    Poznámka:

    AI Search se pokusí distribuovat repliky mezi více zón, pokud máte dvě nebo více replik. Pro úlohy čtení a zápisu byste ale měli použít tři nebo více replik, abyste získali smlouvu SLA s nejvyšší možnou dostupností.

Distribuce instancí napříč zónami

Vyhledávání pomocí AI se pokouší umístit repliky do různých zón dostupnosti. V některých situacích ale můžou být všechny repliky vyhledávací služby umístěny do stejné zóny dostupnosti. K této situaci může dojít v případě, že se repliky z vaší služby odeberou, například když škálujete tak, že službu nakonfigurujete tak, aby používala méně replik. Odebrání repliky neaktivuje zbývající repliky k obnovení rovnováhy mezi zónami dostupnosti.

Pokud chcete snížit pravděpodobnost, že se všechny vaše repliky umístí do jedné zóny dostupnosti, můžete operaci horizontálního navýšení kapacity aktivovat ručně okamžitě po operaci horizontálního navýšení kapacity. Předpokládejme například, že vaše vyhledávací služba má 10 replik a chcete škálovat na 7 replik. Místo provedení jedné operace škálování můžete dočasně škálovat na 6 instancí a okamžitě škálovat na 7 instancí, aby se aktivovalo vyrovnávání zón.

Náklady

Každá vyhledávací služba začíná jednou replikou. Redundance zón vyžaduje dvě nebo více replik, což zvyšuje náklady na provoz služby. Pokud chcete porozumět dopadům fakturace replik, použijte cenovou kalkulačku.

Konfigurujte podporu zón dostupnosti

Pokud vaše vyhledávací služba splňuje požadavky na redundanci zón, není nutná žádná další konfigurace. Kdykoli je to možné, vyhledávání AI se pokusí umístit vaše repliky do různých zón dostupnosti.

Plánování a řízení kapacit

Pokud se chcete připravit na selhání zóny dostupnosti, zvažte nadprovisionování počtu replik. Overprovisioning umožňuje vyhledávací službě tolerovat určitou ztrátu kapacity a pokračovat v provozu bez snížení výkonu. Přidání replik během výpadku je náročné, takže nadkapacitní zajištění pomáhá zajistit, aby vaše služba vyhledávání dokázala zpracovat běžný objem požadavků, a to i se sníženou kapacitou. Další informace najdete v tématu Správa kapacity prostřednictvím nadměrného zřízení.

Chování, když jsou všechny zóny v pořádku

Tato část popisuje, co očekávat, když jsou vyhledávací služby nakonfigurované pro redundanci zón a všechny zóny dostupnosti jsou funkční.

  • Směrování provozu mezi zónami: AI Search provádí automatické vyrovnávání zatížení všech dotazů a zápisů napříč všemi dostupnými replikami. AI Search může odesílat operace čtení do libovolné repliky v libovolné zóně dostupnosti. Odesílá operace zápisu do jedné primární repliky, kterou služba AI Search vybere.

  • Replikace dat mezi zónami: Změny dat se automaticky replikují mezi replikami napříč zónami dostupnosti. Replikace probíhá asynchronně, což znamená, že zápisy se před replikací do jiných replik zapisují do jedné primární repliky.

Chování při selhání zóny

Tato část popisuje, co očekávat, když vyhledávací služby nakonfigurují redundanci zón a dojde k výpadku zóny dostupnosti.

  • Detekce a odpověď: Vyhledávání AI zodpovídá za detekci selhání v zóně dostupnosti. Nemusíte dělat nic, abyste zahájili převzetí zóny.
  • Aktivní požadavky: Požadavky, které repliky zpracovávají v zóně selhání, se ukončí. Klienti by měli žádosti opakovat podle pokynů pro zpracování přechodných chyb.

  • Očekávaná ztráta dat: Pokud ovlivněná zóna dostupnosti obsahuje jenom repliky pro čtení, neočekává se žádná ztráta dat.

    Pokud dojde ke ztrátě primární repliky, protože byla v ovlivněné zóně, může dojít ke ztrátě všech operací zápisu, které ještě nebyly replikovány.

  • Očekávaný výpadek: Ve většině případů se neočekává, že selhání zóny způsobí výpadky vyhledávací služby pro operace čtení, protože repliky pro čtení v jiných zónách dostupnosti budou dál obsluhovat požadavky.

    Pokud dojde ke ztrátě primární repliky, protože byla v ovlivněné zóně, služba AI Search automaticky podporuje další repliku, aby se stala novou primární, aby operace zápisu mohly pokračovat. Povýšení repliky obvykle trvá jen několik sekund. Během této doby nemusí operace zápisu proběhnout úspěšně. Podle pokynů pro zpracování přechodných chyb se ujistěte, že jsou vaše aplikace připravené.

    Existují však některé nepravděpodobné situace, kdy všechny repliky vaší vyhledávací služby můžou být v jedné zóně dostupnosti. V tomto scénáři může docházet k výpadkům, dokud se zóna neobnoví. Další informace a vysvětlení alternativního řešení najdete v tématu Distribuce instancí.

  • Přesměrování provozu: Pokud dojde k selhání zóny, služba AI Search zjistí selhání a směruje požadavky na aktivní repliky v přeživších zónách. Pokud dojde ke ztrátě primární repliky, upřednostní se jiná replika jako nová primární.

Obnovení zóny

Když se zóna dostupnosti obnoví, služba AI Search automaticky obnoví normální operace a začne směrovat provoz do dostupných replik napříč všemi zónami, včetně obnovené zóny.

Testování poruch zón

AI Search spravuje směrování provozu pro zónově redundantní služby. Nemusíte zahajovat ani ověřovat žádné procesy selhání zóny.

Odolnost proti selháním v celé oblasti

AI Search je služba s jednou oblastí. Pokud oblast přestane být dostupná, vaše vyhledávací služba bude také nedostupná.

Vlastní řešení pro více regionů pro odolnost systémů

Volitelně můžete nasadit více služeb AI Search v různých oblastech. Zodpovídáte za nasazení a konfiguraci samostatných služeb v každé oblasti. Pokud vytvoříte stejné nasazení v sekundární oblasti Azure, která používá architekturu s více oblastmi, bude vaše aplikace méně náchylná k havárii v jedné oblasti.

Pokud budete postupovat podle tohoto přístupu, je nutné synchronizovat indexy napříč oblastmi, aby se obnovil poslední stav aplikace. Musíte také nakonfigurovat vyrovnávání zatížení a zásady převzetí služeb při selhání.

Pokud chcete optimalizovat výkon celkového řešení, hledejte příležitosti k indexování u replik zdrojů dat jen pro čtení. Některé indexery například podporují čtení z replik pro čtení z geograficky distribuovaného zdroje dat.

Další informace najdete v tématu Nasazení ve více oblastech ve službě Azure AI Search.

Zálohování a obnovení

Protože AI Search není primárním řešením úložiště dat, neposkytuje možnosti samoobslužného zálohování a obnovení. Ukázku index-backup-restore pro .NET nebo Python ale můžete použít k zálohování definice indexu a jejích dokumentů do řady souborů JSON, které se pak použijí k obnovení indexu.

Pokud ale index omylem odstraníte a nemáte zálohu, můžete index znovu sestavit. Opětovné sestavení zahrnuje opětovné vytvoření indexu ve vyhledávací službě a jeho opětovné načtení načtením dat z primárního úložiště dat.

Smlouva o úrovni služeb

Smlouva o úrovni služeb (SLA) pro služby Azure popisuje očekávanou dostupnost každé služby a podmínky, které musí vaše řešení splnit, aby bylo dosaženo očekávané dostupnosti. Další informace najdete v tématu Smlouvy SLA pro online služby.

Ve službě AI Search platí smlouva SLA o dostupnosti pro vyhledávací služby, které:

  • Jsou nakonfigurované tak, aby používaly fakturovatelnou úroveň.
  • Pro úlohy jen pro čtení (dotazy) mají aspoň dvě repliky .
  • Pro úlohy čtení a zápisu (dotazy a indexování) mají aspoň tři repliky.