MongoDB GridFS使用C#驱动程序 - 有没有办法直接更新或附加块?

时间:2017-09-05 12:47:39

标签: c# mongodb driver gridfs

我想上传一个非常大的文件,说> 10GB文件到MongoDB GridFs。

我知道Gridfs会对数据进行分块并将文件保存在两个集合中,默认为fs.files和fs.chunks命名,但为此我相信我需要传递整个文件,GridFS将自己进行分块并保存内部元数据。

这是我的方法,

  • 我正在使用javascript从客户端拆分文件。
  • 使用orderId将文件的块发送到C#web API,这可能无法按顺序在服务器端接收。
  • 将块中的块作为单独的文件存储在临时存储桶中(因为我不想将文件存储在文件系统中)
  • 使用orderId从GridFS临时存储桶中读取块并合并文件。
  • 将其存储在GridFS实际存储桶中,并删除临时GridFS存储桶及其内容。

我的问题是,是否有任何选项可以直接追加/更新块?我可以避免创建临时存储桶并编辑元数据和块吗?有没有办法直接上传我从客户端收到的块,并更新fs.chunks和fs.files的元数据,并完成上传。

我想在合并文件时避免使用内存。任何快速的帮助都会有很大的帮助。

0 个答案:

没有答案