架构缓存 (SQLXML 4.0)

在并行安装了 XML for Microsoft SQL Server 2000 Web Release 1、Microsoft SQLXML 2.0 和 SQLXML 3.0 的情况下,可以显式控制所有版本中的架构缓存,方法是使用以下注册表项:

Web Release 1:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SQLXMLX\SchemaCacheSize

SQLXML 2.0:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SQLXML2\SchemaCacheSize

SQLXML 3.0:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SQLXML3\SchemaCacheSize
注意事项注意

错误编辑注册表会严重损坏您的系统。 更改注册表项之前,建议您备份计算机中的所有重要数据。

有关并行安装的详细信息,请参阅 SQLXML 4.0 SP1 中的新增功能

架构缓存可极大提高 XPath 查询的性能。对映射架构执行 XPath 查询时,架构存储在内存中,并且在内存中生成所需的数据结构。如果设置了架构缓存,架构将保留在内存中,因此可提高后续 XPath 查询的性能。

可以通过在注册表中添加以上注册表项来设置架构缓存大小。

应基于可用内存大小和要使用的架构数量来设置架构缓存大小。默认的 SchemaCacheSize 大小为 31。设置的 SchemaCacheSize 越高,使用的内存则越多。因此,如果架构访问较慢,可以增加缓存大小;如果内存较少,则可以降低缓存大小。

出于性能方面的考虑,建议将 SchemaCacheSize 设置为大于您通常使用的映射架构数量的值。随着架构数量增加,当 SchemaCacheSize 小于所使用架构的数量后,性能便会降低。

注意注意

在开发期间,建议不缓存架构,因为这样会使对架构的更改在大约两分钟后才会反映在缓存中。