Sdílet prostřednictvím


Nejčastější dotazy k integrované mezipaměti služby Azure Cosmos DB

PLATÍ PRO: NoSQL

Integrovaná mezipaměť Azure Cosmos DB je mezipaměť v paměti, která je integrovaná ve službě Azure Cosmos DB. Tento článek odpovídá na nejčastější dotazy týkající se integrované mezipaměti Azure Cosmos DB.

Nejčastější dotazy

Proč integrovaná mezipaměť vyžaduje vyhrazenou bránu?

Pokud jste se připojili ke službě Azure Cosmos DB pomocí režimu brány, použili jste standardní bránu. Zatímco back-end služby Azure Cosmos DB (zřízená propustnost a úložiště) má vyhrazenou kapacitu pro každý kontejner, standardní brána se sdílí mezi mnoha zákazníky. Pro mnoho zákazníků je praktické sdílet standardní bránu, protože výpočetní prostředky spotřebované jednotlivými zákazníky jsou minimální. Vzhledem k tomu, že integrovaná mezipaměť je specifická pro váš účet služby Azure Cosmos DB a vyžaduje významný procesor a paměť, vyžaduje vyhrazené uzly brány.

Co je vyhrazená brána?

Vyhrazená brána je výpočetní prostředky na straně serveru, které jsou front-endem dat v účtu služby Azure Cosmos DB. Když se připojíte ke svému vyhrazenému koncovému bodu brány pomocí režimu brány, odešle aplikace požadavek na vyhrazenou bránu, která pak požadavek směruje do různých back-endových oddílů. Použití přímého režimu s vyhrazenou bránou je podporované, ale tyto požadavky nebudou používat integrovanou mezipaměť.

Nabízí použití vyhrazené brány jiné výhody výkonu oproti použití standardní brány?

Obecně platí, že požadavky směrované vyhrazenou bránou budou mít mírně nižší a konzistentnější latenci než požadavky směrované standardní bránou. I požadavky, které nepoužívají integrovanou mezipaměť, budou mít stále o něco nižší latenci než standardní brána.

Jaký druh latence mám očekávat z integrované mezipaměti?

Požadavek obsluhovaný integrovanou mezipamětí je rychlý, protože data uložená v mezipaměti jsou uložená v paměti ve vyhrazené bráně, nikoli v back-endu.

U čtení bodů v mezipaměti byste měli očekávat střední latenci 2–4 ms. U dotazů uložených v mezipaměti závisí latence na dotazu. Mezipaměť dotazů funguje tak, že ukládá odpověď dotazovacího stroje do mezipaměti pro konkrétní dotaz. Tato odpověď se pak odešle zpět na straně klienta do sady SDK ke zpracování. U jednoduchých dotazů se vyžaduje minimální práce v sadě SDK a typická jsou střední latence 2 až 4 ms. Složitější dotazy se GROUP BY sadou SDK nebo DISTINCT vyžadují více zpracování, takže latence může být vyšší i v mezipaměti dotazů.

Pokud jste se dříve připojovali ke službě Azure Cosmos DB s přímým režimem a přepnuli na připojení pomocí vyhrazené brány, můžete u některých požadavků zaznamenat mírné zvýšení latence. Použití režimu brány vyžaduje, aby se do brány odeslal požadavek (v tomto případě vyhrazená brána) a odpovídajícím způsobem směroval do back-endu. Přímý režim, jak název napovídá, umožňuje klientovi komunikovat přímo s back-endem, čímž odebere další segment směrování. Pro požadavky využívající vyhrazenou bránu neexistuje žádná smlouva SLA s latencí.

Pokud vaše aplikace dříve používala přímý režim, budou výhody latence integrované mezipaměti významné pouze v následujících scénářích:

  • Latence čtení bodů u velkých položek (> 16 kB)
  • Vysoké ru nebo složité dotazy

Pokud vaše aplikace dříve používala režim brány se standardní bránou, integrovaná mezipaměť bude nabízet snížení latence téměř ve všech scénářích.

Rozšiřuje smlouva SLA dostupnosti služby Azure Cosmos DB na vyhrazenou bránu a integrovanou mezipaměť?

Pro scénáře, které vyžadují vysokou dostupnost a aby se na ně vztahuje smlouva SLA dostupnosti služby Azure Cosmos DB, byste měli zřídit aspoň 3 vyhrazené uzly brány. Pokud například v produkčním prostředí potřebujete jeden vyhrazený uzel brány, měli byste zřídit dva další vyhrazené uzly brány, abyste mohli zohlednit možné výpadky, výpadky a upgrady. Pokud je zřízený jenom jeden vyhrazený uzel brány, v těchto scénářích dočasně ztratíte dostupnost. Kromě toho se ujistěte, že vaše vyhrazená brána má dostatek uzlů pro obsluhu úloh.

Integrovaná mezipaměť je momentálně dostupná jenom pro rozhraní API pro NoSQL. Plánujete ho také uvolnit pro další rozhraní API?

Rozšíření integrované mezipaměti nad rámec rozhraní API pro NoSQL se plánuje v dlouhodobém plánu, ale přesahuje počáteční rozsah integrované mezipaměti.

Jakou konzistenci podporuje integrovaná mezipaměť?

Integrovaná mezipaměť podporuje relaci i konečnou konzistenci. Můžete také nakonfigurovat volitelnou funkci MaxIntegratedCacheStaleness, která umístí horní mez dat uložených v mezipaměti.

Další kroky