Kvóty služby Azure Cosmos DB

PLATÍ pro: rozhraní SQL api rozhraní API CASSANDRA Gremlin API rozhraní API pro tabulky Azure Cosmos DB API pro MongoDB

Tento článek obsahuje přehled výchozích kvót nabízených pro různé prostředky ve službě Azure Cosmos DB.

Operace úložiště a databáze

Po vytvoření účtu Azure Cosmos v rámci svého předplatného můžete spravovat data v účtu vytvořením databází, kontejnerů a položek.

Zřízená propustnost

Propustnost můžete zřídit na úrovni kontejneru nebo databáze na úrovni jednotlivých jednotek požadavků (ru/s nebo ru). V následující tabulce jsou uvedeny limity pro úložiště a propustnost na jeden kontejner nebo databázi.

Prostředek Výchozí omezení
Maximální počet ru na kontejner (zřízený režim vyhrazené propustnosti) 1 000 000 ve výchozím nastavení. Můžete ho rozšířit podáním lístku podpory Azure .
Maximální počet ru na databázi (zřízený režim sdílené propustnosti) 1 000 000 ve výchozím nastavení. Můžete ho rozšířit podáním lístku podpory Azure .
Maximální počet ru na oddíl (logický & fyzický) 10 000
Maximální velikost úložiště napříč všemi položkami na (logický) oddíl 20 GB
Maximální počet různých (logických) klíčů oddílu Unlimited
Maximální velikost úložiště na kontejner Unlimited
Maximální velikost úložiště na databázi Unlimited
Maximální velikost přílohy na účet (funkce přílohy se už nepoužívá) 2 GB
Vyžaduje se minimální RU/s za 1 GB. 10 RU/s
Poznámka: Toto minimum se dá snížit, pokud je váš účet způsobilý pro náš program vysokého úložiště/nízké propustnosti .

Poznámka

Informace o osvědčených postupech při správě úloh s klíči oddílů, které vyžadují vyšší limity úložiště nebo propustnosti, najdete v tématu Vytvoření syntetického klíče oddílu.

Minimální limity propustnosti

Cosmos kontejner (nebo sdílená databáze propustnosti) musí mít minimální propustnost 400 RU/s. Při zvětšování kontejneru Cosmos DB vyžaduje minimální propustnost, aby bylo zajištěno, že databáze nebo kontejner mají dostatek prostředků na jeho provoz.

Aktuální a minimální propustnost kontejneru nebo databáze lze načíst z Azure Portal nebo sad SDK. Další informace najdete v tématu zřízení propustnosti u kontejnerů a databází.

V závislosti na konfiguraci vašeho účtu se skutečný minimální počet RU/s může lišit. Pomocí Azure monitor metrik můžete zobrazit historii zřízené propustnosti (ru/s) a úložiště v prostředku.

Minimální propustnost na kontejneru

Pokud chcete odhadnout minimální propustnost vyžadovanou kontejnerem s ruční propustností, najděte maximum z těchto hodnot:

  • 400 RU/s
  • Aktuální velikost úložiště v GB × 10 RU/s
  • Nejvyšší RU/s zřízené na kontejneru/100

Příklad: Předpokládejme, že máte zřízen kontejner s 400 RU/s a úložištěm 0 GB. Zvýšíte propustnost na 50 000 RU/s a naimportujete 20 GB dat. Minimální RU/s je teď MAX(400, 20 * 10 RU/s per GB, 50,000 RU/s / 100) = 500 ru/s. V průběhu času se úložiště zvětšuje na 200 GB. Minimální RU/s je teď MAX(400, 200 * 10 RU/s per GB, 50,000 / 100) = 2000 ru/s.

Poznámka: minimální propustnost 10 ru/s za GB úložiště se dá snížit, pokud je váš účet způsobilý pro náš program vysokého úložiště/nízké propustnosti.

Minimální propustnost databáze se sdílenou propustností

Pokud chcete odhadnout minimální požadovanou propustnost databáze se sdílenou a ručně nastavenou propustností, zjistěte, která z následujících hodnot je nejvyšší:

  • 400 RU/s
  • Aktuální velikost úložiště v GB × 10 RU/s
  • Nejvyšší RU/s zřízené v databázi/100
  • 400 + MAX (počet kontejnerů: 25, 0) × 100 RU/s

Příklad: Předpokládejme, že máte databázi zřízenou s 400 RU/s, 15 GB úložiště a 10 kontejnery. Minimální RU/s je MAX(400, 15 * 10 RU/s per GB, 400 / 100, 400 + 0 ) = 400 ru/s. Pokud v databázi existovalo 30 kontejnerů, minimální RU/s by byla 400 + MAX(30 - 25, 0) * 100 RU/s = 900 ru/s.

Poznámka: minimální propustnost 10 ru/s za GB úložiště se dá snížit, pokud je váš účet způsobilý pro náš program vysokého úložiště/nízké propustnosti.

V části Souhrn jsou zde uvedená minimální omezení pro podávání RU.

Prostředek Výchozí omezení
Minimální počet ru na kontejner (zřízený režim vyhrazené propustnosti) 400
Minimální počet ru na databázi (zřízený režim sdílené propustnosti) 400 RU/s pro prvních 25 kontejnerů. Další 100 RU/s pro každý kontejner následně.

Cosmos DB podporuje programové škálování propustnosti (RU/s) na kontejner nebo databázi prostřednictvím sad SDK nebo portálu.

V závislosti na aktuálních nastaveních a prostředcích s plánem RU/s se může každý prostředek škálovat synchronně a hned za minimálních RU/s až po minimální RU/s. Pokud je požadovaná hodnota propustnosti mimo rozsah, škálování se provádí asynchronně. Asynchronní škálování může trvat několik minut, než se dokončí v závislosti na požadované propustnosti a velikosti úložiště dat v kontejneru.

Bez serveru

Bez serveru můžete používat prostředky Azure Cosmos DB v závislosti na spotřebě. Následující tabulka uvádí omezení pro zatížení úložiště a propustnosti na kontejner nebo databázi.

Prostředek Omezení
Maximální počet RU/s na kontejner 5 000
Maximální velikost úložiště napříč všemi položkami na (logický) oddíl 20 GB
Maximální počet různých (logických) klíčů oddílu Unlimited
Maximální velikost úložiště na kontejner 50 GB

Řízení operací roviny

Účet Azure Cosmos můžete zřídit a spravovat pomocí šablon Azure Portal, Azure PowerShell, Azure CLI a Azure Resource Manager. V následující tabulce jsou uvedené limity pro každé předplatné, účet a počet operací.

Prostředek Výchozí omezení
Maximální počet účtů databáze na předplatné 50 ve výchozím nastavení. Můžete ho rozšířit podáním lístku podpory Azure .
Maximální počet regionálních převzetí služeb při selhání ve výchozím nastavení 1 hodina. Můžete ho rozšířit podáním lístku podpory Azure .

Poznámka

Regionální převzetí služeb při selhání platí jenom pro jeden region zápis účtů. Účty pro zápis ve více oblastech nevyžadují nebo nemají omezení pro změnu oblasti zápisu.

Cosmos DB automaticky provede zálohování vašich dat v pravidelných intervalech. Podrobnosti o intervalech uchovávání záloh a intervalech uchovávání dat najdete v tématu Online zálohování a obnovení dat na vyžádání v Azure Cosmos DB.

Limity pro každý účet

Zřízená propustnost

Prostředek Výchozí omezení
Maximální počet databází Unlimited
Maximální počet kontejnerů na databázi se sdílenou propustností 25
Maximální počet kontejnerů na databázi nebo účet s vyhrazenou propustností Bez omezení
Maximální počet oblastí Bez omezení (všechny oblasti Azure)

Bez serveru

Prostředek Omezení
Maximální počet databází Unlimited
Maximální počet kontejnerů na účet 100
Maximální počet oblastí 1 (libovolná oblast Azure)

Limity pro kontejnery

V závislosti na tom, které rozhraní API použijete, může kontejner Azure Cosmos představovat kolekci, tabulku nebo graf. Kontejnery podporují konfigurace pro omezení jedinečných klíčů, uložené procedury, triggery a UDFa zásady indexování. Následující tabulka uvádí omezení specifická pro konfigurace v rámci kontejneru.

Prostředek Výchozí omezení
Maximální délka názvu databáze nebo kontejneru 255
Maximální počet uložených procedur na kontejner 100 *
Maximální počet UDF na kontejner 50 *
Maximální počet cest v zásadách indexování 100 *
Maximální počet jedinečných klíčů na kontejner 10 *
Maximální počet cest na omezení jedinečného klíče 16 *
Maximální hodnota TTL 2147483647

* Kterékoli z těchto limitů pro kontejner můžete zvýšit vytvořením požadavku Podpora Azure kontejneru.

Limity pro položky

V závislosti na tom, které rozhraní API použijete, může položka Azure Cosmos představovat dokument v kolekci, řádek v tabulce nebo uzel nebo hranu v grafu. V následující tabulce jsou uvedené limity pro každou položku v Cosmos DB.

