在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毫秒
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/404097.html
標籤:其他
