哪种方法更好?有哪些优点和缺点?
在我看来,在数据库中存储图像的好处是:
缺点可能是:
你同意上述观点吗?
目前我所做的是将数据库中的小图像(如头像和缩略图)存储为BLOB,并在文件系统中存储大图像,如全尺寸照片或壁纸。你认为这是一个好方法吗?如果是,是否有一些幻数(文件大小)决定它是否仍然有利于将图像存储在数据库中?如果没有,我应该将所有图像存储在一个地方(数据库或文件系统)吗?
答案 0 :(得分:2)
我在尝试将图像存储在数据库中时遇到了严重的性能问题。数据库大小变得更大,对BLOB表的查询变得慢得多。它还会增加代码的复杂性,因为您必须使用非标准数据访问来检索图像,并且必须配置延迟加载。它还显着增加了备份和复制时间。
存储文件更容易处理,您可以轻松备份和仅同步已更改的文件。
基本上我从不尝试将除元数据之外的任何内容填充到数据库中。
答案 1 :(得分:1)
IMHO二进制数据无处于数据库中。 (当然这个规则可以例外)