我有以下nodejs脚本,该脚本当前创建了一些试用数据库,然后创建了一个集合并将一个示例条目插入到集合中。现在我想为数据库启用分片,然后根据散列id
字段对集合进行分片。我怎么能这样做?
代码中的host
和port
指向mongos正在运行的位置。
var mongoClient = require('mongodb').MongoClient;
var name = "sampledb";
function start() {
for (var i=4;i<20;++i) {
var dbname = name + i;
mongoClient.connect("mongodb://" + host + ":" + port + "/" + dbname, function(err, db) {
if(err) {
console.log("Error connecting to db");
process.exit(0);
}
db.createCollection("messages", function(err_, result_) {
if (err_) {
console.log("Error while creating collection");
process.exit(0);
}
db.collection("messages").insert({"id":"<random id>"}, {w:0}, function(err, result) {
if(err) {
console.log("Could not insert document");
} else {
console.log("Successfully inserted document");
}
});
//now shard the collections created
});
});
}
}
start();
我无法抓住我的问题的正确文件,有人可以帮助我...谢谢。