Въпреки че този въпрос е стар, аз имам същия въпрос и изглежда, че отскоро има възможност за предоставяне на персонализиран ключ за шардинг.
Базираната на анотации конфигурация на Shard Key е достъпна на spring-data-mongodb:3.x
,https://docs.spring .io/spring-data/mongodb/docs/3.0.x/reference/html/#sharding
@Document("users")
@Sharded(shardKey = { "country", "userId" })
public class User {
@Id
Long id;
@Field("userid")
String userId;
String country;
}
От днес spring-boot-starter-mongodb
идва обаче с версия 2.x.