在100万级大数据量插入,MongoDB中速度还相当快的,下面分享插入1000万条数据测试结果。
下面分享Java操作代码
@Test
void saveBatch() {
long start=System.currentTimeMillis();
int oneNum=5000;
List<User> insertDataList=new ArrayList(oneNum);
int totalnum=1000*10000;//1000万
for(int i=0;i<totalnum;i++){
User user=new User();
user.setName("A"+i);
user.setPassword("A"+i);
insertDataList.add(user);
if(insertDataList.size()>=oneNum){
BulkOperations operations = mongoTemplate.bulkOps(BulkOperations.BulkMode.UNORDERED,"user2");
operations.insert(insertDataList);
operations.execute();
insertDataList=new ArrayList(oneNum);
}
if(i!=0&&i%1000000==0){
System.out.println("导入"+i+"条用户数据用时:"+(System.currentTimeMillis()-start)+"毫秒");
}
}
if(!insertDataList.isEmpty()){
BulkOperations operations = mongoTemplate.bulkOps(BulkOperations.BulkMode.UNORDERED,"user2");
operations.insert(insertDataList);
operations.execute();
}
System.out.println("1000万用户用时:"+(System.currentTimeMillis()-start)+"毫秒");
}
在4核CPU和16G内存的win10台式机,idea开发环境下的测试结果:
导入1000000条用户数据用时:7470毫秒
导入2000000条用户数据用时:14479毫秒
导入3000000条用户数据用时:21450毫秒
导入4000000条用户数据用时:28331毫秒
导入5000000条用户数据用时:35243毫秒
导入6000000条用户数据用时:42138毫秒
导入7000000条用户数据用时:49051毫秒
导入8000000条用户数据用时:55955毫秒
导入9000000条用户数据用时:62885毫秒
1000万用户用时:69857毫秒
版权归原作者 秋9 所有, 如有侵权,请联系我们删除。