We have a database with around 50 collections, and 70 million records. All records belong to specific customers and have a
customerId
property. Currently all clients are in the USA. However, we're in the process of adding EU clients and would like to host their data in an EU datacenter.
Since all records have a customerId
(which is a string) and virtually all of our queries also specify this customerId
this makes it a good choice for a shard key for us - we're only going to have one shard per zone, and we'd like all of a customers data to be in that one shard.
My question is, given that the customerId
's are strings, how do we specify a minimum
and maximum
for the sh.updateZoneKeyRange()
function? Obiously minimum
will be the customerId
(e.g., "customer-somename") but how do we specify a maximum
of "customer-somename" + 1
? The issue here is that maximum
is exclusive, so it can't be the same as minimum
Asked by Zack Newsham
(135 rep)
Apr 16, 2019, 05:11 PM
Last activity: Jul 15, 2025, 06:07 AM
Last activity: Jul 15, 2025, 06:07 AM