【问题标题】:Using GridFS - Should it be on a separate DB?使用 GridFS - 它应该在单独的数据库上吗?
【发布时间】:2012-01-31 02:46:47
【问题描述】:

我正在创建一个具有大量音频存储(TB 级)的网站,并且我希望使用 GridFS 进行分片,并能够轻松地在多台机器上扩展数据库。

我的问题是将文件放在单独的 mongo 数据库中会更好吗? mongodb 中会有大量文档,我只是不确定当您开始使用 GridFS 部分进行分片时会发生什么。

谢谢!

【问题讨论】:

    标签: mongodb mongoose gridfs


    【解决方案1】:

    即使您将 GridFS 存储与其他集合保存在同一个数据库中,当您需要转移到分片时,您仍然可以选择对哪些集合进行分片(或不分片)。也就是说,如果您将它放在单独的数据库中,那么您可以更轻松地将其移动到单独的集群中——例如,您可以为您的“主”集合设置一个 3 分片集群,并且用于 GridFS(或您选择的任何其他配置)的 5 分片集群。

    关于 GridFS 集合的分片,请参阅the MongoDB docs on choosing a shard key for GridFS。通常,人们在files_id 上对chunks 集合(存储文件数据本身的位置)进行分片,以便同一文件的所有块都驻留在同一分片上。同样,请参阅文档页面了解更多详细信息。

    【讨论】:

    • 我们是否应该安装多个实例来选择不同数量的服务器?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-10
    • 2014-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-23
    相关资源
    最近更新 更多