localhost에 3 개의 config 서버와 2 개의 shonged mongo 인스턴스와 하나의 mongos가있는 sharded mongo db 환경을 설정했습니다.Sharded mongodb는 데이터를 재배포하지 않습니다
sh.addShard("127.0.0.1:27010")
sh.addShard("127.0.0.1:27011")
a = {"_id" : 1, "value" : 1}
b = {"_id" : 2, "value" : 2}
c = {"_id" : 3, "value" : 3}
d = {"_id" : 4, "value" : 4}
use foobar;
db.foo.insert(a);
db.foo.insert(b);
db.foo.insert(c);
db.foo.insert(d);
(가) 내가 샤딩에 대한 DB를 사용하고 등
sh.enableSharding("foobar");
db.foo.ensureIndex({"value":"hashed"});
sh.shardCollection("foobar.foo", { value: "hashed" })
모든 결과 인덱스를 생성 : 클러스터가 최대 시작되면
, 나는 다음과 같은 일련의 명령을 실행 위의 작업은 성공적입니다.
그러나 내가 한 번 : db.foo.stats()
을 나는 모든 데이터가 분산되지 않고 한 파편에 끝나는 것을 알 수있다. 그리고
db.printShardingStatus();
를 실행하면 생성합니다
--- Sharding Status ---
sharding version: {
"_id" : 1,
"version" : 3,
"minCompatibleVersion" : 3,
"currentVersion" : 4,
"clusterId" : ObjectId("52170e8a7633066f09e0c9d3")
}
shards:
{ "_id" : "shard0000", "host" : "127.0.0.1:27010" }
{ "_id" : "shard0001", "host" : "127.0.0.1:27011" }
databases:
{ "_id" : "admin", "partitioned" : false, "primary" : "config" }
{ "_id" : "foobar", "partitioned" : true, "primary" : "shard0000" }
foobar.foo
shard key: { "value" : "hashed" }
chunks:
shard0000 1
{ "value" : { "$minKey" : 1 } } -->> { "value" : { "$maxKey" : 1 } } on : shard0000 Timestamp(1, 0)
을 흥미롭게도하지만, 나는 빈 컬렉션 시작하고 여기에 데이터를 추가하기 전에에서 샤딩을 수있는 경우, 결과는 매우 다르다 :
db.foo.stats();
{
"sharded" : true,
"ns" : "foobar.foo",
"count" : 4,
"numExtents" : 2,
"size" : 144,
"storageSize" : 16384,
"totalIndexSize" : 32704,
"indexSizes" : {
"_id_" : 16352,
"value_hashed" : 16352
},
"avgObjSize" : 36,
"nindexes" : 2,
"nchunks" : 4,
"shards" : {
"shard0000" : {
"ns" : "foobar.foo",
"count" : 1,
"size" : 36,
"avgObjSize" : 36,
"storageSize" : 8192,
"numExtents" : 1,
"nindexes" : 2,
"lastExtentSize" : 8192,
"paddingFactor" : 1,
"systemFlags" : 1,
"userFlags" : 0,
"totalIndexSize" : 16352,
"indexSizes" : {
"_id_" : 8176,
"value_hashed" : 8176
},
"ok" : 1
},
"shard0001" : {
"ns" : "foobar.foo",
"count" : 3,
"size" : 108,
"avgObjSize" : 36,
"storageSize" : 8192,
"numExtents" : 1,
"nindexes" : 2,
"lastExtentSize" : 8192,
"paddingFactor" : 1,
"systemFlags" : 1,
"userFlags" : 0,
"totalIndexSize" : 16352,
"indexSizes" : {
"_id_" : 8176,
"value_hashed" : 8176
},
"ok" : 1
}
},
"ok" : 1
}
기존 컬렉션을 분류하면 내가 놓친 것이 있는지 여부가 궁금합니다.