我的服务器上安装了32 it的RAM和SQL server 2014 Enterprise。我想尝试缓冲池扩展(BPE)对全文填充的影响。
我创建了一个表,并使用虚拟信息填充它,直到它达到100 of的大小。
首先,我尝试在BPE之前填充全文索引。花了三个小时。然后,我尝试使用配置在140 on上的BPE填充全文索引,该SSD分配了120 on内存。奇怪的是,全文索引的填充速度并没有提高得更快。
我使用以下查询在SSD上创建BPE,然后重新启动实例:
alter server configuration
set buffer pool extension
on ( filename = 'Z:\Cache.bpe' , size = 120gb )发布于 2017-12-16 15:34:19
如何检查Server的缓冲池使用情况(我想知道是否使用了BPE )?
您可以查询sys.dm_操作系统_缓冲器_描述符
例如:
SELECT CONVERT(NUMERIC(38, 2), COUNT(*) * 8 / 1024.0) AS cached_data_mb,
CONVERT(NUMERIC(38, 2), SUM(CONVERT(BIGINT, free_space_in_bytes)) / 1024. / 1024.) AS free_mb,
CASE database_id
WHEN 32767 THEN 'ResourceDb'
ELSE DB_NAME(database_id)
END AS database_name
FROM sys.dm_os_buffer_descriptors
GROUP BY DB_NAME(database_id), database_id
ORDER BY cached_data_mb DESC;我错过了任何服务器或缓冲池配置吗?
从文献资料看上去并不是这样的。没有太多的选择。
BPE是否影响FullText指数人群?
在一起使用两种功能的明显劣势不是很多人单独使用的。你可能得在这里做你自己的实验。
需要注意的一点是,BPE活动是单线程的,每个I/O仅限于一个8K页面。这可能会使他们对全文无效。
我更愿意在服务器中添加适当数量的RAM。
https://dba.stackexchange.com/questions/193293
复制相似问题