Prostředek Výchozí omezení
Maximální velikost položky 2 MB (utf-8 délka reprezentace JSON)
Maximální délka hodnoty klíče oddílu 2048 bajtů
Maximální délka hodnoty ID 1023 bajtů
Maximální počet vlastností na položku Bez praktického limitu
Maximální délka názvu vlastnosti Bez praktického limitu
Maximální délka hodnoty vlastnosti Bez praktického limitu
Maximální délka hodnoty vlastnosti řetězce Bez praktického limitu
Maximální délka hodnoty číselné vlastnosti IEEE754 – dvojitá přesnost ( 64 bitů)
Maximální úroveň vnoření pro vložené objekty nebo pole 128
Maximální hodnota TTL 2147483647

Neexistují žádná omezení týkající se datové části položky, jako je počet vlastností a hloubka vnoření, s výjimkou omezení délky pro klíč oddílu a hodnot ID a omezení celkové velikosti 2 MB. Možná budete muset nakonfigurovat zásady indexování pro kontejnery s velkými nebo složitými strukturami položek, aby se snížila spotřeba RU. Příklad z reálného Cosmos DB a vzory pro správu velkých položek najdete v tématu Modelování položek v uzlu.

Limity pro každý požadavek

Azure Cosmos DB podporuje CRUD a operace dotazů na prostředky, jako jsou kontejnery, položky a databáze. Podporuje také transakční dávkové požadavky na více položek se stejným klíčem oddílu v kontejneru.

Prostředek Výchozí omezení
Maximální doba provádění jedné operace (například spuštění uložené procedury nebo načtení stránky s jedním dotazem) 5 s
Maximální velikost požadavku (například uložená procedura, CRUD) 2 MB
Maximální velikost odpovědi (například stránkovaný dotaz) 4 MB
Maximální počet operací v transakční dávce 100

Jakmile operace, jako je dotaz, dosáhne limitu časového limitu spuštění nebo velikosti odpovědi, vrátí klientovi stránku výsledků a pokračovací token pro obnovení provádění. Neexistuje žádné praktické omezení doby trvání, po které může jeden dotaz běžet napříč stránkami a pokračováními.

Cosmos DB ověřování používá HMAC. K jemně odlišenému řízení přístupu k prostředkům, jako jsou kontejnery, klíče oddílů nebo položky, můžete použít primární klíč nebo tokeny prostředků. Následující tabulka uvádí omezení pro autorizační tokeny v Cosmos DB.

Prostředek Výchozí omezení
Maximální doba platnosti primárního tokenu 15 min
Minimální doba vypršení platnosti tokenu prostředku 10 min
Maximální doba vypršení platnosti tokenu prostředku Ve výchozím nastavení 24 h. Můžete ho zvýšit vyplněním lístku podpora Azure.
Maximální neschůdné zobrazení hodin pro autorizaci tokenu 15 min

Cosmos DB podporuje spouštění triggerů během zápisu. Služba podporuje maximálně jednu aktivační událost předem a jednu aktivační událost po akci zápisu.

Omezení požadavků na metadata

Azure Cosmos DB spravuje systémová metadata pro každý účet. Tato metadata umožňují vytvořit výčet kolekcí, databází, Azure Cosmos DB prostředků a jejich konfigurací zdarma.

Prostředek Výchozí omezení
Maximální rychlost vytváření kolekcí za minutu 100
Maximální rychlost vytváření databáze za minutu 100
Maximální frekvence aktualizace zřízené propustnosti za minutu 5

Omezení zřízené propustnosti automatického škálování

Podrobnější vysvětlení limitů propustnosti a úložiště s automatickým škálováním najdete v článku o automatickém škálování a nejčastějších dotazech.

Prostředek Výchozí omezení
Maximální počet RU/s, na který se systém může škálovat Tmax– maximální počet RU/s automatického škálování nastavený uživatelem
Minimální počet RU/s, na který se systém může škálovat 0.1 * Tmax
Aktuální POČET RU/s, na který se systém škáloval 0.1*Tmax <= T <= Tmax– na základě využití
Minimální fakturovatelné RU/s za hodinu 0.1 * Tmax

Fakturace se provádí po hodinách, kdy se vám účtuje nejvyšší počet RU/s, na který se systém škáloval v hodině, nebo podle toho, která hodnota 0.1*Tmax je vyšší.
Minimální maximální počet RU/s automatického škálování pro kontejner MAX(4000, highest max RU/s ever provisioned / 10, current storage in GB * 100) zaokrouhleno na nejbližší 1 000 RU/s
Minimální maximální počet RU/s automatického škálování pro databázi MAX(4000, highest max RU/s ever provisioned / 10, current storage in GB * 100, 4000 + (MAX(Container count - 25, 0) * 1000))zaokrouhleno na nejbližší 1 000 RU/s.

