V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
w3cc
V2EX  ›  Python

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

  •  
  •   w3cc · 2015-02-07 14:10:05 +08:00 · 9212 次点击
    这是一个创建于 3372 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

    也打算用weed-fs,主要看中结构简单,部署方便。应用场景是 读取>>写入,很少删除。
    aszxqw
        16
    aszxqw  
       2015-02-08 15:18:07 +08:00   ❤️ 1
    @pubby
    没什么需要注意的地方,正确使用即可。如果能抽空阅读一下源码,当成白盒使用最佳。
    或许这篇文章能帮上你: http://yanyiwu.com/work/2015/01/09/weed-fs-source-analysis.html
    ohhe
        17
    ohhe  
       2015-02-08 21:52:50 +08:00
    我用mongo存100M文件,存了400G了。
    目前还没有发现有什么不妥
    secondwtq
        18
    secondwtq  
       2015-02-08 22:19:40 +08:00
    为什么我看到第一反应是电脑里存的几个G的QQ表情...
    uniudy
        19
    uniudy  
       2015-02-09 02:27:11 +08:00
    考虑过用云存储吗?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1627 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 16:15 · PVG 00:15 · LAX 09:15 · JFK 12:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.