Posts Tagged ‘facetedsearch’

Yes, Faceted Search for Mobile is Possible

Wednesday, May 12th, 2010

Faceted Search is recognized as a powerful search experience enhancement, easy enough for even novice users to filter large result sets.  As I’ve seen the increasing importance of mobile computing, I’ve struggled with how to fit facets on smaller mobile screens.  You see, facets usually belong on the left of search results, but I simply can’t see how to fit the facets there.  While some websites show facets above results, I can’t recommend this either as it would push down the all-important search results.

Luckily, as I investigated the excellent auto-complete implementation by MarkLogic, I had an inspiration.  You see, MarkLogic implemented their auto-complete directly off facet names and facet values.  And while this can be a great user experience on standard browser-based search experiences, in a mobile context the value is exponentially higher for two reasons:

  1. As mentioned above, screen real-estate is limited on mobile.  Auto-complete takes no extra screen real-estate since it floats and only shows as the user types.
  2. Typing on mobile devices is often more awkward, so a great auto-complete experience can save keystrokes.

Here’s a video I created using our Unified Search Platform which shows the user experience I’m describing:

A Wake-up Call: Google, support Faceted Search!

Monday, January 11th, 2010

I believe confusion persists about whether Google’s search appliance truly supports faceted search.  First I’ll point out that Google Labs has two projects which claim to add faceted search features to the GSA (more details on those below).  Those projects probably work for some and looked tempting when we first found them, but as we dug deeper we found they are what I’ll call “bolt-on” faceted search, which simply isn’t scalable for most of our clients, because we’ve only seen two approaches to “bolt-on” faceted search when a search engine doesn’t provide native support:

  1. Run a separate query for each facet value – this multiplies the number of queries by the number of facet values, obviously adding significantly more, usually too much more, search engine traffic
  2. Pull a large set of results and calculate facets on that set – this approach obviously cannot provide an accurate list of facets or matching results for each facet across the entire result set when there are too many results to reasonably pull all matching results into the “bolt-on” code to run the calculations

In both cases the core problem is that the search engine doesn’t offer native support for faceted search.  Faceted Search is one of those features that simply must be supported by the engine in order to provide accurate, scalable facets for high-volume or high-traffic enterprise search implementations.

So the simple fact is: as of version 6, Google Search Appliance does not offer native support for faceted search.  As I said, there are two “bolt-on” solutions which we can’t recommend, and here’s why:

  1. gsa-faceted-search takes approach #1 above, running a query on the search engine once for each facet value. You can see this in code-snippet-1.1.txt on lines 75 and 79. For the example they provide, that would multiply your search engine traffic by 11x whatever traffic you had before adding this feature. For our customers it’s not unusual to have over 50 facet values, so that would require the search engine to handle 50x the normal traffic.
  2. 41:    for (var i in facetDefinition) {
    . . .
    75:        xmlDoc.load(countURL);
    . . .
    79:            xmlhttp.open("GET", countURL, false);
    
    
  3. GSA Lab’s parametric project takes approach #2 above (Pull a large set of results and calculate facets on that set).  If you look at googleParametric.js, you’ll see that line 168 only requests the first 100 results to calculate its values, so you’ll never see a facet value unless it’s attached to one of the first 100 results, and the counts for each facet are not accurate because they can only know how many of the first 100 results matched that facet.
  4. 168:   var url = "http://" + mTGSAHost + "/search?" + mTURL + "&num=100";
    

This problem is not unique to Google.  I’ve heard many Ultraseek implementers brag about their success with creative ways to “bolt-on” faceted search.  But every time I’ve dug deeper, I’ve found one of the two approaches listed above, either not scalable or not accurate.  Luckily, Ultraseek 6 added IDOL (which has long had native support for facet search) under the hood, so Ultraseek customers can now upgrade and have scalable and accurate faceted search.  We’ve helped many customers through this process, and been very pleased with the outcome.

Why Google has not yet woken up to faceted search, I cannot explain . . . for more hand-wringing on that topic, see Daniel Takenlung’s post.  Hopefully for their tens of thousands of Google Search Appliance customers, Google will resolve this issue soon.

Does Ebay beat Google at its own Game?

Tuesday, October 7th, 2008

I just read a New York Times article recommending we use Google for everything including searching Ebay, and while I can see the reasoning, I can see at least one critical feature Google must add before I can recommend it as the ideal search experience: Faceted Search.

When our Enterprise Search clients think of improving the search experience for their users, they want to learn from the best, and frequently they look first to get great ideas from Google. Nobody questions that Google is the King of Web Search. Google has captured our hearts and our clicks, and profited tremendously. But is the Google search experience the one to copy for Enterprise Search?

I find it very interesting that Ebay has Faceted Search, yet Google still doesn’t. Why does Google omit this feature? I can see many reasons…but then I could see many reasons they omitted suggest as a default feature, and they surprised me last month and added it to their default search box. So Google may soon surprise us and add Faceted Search, but for now I will keep telling clients that the Ebay search experience is a better one to copy than Google’s.

The first step on Ebay is what we all expect: enter a few keywords, and get back the best results the engine could find based on those keywords. The second step on Ebay is not found on Google: click the most appropriate category link on the left to narrow results to what you were really looking for (box A below).

You’ll also notice several other very handy ways to filter there on the left: by price, new/used, auction/buy it now (box B above). But these filters apply to any product on Ebay. Now comes my favorite feature of all when you click on the “Laptops & Notebooks” category, you now get filters especially helpful for narrowing to exactly the laptop and notebook you’re looking for, like screen size, processor speed, and memory:

The fundamental difference here is that Ebay is working with more structured information, whereas Google is working with mostly unstructured information. The better the structured information, the better the Faceted Search experience. Of course, Google is expert at taking unstructured information and extracting structure, as best shown by the amazing features on Google Map’s Local Search. If only they would do the same for Froogle, it could quickly be as good, or better, than the search experience on Ebay.

I know the search experience on Ebay isn’t perfect, none is…but with the powerful Faceted Search offered by Ebay, we have a much higher chance of finding what we’re looking for. Don’t your users deserve the same? Next time you’re contemplating improvements to your one of your organization’s search interfaces, don’t forget to include Faceted Search.