Azure Cosmos DB jako úložiště klíč-hodnota – přehled nákladů
PLATÍ PRO: NoSQL
Azure Cosmos DB je globálně distribuovaná databázová služba s více modely pro snadné vytváření vysoce dostupných a rozsáhlých aplikací. Azure Cosmos DB ve výchozím nastavení automaticky a efektivně indexuje všechna data, která ingestuje. To umožňuje rychlé a konzistentní dotazy SQL (a JavaScriptu) na data.
Tento článek popisuje náklady služby Azure Cosmos DB na jednoduché operace zápisu a čtení, když se používají jako úložiště klíč/hodnota. Operace zápisu zahrnují vložení, nahrazení, odstranění a upserty datových položek. Kromě záruky smlouvy SLA o 99,999% dostupnosti pro všechny účty s více oblastmi nabízí Azure Cosmos DB garantovanou <latenci 10 ms pro čtení a zápisy (indexované) na 99. percentilu.
Proč používáme jednotky žádostí (RU)
Výkon služby Azure Cosmos DB vychází z množství zřízené propustnosti vyjádřené v jednotkách žádostí (RU/s). Zřizování je ve druhé členitosti a je zakoupeno v RU/s (nezaměňovat s hodinovou fakturací). Ru by se měly považovat za logickou abstrakci (měnu), která zjednodušuje zřizování požadované propustnosti pro aplikaci. Uživatelé si nemusí myslet na rozdíl mezi propustností čtení a zápisu. Model jedné měny RU vytváří efektivitu sdílení zřízené kapacity mezi čtením a zápisy. Tento zřízený model kapacity umožňuje službě poskytovat předvídatelnou a konzistentní propustnost, garantovanou nízkou latenci a vysokou dostupnost. A konečně, zatímco model RU se používá k znázornění propustnosti, každá zřízená RU má také definované množství prostředků (např. paměť, jádra/ procesor a IOPS).
Azure Cosmos DB je jako globálně distribuovaný databázový systém jedinou službou Azure, která poskytuje komplexní smlouvy SLA, které pokrývají latenci, propustnost, konzistenci a vysokou dostupnost. Propustnost, kterou zřídíte, se použije pro každou oblast přidruženou k vašemu účtu služby Azure Cosmos DB. Pro čtení nabízí Azure Cosmos DB několik jasně definovaných úrovní konzistence, ze které si můžete vybrat.
Následující tabulka uvádí počet RU potřebných k provádění operací čtení a zápisu na základě datové položky o velikosti 1 kB a 100 kB s vypnutým výchozím automatickým indexováním.
Velikost položky | 1 Čtení | 1 Zápis |
---|---|---|
1 kB | 1 RU | 5 RU |
100 kB | 10 RU | 50 RU |
Náklady na čtení a zápisy
Pokud zřídíte 1 000 RU/s, bude to 3,6 milionu RU za hodinu a bude stát 0,08 USD za hodinu (v USA a Evropě). U datové položky velikosti 1 kB to znamená, že můžete spotřebovat 3,6 milionu čtení nebo 0,72 milionů zápisů (3,6 milionu RU / 5) pomocí zřízené propustnosti. Normalizováno na milion čtení a zápisů, náklady by byly 0,022 USD /milion čtení (0,08 USD / 3,6) a 0,111 USD/milion zápisů (0,08 USD / 0,72 USD). Náklady na milion se změní na minimum, jak je znázorněno v tabulce níže.
Velikost položky | Náklady na 1 milion čtení | Náklady na 1 milion zápisů |
---|---|---|
1 kB | $0,022 | $0,111 |
100 kB | 0,222 Usd | $1,111 |
Většina základního objektu blob nebo objektu ukládá služby poplatky za 0,40 USD za milion transakcí čtení a 5 USD za milion transakcí zápisu. Pokud se používá optimálně, může být služba Azure Cosmos DB až o 98 % levnější než tato jiná řešení (pro transakce 1 kB).
Další kroky
- Pomocí kalkulačky RU můžete odhadnout propustnost vašich úloh.