jjzjj

python - 如何在 PyMongo 的 GridFS 中打开文件的 GridOut 实例?

假设我有一个pdf文件,我想在系统默认的pdf应用程序中用Python脚本打开它。首先,如果它保存在常规文件系统中,我会像这样打开它:importosos.system('Open/Users/Doe/Documents/mypdf.pdf')其次,如果我想将pdf文件存储在GridFS中,我可以像这样写入GridFS:frompymongoimportConnectionfromgridfsimportGridFSdb=Connection().text_databasefs=GridFS(db)withopen('/Users/Doe/Documents/mypdf.pdf')as

c# - 使用 NoSQL DB 作为 FileStorage 的建议,以及优点和缺点

我们正在评估静态文件存储(托管在多个地理位置)的替代方案。我们在Microsoft.NET平台上(C#、ASP.NET、WEBAPI、SQLSERVER)我们想在任何NoSQL数据库上存储数字Assets,主要是二进制(AI、PSD、JPG、PNG、PDF、XLS、DOC...)文件。对于图像文件,它可以包含缩略图(小尺寸)到原始艺术作品(大文件:范围从300MB到超过1GB)。缩略图会出现在网页上,但原件将作为附件提供,并带有编辑选项(用户可以下载原件并使用相应的程序进行编辑并更新版本)。每个缩略图和原件需要存储多个版本。我们不会在第3方平台(如AmazonS3、Azure)和CDN

mongoDB 作为 Grails 应用程序的文件存储

我最近发现需要在我的应用程序中存储更多的文件,因为用于托管应用程序的PaaS平台提供了mongo,所以我想使用它。然而,因为我对mongo非常缺乏经验,所以我几乎不知道mongo相关插件和grails工具的当前状态。我应该使用什么?因为我想在SQL数据库中保留域类并仅使用mongo来存储相关文件(在这种情况下,它主要是一堆与域实例相关的PDF和文本文档),mongoDBORM[1]插件似乎太“重”.不幸的是,mongoDBORM可能是目前唯一处于活跃开发中的grailsmongo插件。简而言之,为此目的最好的插件/库工具集是什么?我发现最符合我需要的东西是grails-mongo-fi

javascript - Node.js/Mongodb/GridFS 在上传时调整图像大小

我正在使用Node.js/Express/gridfs-stream/multyparty使用流将上传的图像保存在MongodbGridFS中。工作正常。现在我想在存储到数据库之前将图像“规范化”(调整大小)为某种标准格式。我可以使用gmhttps://github.com/aheckmann/gm并有流媒体,但我必须安装nativeImageMagic(不是一个选项)或使用lwip之类的东西https://github.com/EyalAr/lwip并有一个“纯Node”设置,但我无法进行流式传输那么有没有一种解决方案,可以在不安装外部库的情况下,实现请求->调整大小->存储到Gri

ruby-on-rails - MongoDB 的 GridFS、Rails 3、X-Sendfile 和 ACL,操作方法?

我有一个Rails3项目,可以上传/下载文件,具有访问权限(用户有很多文件,只能读/写他自己的文件)。如果我将我的文件存储在经典文件系统上,我可以在我的Rails应用程序中检查对文件的访问权限,然后使用X-Sendfileheader重定向到该文件(如果用户具有访问权限)。这样,用户永远无法未经许可访问文件,下载速度也很快。我能否使从GridFS下载文件的速度与X-Sendfile一样快,并省去通过rails/rack传输文件的麻烦?通过rails/机架将它们用管道输送会非常慢吗?我能否使从GridFS下载文件的速度与X-Sendfile一样快,并跳过通过rails/rack传输文件的

MongoDB:获取 GridFS 中可用的存储桶列表?

我正在为MongoDB创建一个基于Web的查看器,并想列出GridFS中可用的存储桶。除非我得到存储桶名称,否则我将无法列出存储桶中包含的文件。我搜索了mongo-java文档,但找不到任何用于获取存储桶名称的API。是否有可用的JavaAPI或替代解决方案来获取存储桶名称列表? 最佳答案 我认为没有直接的方法来获取存储桶列表。这通常不是必需的,因为您必须明确指定存储桶,所以您通常进入数据库时​​知道要查找什么。一个有点笨拙的解决方案是通过检查集合名称来做这样的事情(当然,如果有人碰巧标记了几个集合“.chunks”和“.files

java - Vaadin上传组件——直接上传到mongo仓库

我想在我的网络应用程序中使用vaadin上传组件,并以gridfs格式直接将文件上传到mongodb。我当前的实现使用一个临时存储位置来首先上传文件,然后存储在mongo中转换为gridfs。这是我的上传组件代码:我已经实现了Receiver接口(interface)方法recieveUploadprivateFilefile;privateStringtempFilePath;publicclassHandleUploadImplextendsCustomComponentimplementsUpload.SucceededListener,Upload.FailedListener

Mongodb Gridfs 减少图像大小

我正在使用node.js和mongodb开发类似facebook的应用程序。我已经能够成功地将图像文件上传到GridFS并使用node-mongodb-native驱动程序wiki的精彩示例检索它们。图像的最大使用将作为缩略图,所以我从各种SO帖子中了解到,同时保留大尺寸版本和小尺寸版本将是最快的解决方案。所以我的问题是如何创建同一图像的不同大小的副本。许多这样的问题已经被问到像MongoDBGridFSstoremultiplesizesofimageoruseontheflyresizing这样的问题。但是没有人真正回答如何更改大小。在mongoshell中,我可以在fs.chun

java - 无法将 BasicDBObject 转换为 [B

我在mongodb数据库中有以下gridfs:db.outputFs.files.find(){"_id":ObjectId("000000000000000000000001"),"chunkSize":261120,"length":232,"md5":"42290309186cc5420acff293b92ae21d","filename":"/tmp/outputFs-01.tmp","contentType":null,"uploadDate":ISODate("2015-04-13T13:50:48.259Z"),"aliases":null,"metadata":{"es

c# - Mongo 'find' 方法不适用于 DateTime.MinValue

我正在使用Mongo2.2.3.3C#驱动程序将一些日期字段作为元数据写入GridFS。极端情况是DateTime.MinValue。这表示为Date(-62135596800000),表示自1970年1月1日(mongodoc)以来的毫秒数,即newDateTime(1970,1,1).AddMilliseconds(-62135596800000)在C#语法中。到目前为止一切都很好。当查询不同的日期值db.fs.files.distinct("metadata.lastWriteTimeUtc")时,我在ISODate("yyyy-MM-ddTHH:mm:ss.fffZ")格式。然