EnglishChinese

Why Not Use "All Terms" Queries?

Google, Yahoo!, and MSN all default to matching all of your search terms, but Ultraseek does not. Why? What do you say when your users want Ultraseek to “work like Google”?

In most cases, it is good for an enterprise engine to behave like the WWW engines because users can intuitively transfer their searching skills. But, this is a case where doing the right thing is more expensive for the WWW engines, and more reasonable for enterprises.

This is a scalability vs. usability tradeoff. Requiring all terms to match allows the engine to run faster, but risks giving no results at all if the user makes even a minor mistake. A spelling error on one word means no matches, and that means no hits (assuming that your pages have good spelling!). This can be a serious issue. About 10% of all search queries contain some sort of spelling error.

Why is “all terms” matching faster? It’s faster because the search engine needs to process significantly less data. For a multiple-term query, requiring all terms to match means fewer matching documents. The engine handles shorter lists of matches, which uses less memory and CPU. In a WWW search engine, defaulting to “all terms” requires less hardware for search, saving a lot of money in hardware costs.

Why is “any term” matching better? It’s better because people frequently misspell and mistype queries. With an “all terms” search, one mistake can mean no results at all. Most users are completely stymied when they don’t get results. They may try the same query again, or they may just leave.

With “any term” matching, a single error still gives results. It may even give the right results. A search for Watler Underwood will still match Underwood even though Watler is a misspelling. If there is only one Underwood on the site, the error doesn’t even need to be corrected.

What if your manager insists on “all terms”? First, look at your search logs and reports. Use your percentage of “no hits” queries as a baseline (it should be around 10% or below). You can run an experiment, changing the default to “all hits” then check the new percentage of no hits. Or, you can run an experiment with your top 100 or 200 queries. Choose the ones which are obvious misspellings, and try them in “all hits” mode to see if the results are worse.

If you do change to “all hits” mode, you will be very dependent on the quality of the spelling suggestions. You will need to actively manage those, adding Quick Link suggestions for common misspellings which show up in your query logs.

To change the default to “all hits” mode, go to the Interface>Query page in the admin UI, choose the Style you want to modify and change the “Default required search terms” setting.

Walter Underwood Ultraseek Principal Software Architect

Posted June 24, 2005 08:04 AM by editor
Category: Usability

Categories

Customizing

Indexing

Searching

Usability

User Stories

Archives

January 2006

December 2005

November 2005

October 2005

September 2005

August 2005

Recent Entries

More Quality Quick Links

Quick Links in Action

Win a Limited Edition Ultraseek T-shirt

Tuning the Search Relevance on Your Site?

'Richer Suite of Functionality'

Resources

DOWNLOAD ULTRASEEK NOW!

XML   RSS Feed