How to increase relevancy of FAST search results for "Phrase" query

Fast Search for SharePoint 2010 indexes data fed to the system during crawl. on query these indexes are used to retrieve relevant results. However, when the indexed data is very high and "Phrase" search is used we may not get as relevant results as expected.

For example, in indexed data few words like "ABC" are very common, phrase searches involving these words may show less relevant results than expected. Suppose we search with ABC XYZ or "ABC XYZ" or "XYZ ABC" , ideally we should get different result set based on the existence of these phrases in indexed data. However, "Phrase" search behavior changes for very frequent indexed keywords like ABC and it treats the Phrase "ABC XYZ" as ABC AND XYZ.

Expected behavior can be ensured by changing PositionStopWordThreshold and StopWordThreshold
values for RankProfile in FAST admin node. New value should be changed based on the specific scenario of the target farm and volume of data. Default value for Rank profile are listed below:

Rank Profile parameter

Original value

PositionStopWordThreshold

20000000

StopWordThreshold

2000000

Follow this msdnlink for details.

 In order to do the changes, need to
execute below in FAST Server management powershell:

$RankProfile
= Get-FASTSearchMetadataRankProfile -Name <RankProfileName>

$RankProfile.StopWordThreshold
= <new integer value>

$RankProfile.PositionStopWordThreshold
= <new integer value>

$RankProfile.Update()             

Restart 
FAST services.

There are few downside to these changes and must be analyzed before the changes( Follow this msdnlink for details)

  • Increase in CPU usage
  • Slower Search Performance