SQL Server 2008 FileStream的最大行数


8

我们使用文件流的Microsoft SQL Server 2008(SP2) - 10.0.4000.0(X64)和Windows Server 2008存储数百万文件。由于有数百万个文件,所有文件都被分组为100个文件组,并依次一个接一个地插入另一个文件组。现在,每个文件组中大约有1.5万个文件,预计很快会增长到2万个文件。所以我们想知道一个文件组必须具有最大行数限制才能达到最佳性能,或者在操作系统侧是否存在最大行数限制以达到最佳性能,因为我们要在单个文件夹中存储或存储约20K个文件?

对正确资源的任何建议也将非常有帮助。

我有一个指向msdn博客的链接,其中指出

4.检查FILESTREAM目录容器是否单独包含不超过300,000个文件,因为NTFS性能下降可能是一个问题,尤其是在启用8.3文件名生成时。

Msdn博客链接

谢谢。


4
好的,一个提示,永远不要尝试在Windows资源管理器中导航到该文件夹​​。
亚伦·伯特兰

1
我最近一直在用一些淫秽的文件填充NTFS文件夹(我的随机宠物项目)。Explorer中的性能大约为1M,但大多数文件系统操作都可以正常进行,直到超出文件系统缓存为止。20k文件应该没有问题。
ligos

亚伦,出于安全考虑或误删除关注点而无法导航,还是有其他原因不这样做?
cakiran 2012年

Answers:


3

实际上,您可以在文件组中放入任意数量的文件。

基本上,SQL Server中包含文件组功能,因此您可以正确地归档组织数据并可以高效地查询数据。它还取决于服务器上的硬盘空间和用于数据存储的RAID模型的配置。


MSDN博客之一建议以下最佳做法。4.检查FILESTREAM目录容器是否单独包含不超过300,000个文件,因为NTFS性能下降可能是一个问题,尤其是在启用8.3文件名生成时。LINK - blogs.msdn.com/b/blogdoezequiel/archive/2011/02/11/...
cakiran

0

我们还管理文件流中的大量文件。一个文件组(目录)中有1600000个文件时,对文件流数据的读写操作非常慢。最多约1000000个文件,我在使用SQL和C#时没有遇到问题。但是那时文件系统非常慢。

还有一个建议。如果一个文件组中有很多文件,则在备份过程中可能会遇到问题。我们的系统挂断了。http://support.microsoft.com/kb/2550552帮助我们。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.