如果对于医院等类似机构,存放的个人照片或者其他的影像资料较多,mongodb数据库性能和功能上是否合适呢?
收起小于16MB的文件可以直接存在document里面(BinData)。大于16MB的使用GridFS存放,文件会被切分成255kB的chunk,在GridFS里面除了原文件的集合,还有一个集合用来存放metadata。
注意:在GridFS中,由于文件是被切割成chunk后存入,如果有文件update的场景,不能保证整个文件的原子性;变通的方法是保存多个版本的文件,在文件写入完成后,将metadata指向最新的版本。