我有一个在SQLAzure数据库上使用全文索引的以下查询。
SELECT
*
FROM
{table} T
WHERE
CONTAINS(T.Column, @Search)
OR EXISTS(
SELECT NULL
FROM {anotherTable} AT
WHERE AT.Id = T.AnotherTableId AND CONTAINS(AT.Name, @Search))
如果我从SQL Management Studio运行它,查询运行速度非常快。但是,如果我从应用程序运行它,它与Management Studio一样快,但有时它会慢10倍(并且下一个查询再次快速)。
什么可能导致这种间歇性缓慢?
我在这里发现了一篇描述类似症状的帖子:Fulltext search slow SQL V12 Azure但没有确定的结果或建议。
答案 0 :(得分:0)
Azure SQL DB上的全文搜索以在SQL引擎和全文搜索过程之间共享资源的方式实现。
每次首次执行全文搜索操作时,都需要将资源分配给进程,因此执行需要一些时间。
我们正在努力确保这种体验尽可能无缝。
谢谢, 路易斯