2013-02-17 46 views
3

我最近遇到了在我的应用程序中存储更多文件的需求,并且因为PaaS平台用于托管应用程序提供了mongo,所以我希望使用它。mongoDB作为Grails应用程序的文件存储

但是,因为我对mongo很不熟悉,我几乎不知道mongo相关的插件和工具的当前状态是什么。我应该使用什么?由于我想在SQL数据库中保留域类,并且只使用mongo来存储相关文件(在这种情况下,它主要是一堆与域实例相关的PDF和文本文档),所以mongoDB ORM [1]插件似乎太“沉重” 。不幸的是,mongoDB ORM可能是目前正在积极开发的grails中唯一的mongo插件。

总之,什么是最好的插件/库工具集为此目的?最接近我需要的东西是grails-mongo-files插件[2],它可能有点过时,没有进一步的开发。到目前为止,似乎我将不得不使用mongo的java驱动程序(或gmongo wrapper),并自己编写一些存储服务和taglib(不需要什么坏事)。

[1] http://grails.org/plugin/mongodb

[2] https://github.com/quirklabs/grails-mongo-file

+1

'的Grails - 蒙戈 - file'看起来非常好 – 2013-02-17 05:19:34

+0

事实上,不幸的是它有一个旧版本的MongoDB ORM作为依赖和似乎已经过了至少一年了。否则,它会按照我的需要进行 – pseudo 2013-02-17 12:26:21

回答

0

也有mongodb的GridFS的插件。 http://grails.org/plugin/mongodb-gridfs

有一件事要考虑的是,gridfs有效地对mongo进行两次调用,一次是检索文件信息,另一次是检索文件。所以如果你的文件低于16兆字节,它可能不太合适。

这里是,如果你想绕过插件如何手动执行此操作后 - http://jameswilliams.be/blog/entry/171

+0

是的,该文章非常有用(我已经看到了它)。关于这种效率,这是一个棘手的部分,因为我几乎不知道这些文件的大小与不同项目相关的文件大小。大多数情况下,它只会包含一堆pdf和一些小型档案,但也可以上传更大的文件。另一方面,这不是一个关键的系统,效率低下可能不会伤害我们。我也会看看那个插件坦克 – pseudo 2013-02-18 13:05:31

相关问题