Nonostante questa domanda sia vecchia, ho la stessa domanda e sembra che non sia possibile fornire una chiave di partizionamento orizzontale personalizzata da poco tempo.
La configurazione Shard Key basata su annotazioni è disponibile su 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;
}
Ad oggi spring-boot-starter-mongodb
viene fornito con la versione 2.x però.