Disons que j'avais une collection appelée "Historique" et "Employés" et qu'il y aura un document à ce sujet.shardcollection avec le document existant mongodb
Lorsque je crée la première collection avec
sh.shardCollection("Databases.History",{"email":1})
il fonctionne très bien, et j'ajouter un document à ce sujet.
Mais. Lorsque je crée la deuxième collection nommée « employees » avec
db.Employees.insert({"name":"Jhon Wick", "email":"[email protected]"})
et de créer une collection de tesson sur elle avec
sh.shardCollection("Databases.Employees",{"email":1})
, il ne fonctionne pas.
MongoDB dit que « s'il vous plaît créer un index qui commence par la touche tesson avant sharding. »
j'ai donc essayé d'ajouter un indice aux employés db.Employees.ensureIndex({"email":"hashed"})
et il fonctionne. Mais quand j'ai essayé shardCollection
encore, il retourne toujours cette erreur.
Que dois-je faire? Est-ce que MongoDB a des règles que si je voudrais ajouter shardKeys sur une collection, il (collection) ne doit pas exister au début?
Omg, c'est ce que je suis absent. Je ne lis pas les docs clairement. S'excuser. Voulez-vous expliquer les deux façons différentes que je fais? En tout cas, ça m'aide à résoudre mon problème. Merci beaucoup –