SQL Server全文搜索速度慢
很抱歉,我已经为全文搜索创建了目录:SQL Server全文搜索速度慢,sql,sql-server,Sql,Sql Server,很抱歉,我已经为全文搜索创建了目录: CREATE TABLE [dbo].[full_text]( [client_id] [int] NOT NULL, [file_id] [bigint] NOT NULL, [page_number] [int] NULL, [contents] [nvarchar](max) NULL, [ID] [int] IDENTITY(1,1) NOT NULL, CONSTRAINT [PK_full_text] PRIMARY KEY CLUSTERED
CREATE TABLE [dbo].[full_text](
[client_id] [int] NOT NULL,
[file_id] [bigint] NOT NULL,
[page_number] [int] NULL,
[contents] [nvarchar](max) NULL,
[ID] [int] IDENTITY(1,1) NOT NULL,
CONSTRAINT [PK_full_text] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
create fulltext catalog dd_full_text;
GO
create fulltext index on full_text(contents)
key index PK_full_text on dd_full_text with change_tracking auto
GO
我使用相同的查询进行测试:
SELECT *
FROM full_text
WHERE CONTAINS(contents, '"ban*" AND NOT "sab*"');
GO
最初的查询速度很快,但几分钟后进行相同的查询,速度会变慢。在这个测试中,我没有插入新行
请参阅此表:
响应时间ms
但我找不到解决方案。重新索引/重建后的速度有多快?服务器是否有足够的RAM和CPU?另外,是经过一段时间还是经过多次使用后,它开始变慢?如果我使用以下查询重建索引:alter fulltext catalog dd_full_text rebuild,我将在800毫秒内得到响应。服务器有足够的RAM和CPU来处理此请求;)一段时间后OCURR。但是服务器是否看到大量内存交换?可能是内存中的内容被取出并存储在慢速(er)磁盘上?非常感谢您的快速回答。我会仔细检查的,但我不这么认为。我们的生产服务器是在Azure中分配的。我们从来没有遇到过这样的问题。。。在本地服务器中工作得很好。如果它在本地工作得很好,但在Azure中不行-我会尝试联系支持人员,看看他们是否有一些指标/见解。