问题标签 [gridfs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - How do I overwrite a file in MongoDB Gridfs?
I am writing to the MongoDB gridfs using the following code:
When I look into Gridfs I can see that files seem to be being added, so I'm ending up with lots of files with the same name. When I read the gridfs it always returns the latest file, so it all works ok, but it seems rather inefficient.
How do I perform a MongoDB gridfs write that overwrites any exiting file with the same name?
php - MongoDB GridFS 存储多种大小的图像或使用动态调整大小
在我的网络应用程序中,我使用 MongoDB GridFS 来存储用户上传的图像。
该站点的其余部分由 MySQL 管理。
在照片表(在 mysql 中)中,我有三个字段用于存储文件对象的 MongoId。
- 小的
- 中等的
- 大的
所以我存储了三个版本的图像。小型、中型和大型。
我的问题是,有时我需要使用比图像的“小”版本更小的缩略图(即在小部件框、消息头像等中),或者我需要使用稍微小一点的中等图像版本.
所以我的问题是,最好只在 GridFS 系统中存储一张图像,然后在照片表中使用一个字段来存储 MongoID,然后创建一个动态调整图像大小的脚本(即http://localhost/image/ fetch/ {mongoid}?resize=50
否则,在我的数据库中,我需要 thumbnail_50、thumbnail_100、medium_300、medium_400 等。
沿着即时调整大小路线走会有什么影响?这是一个坏主意还是个好主意?你会怎么办?
谢谢。
mongodb - 将多个文件通过管道传输到一个 zip 文件中
我在 GridFS 文档存储中有几个文件,我想做的是通过 NodeJS 中的标准输入将这些数据传输到一个 zip 文件中。这样我最终会得到一个包含所有这些文件的 zip 文件。
现在我的问题是如何在 zip 文件中给文件一个有效的文件名。我想我需要模拟/伪造一个包含文件名的文件头?
任何帮助表示赞赏!
谢谢
nginx - 如何使 nginx-gridfs 正确使用正则表达式位置匹配的结果
简而言之,这不起作用:
这是使用https://github.com/mdirolf/nginx-gridfs
它有多个问题。这只是一个仅供参考,因为我认为它不能用位置正则表达式来完成,因为:
- group 不是进程,并且 $1 被逐字用作“storage.$1”集合名称
- 不知何故,可能在 C 代码中,文件名是通过从匹配中删除字符来获取的,通过删除正则表达式中指定的确切字符数。意思是,“/grid/(.+)/”有 10 个字符长,这就是从整个 url 中删除的字符数(显然减去域)。我已经对此进行了很多测试(仅通过 C 代码很短),这就是它正在做的事情。
我假设这仍然可以通过以某种方式重写或另一个 nginx 配置来完成。
作为最后的手段,我会联系项目维护者,但 nginx 的配置似乎足够灵活,可以解决这些问题,因为这就像广告宣传的那样:
java - MongoDB 返回的 ObjectId 值与存储的值不同(使用 GridFS)
我将文件存储在 MongoDB 中。为了在以后检索它们,我正在记录ObjectId
与每个文件关联的内容。
然而,返回的 id 值总是与存储的不同。
例如,当:
4E9845D6036400DF09609B23存储的值返回为4E9845D6036400DF09609B22 4E98466F036400DF09609B27存储的值返回是4E98466F036400DF096035003 4E9848530364904B6B575003存储的值返回是4E9848530364904B6B575002
差异仅在最后一位,差异始终相同:返回值比存储值小 1。
当我使用存储的值运行测试时,文件按预期返回。所以这似乎是我必须解决的问题。
有谁知道为什么会发生这种情况?
mongodb - 我应该使用 GridFS 还是二进制数据从 MongoDB 存储和检索图像?
我想知道哪个更好/更快:
- 拥有一个单独的文档集合,其中仅包含保存为二进制数据的图像,可能还有一些元数据。
- 或者使用 GridFS 来存储图像。
mongomapper - Padrino + MongoMapper/联合问题
我在 Padrino 上使用 MongoMapper 和 Joint,并试图让上传工作。但是,我一直被抛出一个
NoMethodError "undefined method 'path' for #<Hash:0xa6fbdf0>"
. 好像看不到路径,不过参数还行。这里有什么问题?
代码要点:https ://gist.github.com/1323998
我能够让它没有错误,但是当我用 查找文件时mongofiles
,我找不到。rack/grid-fs 也是如此。联合储蓄在哪里,是否在储蓄?
php - MongoDB 和 PHP - 插入和更新大型 PHP 数组
我有一个循环,每次循环迭代时,它都会向数组添加一条记录。
在我当前的模型中,我等待循环完全完成,然后将该数组插入 MongoDB,直到现在还没有遇到问题。
现在我的数组大小在循环后开始超过 10 MB,我读到 Mongo 有 4MB 的限制。而且我不想在等待循环完成时将整个数组存储到内存中。
理想情况下,我希望在循环中对集合的同一个 Mongo Id 进行更新,这样我就不需要将数组存储在内存中。但是,如果集合大小超过 4MB,Mongo 似乎不支持,所以我不知道该怎么做。
我阅读了有关 GridFS 的信息,但没有看到使用它插入数组的方法。任何想法将不胜感激。
mongodb - Mongo::OperationFailure, 数据库命令 'filemd5' 失败: (errmsg: 'exception: best guess plan requested, but scan and order required)
我有一个应用程序可以通过 Padrino 中的 MongoMapper/Joint 将文件上传到 GridFS。一切正常,然后突然之间,我收到了错误:
堆栈跟踪:
MongoMapper 组上的这个线程建议我在集合上运行ensure_index
(或create_index
) 。files.chunk
但是,我不知道如何使用 MongoMapper 执行此操作。
有没有办法防止这种情况?
mongodb - 无法在 GridFS 中保存多个文档(使用 MongoMapper/Joint)
我编写了一个允许您上传文件的 Padrino 应用程序。它使用 MongoMapper(通过 Joint)将这些文件(图像)存储在 GridFS 中。我可以毫无问题地存储一个文件。但是,当我去存储另一个文件时,它会保存,但它不在数据库中。我编写了规范以直接使用模型类(不通过帕德里诺路线),我得到了相同的结果。我在这里做错了什么?
相关文件的要点:https ://gist.github.com/1341836
应用程序:http: //github.com/eturk/fhsclock