Utvärdera genomströmningskrav
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.
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.