互联网服务MongoDB

什么样的场景下才适合选用mongodb数据库,如果我所存的数据多为图片或者影像,mongodb数据库是否合适?

如果对于医院等类似机构,存放的个人照片或者其他的影像资料较多,mongodb数据库性能和功能上是否合适呢?显示全部

如果对于医院等类似机构,存放的个人照片或者其他的影像资料较多,mongodb数据库性能和功能上是否合适呢?

收起
参与9

查看其它 1 个回答TF的回答

TFTF技术总监上海锦木信息

小于16MB的文件可以直接存在document里面(BinData)。大于16MB的使用GridFS存放,文件会被切分成255kB的chunk,在GridFS里面除了原文件的集合,还有一个集合用来存放metadata。

  • 如果文件数量超过了OS文件系统的上限,可以考虑将这些文件存入MongoDB
  • 如果需要访问文件的部分内容,使用GridFS不需要将全部文件加载进内存,例如视频快进,定位到相应的chunk后,只加载那1个chunk视频就可以播放起来,剩下来在后台慢慢加载。
  • 借助MongoDB的复制集将这些文件在不同的节点(数据中心)之间进行自动的同步。

注意:在GridFS中,由于文件是被切割成chunk后存入,如果有文件update的场景,不能保证整个文件的原子性;变通的方法是保存多个版本的文件,在文件写入完成后,将metadata指向最新的版本。

IT咨询服务 · 2018-04-24
浏览2389
彬彬 邀答

回答者

TF
技术总监上海锦木信息

TF 最近回答过的问题

回答状态

  • 发布时间:2018-04-24
  • 关注会员:3 人
  • 回答浏览:2389
  • X社区推广