Tengo problemas con lo que parece ser una simple configuración de fragmentación en mongo.Mongo sharding no puede dividir una gran colección entre fragmentos
que tienen dos fragmentos, una única instancia mongo, y un servidor único conjunto de configuración de esta manera:
máquina A - 10.0.44.16 - servidor de configuración, Mongos
máquina B - 10.0.44.10 - fragmento 1
máquina C - 10.0.44.11 - fragmento 2
tengo una colección llamada 'semillas' que tiene una clave fragmento 'SeedType', que es un campo que está presente en todos los documentos de la colección, y contiene uno de los cuatro valores (eche un vistazo al estado de fragmentación a continuación). Dos de los valores tienen significativamente más entradas que los otros dos (dos de ellos tienen 784,000 registros cada uno, y dos tienen alrededor de 5,000).
El comportamiento que espero ver es que los registros en la colección 'Seeds' con InventoryPOS terminarán en un fragmento, y los que tienen InventoryOnHand terminarán en el otro.
Sin embargo, parece que todos los registros de las dos claves de fragmento más grandes terminan en el fragmento primario.
Aquí es mi texto de estado (sharding otras colecciones eliminadas para mayor claridad):
--- 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 }
estoy haciendo algo mal?
pregunta semi-sin relación:
¿Cuál es la mejor manera de transferir atómicamente un objeto de una colección a otra sin bloquear todo el servicio mongo?
Gracias de antemano, -Tim