Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从mongodb中分块读取数据_Java_Mongodb_Mongodb Query_Spring Batch_Batch Processing - Fatal编程技术网

Java 从mongodb中分块读取数据

Java 从mongodb中分块读取数据,java,mongodb,mongodb-query,spring-batch,batch-processing,Java,Mongodb,Mongodb Query,Spring Batch,Batch Processing,我以rest(springjavaserver)请求的形式不断地从用户那里接收数据,并将它们存储在Mongodb中 我有一个用例,在这个用例中,我的客户说每周以文本文件的形式上传一次数据,但他们的系统的上传限制是200 MB 考虑一下,如果我在一周内收到1GB的数据 目前我试图解决我的用例的方式是 从MongoDB读取所有数据,其中日期介于每周的开始日期和每周的结束日期之间 创建小于200MB的文本文件,例如week11_1.txt, week11_2.txt等等 当前我面临的挑战如果我使用

我以rest(springjavaserver)请求的形式不断地从用户那里接收数据,并将它们存储在
Mongodb

我有一个用例,在这个用例中,我的客户说每周以文本文件的形式上传一次数据,但他们的系统的上传限制是200 MB

考虑一下,如果我在一周内收到1GB的数据

目前我试图解决我的用例的方式是

  • 从MongoDB读取所有数据,其中日期介于每周的开始日期和每周的结束日期之间

  • 创建小于200MB的文本文件,例如
    week11_1.txt

    week11_2.txt
    等等

当前我面临的挑战如果我使用上述方法解决问题,那就是如何从MongoDB中读取数据,在数据大小约为190MB时停止,然后创建一个文本文件并上传,然后重复此操作,直到某一周的数据没有被读取为止


如果您使用上述方法或任何更好的方法帮助我解决此用例,我将非常感谢您。

我认为这是一个完全过于宽泛的问题,但我也认为您是从错误的角度来解决的。因此,与其要求MongoDB在翻译成文本时返回200MB,为什么不在此时拆分文本文件本身呢。计算写入的字节数应该相对简单,而您真正要做的(尽管是一个宽泛的主题)就是切换要输出的“流”。因此,这与数据源无关。改为管理输出。您是否建议从MongoDB一次读取整个星期的数据,然后将这些数据写入各种文本文件。宾果!在我脑海中,我能想到至少5次用不同的数据库引擎做同样的事情。计算输出流上的字节数很容易。好的,谢谢你的回答。我认为这个问题太宽泛了,但我也认为你的理解是错误的。因此,与其要求MongoDB在翻译成文本时返回200MB,为什么不在此时拆分文本文件本身呢。计算写入的字节数应该相对简单,而您真正要做的(尽管是一个宽泛的主题)就是切换要输出的“流”。因此,这与数据源无关。改为管理输出。您是否建议从MongoDB一次读取整个星期的数据,然后将这些数据写入各种文本文件。宾果!在我脑海中,我能想到至少5次用不同的数据库引擎做同样的事情。计算输出流上的字节数很容易。别想得太多。好的,谢谢你的回答