扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:zh 来源:赛迪网 2007年8月26日
关键字: SQL Server SQL Server 各版本 图象文件 数据库
问:在SQL中应避免使用哪种格式的存储图象文件?
答:在大型的二进制对象,或BLOBs中, SQL Server中可以用作不同用途的任意数据对象。 一种可能的应用是用BLOBs存储图象数据。例如, 一个具有与特定物件相称的数据记录的网站包含一个物件图象的图表。一些程序员为数据库能存储各种数据的便利和轻捷方式所吸引。
虽然这听起来是一个极好的做法, 但实际上并不是非常好的方法, 有几个理由:
第一,投入如此多的数据库处理资源和内存代宽将图象前后传送影响数据库的整体性能。图象不一定要存到数据库里, 但一般的通用数据需要存到数据库里。为数据库留出确实需要的空间越多越好。
第二,在每个安装好的Windows服务器都有非常强劲的分层数据库, 其设计是很明确地存储和复制大量的大数据-特别是图象数据。这称为NTFS文件系统。Windows已经具有很多系统资源来专门存储和管理文件系统, 所以不利用其功能是不能理解的。在设定了适当的许可和安全措施后, 现成的文件系统是理想的手段来存储与数据库相关的图象。 不要再重复文件系统的工作。
第三, 在SQL Server 中储藏大容量的二进制数据会造成数据库管理问题和浪费空间。SQL Server以8K的页来分派数据, 而NTFS可以接受的最小数据段可以达到 512 字节。在SQL Server中存储大量图象会产生更多的浪费空间。SQL Server可以存储少于64字节的一堆二进制数据作为组成数据库的树形根结构的一部分, 但很少有图象会小于64字节。另外, 备份和恢复单一的可能会增长为好十亿字节的数据库将比备份个别文件会遇到更多的问题和耗费更多的时间。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者