【读书笔记】MongoDB管理与开发精要(2)
GridFSGridFS是一种将大型文件存储在MongoDB数据库中的文件规范。
GridFS使用两个表来存储数据:
[*]files 包含元数据对象
[*]chunks 包含其他一些相关信息的二进制块
为了使多个GridFS命名为一个单一的数据库,文件和块都有一个前缀,默认情况下,前缀是fs,所以任何默认的GridFS存储将包括命名空间fs.files和fs.chunks。各种第三方语言的驱动有权限改变这个前缀,所以你可以尝试设置另一个GridFS命名空间用于存储照片,它的具体位置为:photos.files和photos.chunks。
files存储文件的基础元数据信息,字段说明:
[*]Filename: 存储的文件名
[*]chunkSize: chunks分块的大小
[*]uploadDate: 入库时间
[*]md5: 此文件的md5码
[*]length: 文件大小, 单位”字节”
MapReduce
db.runCommand(
{
mapreduce : ,
map : ,
reduce :
[, query : ]
[, sort : ]
[, limit : ]
[, out : ]
[, keeptemp: ]
[, finalize : ]
[, scope : ]
[, verbose : true]
}
);
参数说明:
[*]mapreduce: 要操作的目标集合。
[*]map: 映射函数 (生成键值对序列,作为 reduce 函数参数)。
[*]reduce: 统计函数。
[*]query: 目标记录过滤。
[*]sort: 目标记录排序。
[*]limit: 限制目标记录数量。
[*]out: 统计结果存放集合 (不指定则使用临时集合,在客户端断开后自动删除)。
[*]keeptemp: 是否保留临时集合。
[*]finalize: 最终处理函数 (对 reduce 返回结果进行最终整理后存入结果集合)。
[*]scope: 向 map、reduce、finalize 导入外部变量。
[*]verbose: 显示详细的时间统计信息。
页:
[1]