【发布时间】:2010-11-20 18:55:11
【问题描述】:
在我的网站项目中,我需要上传最终用户的 pdf 文件并保存。我猜每 3 个月会收到大约 2000 个 pdf 文件,每个 pdf 大小为 2MB。 什么是最好的解决方案?将文件保存在硬盘中(在文件夹中)并将文件地址保存在数据库中将文件直接保存在数据库中的blob字段中(MySQL)
RGDS
【问题讨论】:
标签: mysql database pdf filesystems
在我的网站项目中,我需要上传最终用户的 pdf 文件并保存。我猜每 3 个月会收到大约 2000 个 pdf 文件,每个 pdf 大小为 2MB。 什么是最好的解决方案?将文件保存在硬盘中(在文件夹中)并将文件地址保存在数据库中将文件直接保存在数据库中的blob字段中(MySQL)
RGDS
【问题讨论】:
标签: mysql database pdf filesystems
将大量二进制数据保存为 BLOB 并不是一个好主意,因为与使用常规文件系统相比的好处微乎其微,而且 DBMS 的负载也增加了。将文件存储在磁盘上并将文件名存储在数据库中是一个更好的主意。
要记住的一件事是避免将所有文件放在单个目录中(这样做会在访问文件时减慢文件系统的速度)。将它们放入子目录并使用文件名的前几个字符作为子目录的名称。
【讨论】:
我认为一个好的经验法则是决定哪种资源对您来说更便宜,磁盘空间还是内存。如果晚于基于 db 的解决方案,则使用文件系统。
话虽如此,在 MySQL 中存储 2MB pdf 文件作为 BLOB 存储的想法听起来并不那么有效。
【讨论】: