MongoDB中在100万级大数据量插入的代码分享和测试分析

x33g5p2x  于2022-01-04 转载在 Go  
字(0.9k)|赞(0)|评价(0)|浏览(291)

在100万级大数据量插入,MongoDB中速度还相当快的。

下面分享Java操作代码和测试结果

Java代码:

@Test
    void saveBatch() {
        long start=System.currentTimeMillis();
        int oneNum=3000;
        List<User> insertDataList=new ArrayList(oneNum);
        for(int i=0;i<1000000;i++){
            User user=new User();
            user.setName("B"+i);
            user.setPassword("B"+i);
            insertDataList.add(user);
            if(insertDataList.size()>=oneNum){
                BulkOperations operations = mongoTemplate.bulkOps(BulkOperations.BulkMode.UNORDERED,"dept3");
                operations.insert(insertDataList);
                operations.execute();
                insertDataList=new ArrayList(oneNum);
            }
        }
        if(!insertDataList.isEmpty()){
            BulkOperations operations = mongoTemplate.bulkOps(BulkOperations.BulkMode.UNORDERED,"dept3");
            operations.insert(insertDataList);
            operations.execute();
        }
        System.out.println("100万用户用时:"+(System.currentTimeMillis()-start)+"毫秒");
    }

压测结果:

一次插入1条
100万用户用时:127229毫秒
一次插入3000条
100万用户用时:7412毫秒
一次插入5000条
100万用户用时:7490毫秒
一次插入10000条
100万用户用时:7386毫秒

相关文章

微信公众号

最新文章

更多