sys.dm_fts_memory_buffers

更新日期: 2006 年 12 月 12 日

返回属于特定内存池的内存缓冲区(作为全文爬网或全文爬网范围的一部分使用)的有关信息。此动态管理视图可用于确定全文填充的共享内存使用量。

列名 数据类型 说明

pool_id

int

已分配的内存池的 ID。

0 = 小型缓冲区

1 = 大型缓冲区

memory_address

varbinary(8)

已分配的内存缓冲区的地址。

name

nvarchar(8000)

执行该分配的共享内存缓冲区的名称。

is_free

bit

内存缓冲区的当前状态。

0 = 繁忙

1 = 空闲

row_count

int

该缓冲区当前正在处理的行数。

bytes_used

int

该缓冲区中正在使用的内存量(字节)。

percent_used

int

已分配内存已用的百分比。

权限

需要对服务器具有 VIEW SERVER STATE 权限。

物理联接

此动态管理视图的重要联接

关系基数

关系

dm_fts_memory_buffers.pool_id

dm_fts_memory_pools.pool_id

多对一

示例

A. 返回所有活动填充的共享内存使用量。

以下示例返回所有活动全文填充的共享内存使用量。

SELECT SUM(pools.buffer_size) FROM sys.dm_fts_memory_pools pools
    JOIN sys.dm_fts_memory_buffers buffers 
    ON (pools.pool_id = buffers.pool_id)
    WHERE buffers.is_free = 0

B. 确定全文共享内存使用量的效率

以下示例返回所有活动全文内存缓冲区正在使用的内存的平均百分比。

SELECT AVG(percent_used) AS "memory usage efficiency" 
    FROM sys.dm_fts_memory_buffers 
    WHERE is_free = 0

请参阅

参考

动态管理视图和函数
与全文搜索有关的动态管理视图

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2006 年 12 月 12 日

新增内容:
  • 添加了示例。
更改的内容:
  • 修正了 is_free 字段的说明。