Multiregionale kosten optimaliseren in Azure Cosmos DB

VAN TOEPASSING OP: Nosql MongoDB Cassandra Gremlin Tabel

U kunt op elk moment regio's toevoegen aan en verwijderen uit uw Azure Cosmos DB-account. De doorvoer die u configureert voor verschillende Azure Cosmos DB-databases en -containers, is gereserveerd in elke regio die is gekoppeld aan uw account. Als de doorvoer die is ingericht per uur dat de som is van de aanvraageenheden per seconde (RU/s) die zijn geconfigureerd voor alle databases en containers voor uw Azure Cosmos DB-account, is T en het aantal Azure-regio's dat is gekoppeld aan uw databaseaccount, is Nde totale ingerichte doorvoer voor uw Azure Cosmos DB-account gedurende een bepaald uur gelijk aan T x N RU/s.

Ingerichte doorvoer met één schrijfregio en ingerichte doorvoer met meerdere schrijfbare regio's kan variëren in kosten. Zie prijzen voor Azure Cosmos DB voor meer informatie.

Kosten voor meerdere schrijfregio's

In een systeem voor schrijfbewerkingen met meerdere regio's neemt N de netto beschikbare RU/s voor schrijfbewerkingen toe wanneer N het aantal schrijfregio's is. In tegenstelling tot schrijfbewerkingen in één regio is elke regio nu beschrijfbaar en ondersteunt conflictoplossing. Vanuit het oogpunt van kostenplanning moet u RU/s-schrijfbewerkingen wereldwijd uitvoeren M om RU/s te configureren M op container- of databaseniveau. Vervolgens kunt u zoveel regio's toevoegen als u wilt en deze gebruiken voor schrijfbewerkingen om RU/s van wereldwijde schrijfbewerkingen uit te voeren M .

Opmerking

Houd er rekening mee dat u een container hebt in een scenario voor schrijven in één regio. Deze container is ingericht met doorvoer van 10K RU/s en slaat 0.5 deze maand TB aan gegevens op. Laten we nu aannemen dat u een andere regio met dezelfde opslag en doorvoer toevoegt en dat u vanuit uw app naar de containers in beide regio's wilt schrijven.

In dit voorbeeld wordt uw nieuwe totale maandelijkse verbruik weergegeven:

Maandelijks gebruik
Doorvoerfactuur voor container in één schrijfregio 10K RU/s * 730 hours
Doorvoerfactuur voor container in meerdere schrijfregio's (twee) 2 * 10K RU/s * 730 hours
Opslagfactuur voor container in één schrijfregio 0.5 TB (or 512 GB)
Opslagfactuur voor container in twee schrijfregio's 2 * 0.5 TB (or 1,024 GB)

Notitie

In dit voorbeeld wordt uitgegaan van 730 uur in een maand.

Doorvoergebruik per regio verbeteren

Als u inefficiënt gebruik hebt, kunt u stappen ondernemen om het maximale gebruik van de RU/s in leesregio's te maken met behulp van de wijzigingenfeed uit de leesregio. U kunt ook overstappen op een andere secundaire als deze te veel wordt gebruikt. Een of meer onderbenutte leesregio's worden bijvoorbeeld beschouwd als inefficiënt. U moet ervoor zorgen dat u eerst de ingerichte doorvoer (RU/s) in de schrijfregio optimaliseert.

Schrijfbewerkingen kosten meer dan leesbewerkingen voor de meeste gevallen, met uitzondering van grote query's. Het kan lastig zijn om zelfs het gebruik te behouden. Bewaak over het algemeen de verbruikte doorvoer in uw regio's en voeg regio's op aanvraag toe of verwijder deze om uw lees- en schrijfdoorvoer te schalen. Zorg ervoor dat u begrijpt wat het effect is op latentie voor alle apps die in dezelfde regio zijn geïmplementeerd.