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

Posted 秋9

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB中在100万级大数据量插入的代码分享和测试分析相关的知识,希望对你有一定的参考价值。

在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毫秒

以上是关于MongoDB中在100万级大数据量插入的代码分享和测试分析的主要内容,如果未能解决你的问题,请参考以下文章

Mysql千万级大数据量查询优化

MySQL千万级大表优化解决方案

优化MySQL千万级大表优化解决方案

一次 MySQL 千万级大表的优化过程

JAVA Apache POI 之sax 解析10万级大数量数据

JAVA Apache POI 之sax 解析10万级大数量数据