有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java MongoDb分组插入调用?

我正在开发一个使用MongoDb作为后端的应用程序。我正在使用Java MongoClient与MongoDb进行通信。由于MongoClinet是线程安全的,因此多个线程使用该实例将数据写入mongo。我的示例代码是

BasicDBObject document = new BasicDBObject();
        try{
            document.append("address", address);
            document.append("name", name);
            document.append("voterId", voterId);
            unProcessedPeopleCollection.insert(document);
        } catch (Exception e){
            logger.error("Error occured while unProcessedPeopleCollection in Mongo");
            logger.error(e);
        }

我不希望mongoclient立即插入数据库。我希望它将多个呼叫分组到单个呼叫中,就像在100或1000次插入呼叫之后,它实际上会在mongo中推送数据。这将帮助我减少每次通话的往返时间

MongoClient库是否为此提供了任何选项,或者如何在编程级别处理它


共 (1) 个答案

  1. # 1 楼答案

    据我所知,MongoClient是不可能的。您可以通过将呼叫添加到集合(集合、列表等)来手动分组呼叫,并在MongoDB大小达到100或1000后尝试插入MongoDB