Utvärdera genomströmningskrav

Slutförd

Enheter för begäran är en kursbaserad valuta. De används för att göra det enkelt att prata om fysiska resurser som minne, CPU och I/O när du utför begäranden i Azure Cosmos DB. Det är till exempel lättare att tänka på 10 enheter för begäranden som ungefär dubbelt så många som fem enheter för begäranden i relativ bemärkelse utan att behöva oroa sig för de fysiska resurser som abstraheras bort. Enheter för begäranden används för att mäta både förgrunds- och bakgrundsaktiviteter.

Varje begäran förbrukar ett fast antal enheter för begäran, inklusive men inte begränsat till:

  • Läser
  • Skrivoperationer (inklusive indexeringsoperationer)
  • Frågor

Konfigurera genomströmningskapacitet

När du skapar en databas eller container i Azure Cosmos DB kan du etablera enheter för begäranden i en ökning av enheter för begäranden per sekund (eller RU/s för kort). För standardetablerade dataflöden är det minsta belopp som du kan etablera 400 RU/s. För autoskalning av etablerat dataflöde är minimivärdet 1 000 RU/s som skalar ned till 100 RU/s.

Beräkna ad hoc RU/s-förbrukning

Vissa RU/s normaliseras över olika åtkomstmetoder, vilket gör många vanliga åtgärder förutsägbara. Med den här kunskapen kan du utföra några grundläggande uppskattningar för enkla arbetsbelastningar. Du kan till exempel uppskatta de RU/s som krävs för vanliga databasåtgärder, till exempel en RU för en läsåtgärd för ett 1 KB-dokument och sex RU för en skrivåtgärd av ett 1 KB-dokument med indexering inaktiverat.

Diagram över enheter för programbegäran med uppskattningar

Med den här strategin bör du identifiera din lösnings fråge- och åtkomstmönster för att göra en kvalificerad gissning om hur många enheter för begäran som behövs i Azure Cosmos DB. För att göra detta vill du ha information som:

  • De fem vanligaste frågorna
  • Antal läsåtgärder per sekund
  • Antal skrivåtgärder per sekund

Tips

Mätning av RU/s för frågor bör göras i stor skala. Mätning av frågor som körs på en enda fysisk partition ger inte betydande data om det faktiska dataflödet som används i ditt verkliga scenario när det har distribuerats och skalats ut.

Du kan använda ett kalkylbladsprogram för att skapa en snabbtabell för att ta reda på en ungefärlig uppskattning av din nödvändiga kapacitet för begärandeenheten. Här är ett snabbt exempel:

Åtgärdstyp Antal begäranden per sekund Antal RU per förfrågan RU/s behövs
Skriva enskilt dokument 10 000 10 100,000
Toppfråga nr 1 700 100 70,000
Toppfråga nr 2 200 100 20 000
Toppfråga nr 3 100 100 10 000
Totalt antal RU/s 200 000 RU/s

Tips

Du kan också köra ett proof of concept-program och använda egenskapen request charge för SDK för att mäta den verkliga RU-avgiften för att köra de åtgärder som du tänker utföra mot Azure Cosmos DB.