Je rencontre des problèmes avec ce qui semble être une simple configuration de partitionnement dans mongo.Le bourrage de mongos ne parvient pas à diviser la grande collection entre les fragments
J'ai deux tessons, une seule instance de mongos, et un serveur de configuration unique mis en place comme ceci:
Machine A - 10.0.44.16 - serveur de configuration, Mongos
machine B - 10.0.44.10 - tesson 1
machine C - 10.0.44.11 - tesson 2
J'ai une collection appelée « semences » qui a une clé de tesson « de SeedType » qui est un champ qui est présent sur tous les documents de la collection, et contient l'un des quatre valeurs (jetez un oeil à l'état de sharding ci-dessous). Deux des valeurs ont significativement plus d'entrées que les deux autres (deux d'entre eux ont 784 000 enregistrements chacun, et deux en ont environ 5 000).
Le comportement que je m'attends à voir est que les enregistrements de la collection 'Seeds' avec InventoryPOS finiront sur un fragment, et ceux avec InventoryOnHand finiront sur l'autre.
Cependant, il semble que tous les enregistrements des deux plus grandes clés de fragment se retrouvent sur la partition primaire.
Voici mon sharding texte d'état (autres collections supprimées pour plus de clarté):
--- Sharding Status --- sharding version: { "_id" : 1, "version" : 3 } shards: { "_id" : "shard0000", "host" : "10.44.0.11:27019" } { "_id" : "shard0001", "host" : "10.44.0.10:27017" } databases: { "_id" : "admin", "partitioned" : false, "primary" : "config" } { "_id" : "TimMulti", "partitioned" : true, "primary" : "shard0001" } TimMulti.Seeds chunks: { "SeedType" : { $minKey : 1 } } -->> { "SeedType" : "PBI.AnalyticsServer.KPI" } on : shard0000 { "t" : 2000, "i" : 0 } { "SeedType" : "PBI.AnalyticsServer.KPI" } -->> { "SeedType" : "PBI.Retail.InventoryOnHand" } on : shard0001 { "t" : 2000, "i" : 7 } { "SeedType" : "PBI.Retail.InventoryOnHand" } -->> { "SeedType" : "PBI.Retail.InventoryPOS" } on : shard0001 { "t" : 2000, "i" : 8 } { "SeedType" : "PBI.Retail.InventoryPOS" } -->> { "SeedType" : "PBI.Retail.SKU" } on : shard0001 { "t" : 2000, "i" : 9 } { "SeedType" : "PBI.Retail.SKU" } -->> { "SeedType" : { $maxKey : 1 } } on : shard0001 { "t" : 2000, "i" : 10 }
Est-ce que je fais quelque chose de mal?
question semi-indépendant:
Quelle est la meilleure façon de transférer atomiquement un objet d'une collection à l'autre sans bloquer l'ensemble du service mongo?
Merci à l'avance, -Tim