Fuzzy Search

Fuzzy search allows you to find words that are not spelled correctly. IDOL Server finds words that are spelled similarly to the search term. To run a fuzzy search, you use the DREFUZZY query operator in the Text parameter, followed by the search term in parentheses. For example: DREFUZZY(elephent).

IDOL Server does not create extra index terms for fuzzy searches, so it does not increase the index size. However, fuzzy searches require a lot of extra processing, so they are slower than normal queries.

Fuzzy Matching algorithm

The fuzzy algorithm uses a proprietary model to match correct documents even when spelling mistakes occurred in the query Text. It determines the closest matching words by analysis of common errors such as:

For example, a common error is putting one letter when it is supposed to be a double letter.

WEDING is a closer match to WEDDING than WELDING, even though in both cases legacy algorithms marked them all as one step apart.

Similarly, vowel errors are more common than consonants.

Someone spelling BERMINGHAM is more likely to mean BIRMINGHAM than BERLINGHAM, whereas legacy algorithms treat both as equally likely.

By default, the algorithm applies a dynamic threshold designed to give the most intuitive determination of whether a term matches or not. You can also give the operator an explicit distance to arrive at more controllable results.