Bien que cette question soit ancienne, j'ai la même question, et il semble qu'il soit possible de fournir une clé de partitionnement personnalisée depuis récemment.
La configuration de la clé de partition basée sur les annotations est disponible sur 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;
}
À partir d'aujourd'hui spring-boot-starter-mongodb
est livré avec la version 2.x cependant.