存储二进制或图像文件的最佳方式是什么?
- 数据库系统
- 文件系统
请你解释,为什么?
最佳答案
没有真正最好的方法,只有一堆权衡取舍。
数据库专家:
1. 在集群环境下更容易处理。
2. 不依赖文件服务器等额外资源。
3.负载均衡环境下无需设置“sync”操作。
4. 备份自动包含文件。
数据库缺点:
1. 数据库的大小/增长。
2. 根据数据库服务器和您的语言,可能难以放入和检索。
3. 速度/性能。
4. 根据数据库服务器的不同,上传和导出文件时需要进行病毒扫描。
文件专家:
1. 对于单一网络/单一数据库服务器安装,速度很快。
2. 易于理解的文件操作能力。换句话说,如果磁盘空间不足,很容易将文件移动到其他位置。
3. 文件处于“静止状态”时可以进行病毒扫描。这使您可以利用扫描仪更新。
文件缺点:
1. 在多网络服务器环境中,需要一个可访问的共享。哪个也应该集群以进行故障转移。
2. 处理文件访问的附加安全要求。您必须小心网络服务器和/或共享不允许文件执行。
3.事务备份必须考虑文件系统。
上面说过,SQL 2008 有一个叫做 FILESTREAM 的东西,它结合了两个世界。您上传到数据库,它透明地将文件存储在磁盘上的目录中。检索时,您可以从数据库中提取;或者您可以直接转到它在文件系统上的位置。
关于database - 存储二进制或图像文件的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2028683/