Mam problemy z tym, co wydaje się być prostym układem odłamków w Mongo.Złamanie Mongo nie dzieli dużej kolekcji między odłamkami.
Mam dwa odłamki, pojedynczą instancję Mongos, a pojedynczy serwer config skonfigurować tak:
Machine - 10.0.44.16 - server config, Mongos
maszyny B - 10.0.44.10 - odłamek 1
Maszyna C - 10.0.44.11 - odłamek 2
mam kolekcję o nazwie „Nasiona”, które odgrywa kluczową shard „SeedType”, która jest dziedziną, która jest obecna na każdym dokumencie w zbiorach i zawiera jeden z czterech wartości (spójrz na status shardowania poniżej). Dwie wartości mają znacznie więcej wpisów niż pozostałe dwie (dwie z nich mają 784,000 rekordów, a dwa mają około 5000).
Zachowanie, którego się spodziewam, polega na tym, że rekordy w kolekcji "Nasiona" za pomocą InventoryPOS znajdą się na jednym fragmencie, a te z InventoryOnHand znajdą się na drugim.
Jednak wydaje się, że wszystkie rekordy dla obu większych kluczy odłamkowych trafiają do głównego fragmentu.
Oto mój tekst statusu sharding (inne zbiory usunięte dla jasności):
--- 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 }
robię coś złego?
Semi-niezwiązane pytanie:
Jaki jest najlepszy sposób na atomowo przeniesienie obiektu z jednego zbioru do drugiego bez blokowania całą usługę Mongo?
Dzięki z góry, -Tim