GridFS文件系统
1、浏览数据库
GridFS是mongoDB自带的文件系统他用二进制的形式存储文件,大型文件系统的绝大多是特性GridFS全可以完成。GridFS 用于存储和恢复那些超过16M(BSON文件限制)的文件(如:图片、音频、视频等)。
GridFS 也是文件存储的一种方式,但是它是存储在MonoDB的集合中。GridFS 可以更好的存储大于16M的文件。
GridFS 会将大文件对象分割成多个小的chunk(文件片段),一般为256k/个,每个chunk将作为MongoDB的一个文档(document)被存储在chunks集合中。
2、使用GridFS文件系统
GridFS 用两个集合来存储一个文件:fs.files
与fs.chunks
。
一个集合存储文件名和诸如大小这样的相关信息(称为元数据),另一个集合保存文件数据自身,以255KB为一块。每个文件的实际内容被存在chunks(二进制数据)中,和文件有关的meta数据(filename,content_type,还有用户自定义的属性)将会被存在files集合中。
fs.files与fs.chunks的默认名称空间是fs,如果希望存储不同类型的文件,就可以修改默认名称空间。
利用的工具
查看GridFS的所有功能:
cmd中输入:mongofiles
上传一个文件:
mongofiles -d foobar -l "E:\a.txt" put "a.txt“
查看GridFS的文件存储状态:
db.fs.chunks.find() 和db.fs.files.find()
存储了文件系统的所有文件信息。
以下是简单的 fs.files 集合文档:
{
"filename"