我们目前正在使用java驱动程序将巨大的JSON文件(~100 MB)导入MongoDB.目前我们将文件拆分为较小的块,因为我们第一次遇到导入整个文件的问题.当然,我们知道MongoDB的最大文档大小为16 MB的限制,但是我们现在导入的块远小于此.
奇怪的是,导入程序在Linux(eclipse)上运行时工作正常,但同样的程序会抛出异常,说明Windows上的"不能说些什么"(eclipse).从数据库中观察日志时,会显示错误消息
> "Thu Sep 13 11:38:48 [conn1] recv(): message len 1835627538 is too
> large1835627538"
Run Code Online (Sandbox Code Playgroud)
重新运行同一数据集上的导入始终会导致有关消息长度的相同错误消息.我们调查了要导入的文档的大小(使用.toString().length()) - 导致错误的块只有几KB大.
mongo数据库运行的操作系统没有区别,但取决于执行导入代码的位置(使用相同的java-mongo-driver)