压缩Sql Server 2k8 R2中的文本字段

时间:2011-04-05 01:22:31

标签: sql-server sql-server-2008

所以我有一个应用程序,它在SQL Server 2008 R2的文本字段中存储了大量文本。我每天要添加大约5000条记录,而且这种情况会增长。字段中的数据量可以介于4 KB和100 KB之间。

我可以将字段更改为blob字段并在其中存储字节流(例如压缩文本),但我想知道是否有任何压缩选项可以在SQL Server 2k8中使用(也许是设计的东西)用于存储大量文本?)我可以使用SQL Server开箱即用?

谢谢

3 个答案:

答案 0 :(得分:3)

SQL Server 2008 R2有三种压缩选项:

这三个选项仅适用于数据(行),因此没有一个可以帮助处理大型文档(BLOB)。所以你最好的选择是在客户端压缩/解压缩(ZIP)。我不会轻易地考虑这个选项,这意味着你要对数据的可查询性进行权衡。

答案 1 :(得分:3)

除了行/页面压缩之外,您还可以使用FILESTREAM在压缩的NTFS驱动器上存储字段。但是你的档案并不是那么大,而且压力也是最好的选择。

答案 2 :(得分:2)

注意:

关于FILESTREAMS的兼容性:

  • FILESTREAM功能适用于所有版本的SQL Server 2008,包括SQL Server Express。
  • SQL Server Express数据库有4 GB的限制;但是,此限制不适用于存储在SQL Server Express数据库中的FILESTREAM数据。

然而you need 'Developer Edition' or 'Enterprise Edition'用于行/页面压缩。

alter table pagevisit rebuild with (data_compression=page);
  

Ms 7738,Level 16,State 2,Line 2   无法为对象启用压缩   'PageVisit'。只有SQL Server   企业版支持   压缩。