0
我使用node.js将大量数据插入到mongodb中。该程序工作正常,我可以看到在mongo数据库的数据库路径中的数据被写为文件是databasename.0这是128 kb,databasename.1是256 kb,databasename.0是512 kb,数据库名称.0是1024 kb,最后一个文件是2048 kb,而最后一个文件是2048 kb,连接在mongodb中丢失,数据未被插入。为什么会发生这种情况,请解释一下这个概念。我将附上用于插入数据的代码。 // connection.js其被用于建立连接在mongodb中写入数据
var Db = require('mongodb').Db;
var connection = require('mongodb').connection;
var Server = require('mongodb').Server;
var connectionInstance;
module.exports = function(callback) {
if (connectionInstance) {
callback(connectionInstance);
return;
}
var serverOptions = {
'auto_reconnect': true,
'poolSize': 100
};
var db = new Db('test', new Server('localhost', 27017, serverOptions));
db.open(function(err, databaseconnection) {
if (err)
console.log(err);
connectionInstance = databaseconnection;
console.log("connection Established");
callback(databaseconnection);
});
};
//The pgm to insert the data on to the mongodb using node.js
var i = 0;
var MongoClient = require('mongodb').MongoClient;
var mongoServer = require('mongodb').Server;
var serverOptions = {
'auto_reconnect': true,
'poolSize': 5
};
var i = 0;
var async = require('async');
var mongoClient = new MongoClient(new mongoServer('localhost', 27017, serverOptions));
var db = mongoClient.db('test');
var collection = db.collection('new_file_test');
var doc
mongoClient.open(function(err, mongoClient) {
if (err) {
console.log(err)
};
function save(callback) {
console.log("Am the first");
doc = {
'trip_paramid': "111",
'tripid': '116',
'lattitude': '12.8929183',
'longitude': '77.63627',
'speed': '2',
'heading': '0',
'altitude': '80469',
'address': 'qwertyasdfgxcvbn',
'engine_status': 'Normal',
'oil_pressure': '83.12',
'water_temp': '28',
'fuel_content': '0',
'brake': 'Normal',
'creation_time': '2013-08-31 23:22:17',
'brakelight_status': 'Normal',
'battery_status': '12.68',
'event_code': '8',
'dbinsert_time': '2013-08-31 23:24:59',
'gsm_status': '-51',
'cell_id': '45',
'vehicle_id': '123456',
'distance': '0'
}
callback(doc);
}
save(function(doc) {
console.log("I got it first");
console.log("Inserting" + i);
collection.insert(doc, function(err) {
if (err)
console.log('Error occured');
else
console.log("Inserted" + i);
});
});
});
你能编辑你的问题来更好地格式化代码吗? – JohnnyHK
对他来说是这样的......当我第一次来到这里时,我不知道如何格式化它); – yaoxing
而不是你的代码,诊断这个需要什么就是为什么“连接失去了与mongodb和数据没有插入“,特别是错误是什么?在Mongo端存在错误(查看日志),应用程序中是否存在错误(记录或打印它并将其包含在此处)。 –