请解释GridFS文件集合中md5键的用法。
在mongodb GridFS引用中,它说:"从filemd5 API返回的MD5哈希。这个值具有String类型。",这个哈希需要什么?
几周前我也试图理解这一点,但我仍然有一些疑问,但我向您报告我在这里读到的
GridFS规范中内置了一种安全模式。当你保存一个文件,然后在服务器上创建MD5哈希。如果您保存文件处于安全模式时,将在客户端上创建MD5进行比较使用服务器版本。如果两个散列不匹配,则出现异常将被提起。
我想这是一种检查,看看文件是否更新正确[?]
编辑:在mongodb官方网站上也发现了这个短句,看看吧http://docs.mongodb.org/manual/reference/command/filemd5/
我使用md5
字段来确保只有在文件发生更改时才更新文件,而无需从数据库中获取整个文件并进行比较。
我执行db.col_name.find({id: myid}, {md5: 1})
,所以我只获取md5
字段,计算新文件的md5,并仅在需要时更新。
获取整个文件并进行完整的数据比较可能非常缓慢,而且流量昂贵。