把图片存储在 mongo 还是存储在磁盘好

2015-02-07 14:10:05 +08:00
 w3cc

最近和同事讨论,把图片存储在mongo还是存储在磁盘的问题,讨论一下,感觉大家说的都不是很权威,求大神们指点

9436 次点击
所在节点    Python
19 条回复
netsail
2015-02-07 14:35:42 +08:00
磁盘方便。mongo适合小量存放
facat
2015-02-07 14:49:57 +08:00
存mongo和存磁盘有什么区别?
GeekGao
2015-02-07 16:00:04 +08:00
如果是大量图片,大小不定。建议磁盘,存取效率会更好些同时方便做CDN
Actrace
2015-02-07 17:14:52 +08:00
文件系统是干什么用的。。。
数据库是干什么用的。。
GuangXiN
2015-02-07 18:02:32 +08:00
@Actrace 微软曾经想把文件系统做成数据库
9hills
2015-02-07 18:08:55 +08:00
规模大的话,还是Object存储系统靠谱,这是业界标准做法
zyAndroid
2015-02-07 18:14:16 +08:00
量很小的话,存mongo 可以。但生产环境下,还是建议直接存到类似七牛或者又拍这类第三方存储上比较好,自己就不需要维护 mongo 之类的东西了。

我们之前有些图片用 mongo 存,前几天完全迁移到了第三方存储上去了,当时干掉服务器上的 mongo 的时候,感觉一身轻松!
zhicheng
2015-02-07 18:17:20 +08:00
文件尺寸都很小的,比如头像之类。可以放在 KV 里边,但不推荐放在 mongodb 里。如果文件尺寸都很大的,比如像册,必然不能放到 DB ,要不然坑死你。
aszxqw
2015-02-07 18:19:17 +08:00
图片应该存储在分布式文件存储系统,比如: https://github.com/chrislusf/weed-fs
msg7086
2015-02-07 18:29:26 +08:00
@aszxqw also glusterfs
aszxqw
2015-02-07 18:36:21 +08:00
@msg7086 还是weed简单易用爽一些
oott123
2015-02-07 18:44:15 +08:00
你有对图片内容检索的需求么?
显然是存在 fs 里。
至于分布式还是不是分布式,那就看场景了。
missdeer
2015-02-07 19:50:20 +08:00
@GuangXiN 于是失败了
Nixus
2015-02-08 14:16:38 +08:00
mysql的话,是小于50kb,就存数据库,大于50kb就磁盘
pubby
2015-02-08 15:01:53 +08:00
@aszxqw 有什么要注意的地方吗,稳定性如何?

也打算用weed-fs,主要看中结构简单,部署方便。应用场景是 读取>>写入,很少删除。
aszxqw
2015-02-08 15:18:07 +08:00
@pubby
没什么需要注意的地方,正确使用即可。如果能抽空阅读一下源码,当成白盒使用最佳。
或许这篇文章能帮上你: http://yanyiwu.com/work/2015/01/09/weed-fs-source-analysis.html
ohhe
2015-02-08 21:52:50 +08:00
我用mongo存100M文件,存了400G了。
目前还没有发现有什么不妥
secondwtq
2015-02-08 22:19:40 +08:00
为什么我看到第一反应是电脑里存的几个G的QQ表情...
uniudy
2015-02-09 02:27:11 +08:00
考虑过用云存储吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/169029

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX