0
votes

Understanding so far..

Logical partitions are mapped to physical partitions and we have no control over the number of physical partitions. One physical partition can contain multiple logical partitions.

I also understand that provisioned RUs are divided equally among physical partitions.

The question..

Say I have a 500 RU limit, 1 million distinct partition key values and 50GB of data. That's 1 million logical partitions.

Will the container's logical partitions be grouped on a small pool of physical partitions that are reserved exclusively for our use? E.g. among 5 physical partitions, so each partition has 100 RUs?

Or will each logical partition end up being stored somewhere random on physical partitions shared with other Cosmos users? Thus my 500 RUs is actually 500 divided by a really, really high number of physical partitions (at most 1 million), with queries likely to fail as the per-physical partition RU limit is exceeded?

My understanding is that it's the former, but I want to validate this at the planning stage!

1

1 Answers

0
votes

The RU has some relationship with your size of data. Recall that 500 is the lowest possible RU for any container. For 50 GB worth of data, your minimum RU is over that. Actually it is over 2000.

Let's say it is 5000. Then your 5000 RU is distributed over all your physical partitions, correct. In your case one physical partition will be more than one logical ones. As far as where exactly those partitions are stored - well - that is not published so that is unknown.

What is known is that the performance and availability SLA is the same. Hope this helps.