Poznámka: Pokud vaše databáze obsahuje více než 25 kontejnerů, systém zvýší minimální maximální počet RU/s automatického škálování o 1 000 RU/s na jeden další kontejner. Pokud máte například 30 kontejnerů, nejnižší maximální počet RU/s automatického škálování, který můžete nastavit, je 9 000 RU/s (škálování mezi 900 a 9 000 RU/s).

Omezení dotazů SQL

Cosmos DB podporuje dotazování položek pomocí SQL. Následující tabulka popisuje omezení v příkazech dotazů, například z hlediska počtu klauzulí nebo délky dotazu.

Prostředek Výchozí omezení
Maximální délka dotazu SQL 256 kB
Maximální počet operátorů JOIN na dotaz 5 *
Maximální UDF na dotaz 10 *
Maximální počet bodů na mnohoúhelník 4 096
Maximální zahrnuté cesty na kontejner 500
Maximální počet vyloučených cest na kontejner 500
Maximální vlastnosti ve složeném indexu 8

* Kterékoli z těchto limitů dotazů SQL můžete zvýšit vytvořením Podpora Azure požadavku.

Omezení specifická pro rozhraní MongoDB API

Cosmos DB podporuje přenosový protokol MongoDB pro aplikace napsané proti MongoDB. Podporované příkazy a verze protokolů najdete v článku o podporovaných funkcích a syntaxi MongoDB.

Následující tabulka uvádí omezení specifická pro podporu funkcí MongoDB. Další omezení služeb uvedená pro rozhraní SQL (core) API platí také pro rozhraní MongoDB API.

Prostředek Výchozí omezení
Maximální velikost paměti dotazu MongoDB (toto omezení platí pouze pro serverovou verzi 3.2) 40 MB
Maximální doba provádění operací MongoDB (pro serverovou verzi 3.2) 15 sekund
Maximální doba provádění operací MongoDB (pro server verze 3.6 a 4.0) 60 sekund
Maximální úroveň vnoření pro vložené objekty nebo pole v definicích indexu 6
Časový limit nečinnosti připojení pro ukončení připojení na straně serveru* 30 minut

*Doporučujeme, aby klientské aplikace nastavily časový limit nečinného připojení v nastavení ovladače na 2 až 3 minuty, protože výchozí časový limit pro Azure LoadBalancer je 4 minuty. Tento časový limit zajistí, že nečinná připojení nejsou uzavřena zprostředkující nástroj pro vyrovnávání zatížení mezi klientským počítači a Azure Cosmos DB.

Vyzkoušejte Cosmos DB bezplatné limity.

Následující tabulka uvádí omezení pro zkušební verzi Try Azure Cosmos DB pro bezplatnou zkušební verzi.

Prostředek Výchozí omezení
Doba trvání zkušební verze 30 dní (po vypršení platnosti je možné požádat o novou zkušební verzi)
Po vypršení platnosti se uložené informace odstraní.
Maximální počet kontejnerů na předplatné (SQL, Gremlin, rozhraní API pro tabulky) 1
Maximální počet kontejnerů na předplatné (rozhraní MongoDB API) 3
Maximální propustnost na kontejner 5000
Maximální propustnost na databázi se sdílenou propustností 20000
Maximální celková velikost úložiště na účet 10 GB

Zkuste Cosmos DB globální distribuci pouze v oblastech USA – střed, Severní Evropa a Jihovýchodní Asie. podpora Azure lístků pro účty Try Azure Cosmos DB vytvořit. Pro předplatitele se stávajícími plány podpory je však poskytována podpora.

Azure Cosmos DB limitů účtu úrovně Free

Následující tabulka uvádí omezení pro Azure Cosmos DB úrovně Free.

Prostředek Výchozí omezení
Počet účtů úrovně Free na předplatné Azure 1
Doba trvání slevy na úrovni Free Doba života účtu. Musí se přihlásit při vytváření účtu.
Maximální počet RU/s zdarma 1 000 RU/s
Maximální velikost úložiště zdarma 25 GB
Maximální počet databází se sdílenou propustností 5
Maximální počet kontejnerů v databázi se sdílenou propustností 25
V účtech úrovně Free je minimální počet RU/s pro databázi se sdílenou propustností a až 25 kontejnery 400 RU/s.

Kromě výše uvedených omezení platí také pro účty úrovně Free. Další informace najdete v článku o tom, jak účet úrovně Free.

Další kroky

Přečtěte si Cosmos DB základních konceptech globální distribuce a dělení na oddíly a zřízené propustnosti.

Začínáme se službou Azure Cosmos DB s využitím jedné ze čtyř šablon Rychlý start: