Jai’s Weblog – Tech, Security & Fun…

Tech, Security & Fun…

  • Jaibeer Malik

    Jaibeer Malik
  • View Jaibeer Malik's profile on LinkedIn
  • Subscribe

  • Feedburner

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 40 other subscribers
  • Archives

  • Categories

  • Stats

    • 426,531
  • Live Traffic

Choosing the right search solution for your site

Posted by Jai on March 12, 2013

Effective search solution is the first step to provide relevant data to the end users for any eCommerce site. The right combination of marketing rules and corresponding technical capabilities of the solution put you closer to end customer inline with the target customer. In this article we will cover some of the different characteristics of a search solution which you need to focus upon while choosing a search solution for your site.

Your data

The requirements for the search solution vary from organization to organization and business to business. Each organization or domain have different variations of data. Some deal with small end user facing data and some have huge internal data. The common case of eCommerce sites is to store products data and making those available to the end customers with the intention to provide end customers the flexibility to search for the right content.

Search Solution Selection

Search Solution Selection

Search Solutions

Now a days there are quite some options available in market to choose from the search solutions, ranging from open source to commercial products.

Open source search solutions

Lucene is well know text search engine library and most of the products are built around the same. Some of the open search solutions based on the same are,

Solr: is open source enterprise search platform. has been in market for quite some time and has well proven record of serving many search sites.

ElasticSearch: is open source Distributed, restful open search solution. It has been catching up very fast and already serving many sites as search solution.

Commercial search solutions

There are many commercial search solution providers around, allowing you to start quickly. Complete search solution product, where you have more flexibility of customize the product mapping to your business requirements. Hosted search solution, to avoid overhead of maintaining the solution provide you search solution as service.

To name a few based on general site search or eCommerce site,

Lucidworks: is the development platform for building search solutions. It is based on apache lucene library and provide quick and fast hooks around the same.
FredHopper: is online marketing suite proving organizations different marketing benefits without worrying about the underlying search implementation.
http://www.websolr.com/
http://www.solrhq.com/
http://www.acquia.com/products-services/acquia-network/cloud-services/acquia-search
www.indextank.com
http://www.netaphorsearch.com/
http://www.artirix.com/
http://www.searchblox.com/
http://www.braveapps.com/search2/
http://www.freefind.com/

Characteristics

We will cover here some of the typical characteristics of a search solution which you should look while choosing the search solution that fits best to your requirements.

Technical Capabilities

Some of the typical technical capabilities of the search implementation you can compare to for any eCommerce site,
Full Text Search: Ability to do full text search on the data.
Auto Suggestion: Ability to suggest correct products/documents based on relevancy or configured criteria.
Results pagination and Count: Ability to allow pagination for site, to load only required data.
Separate product/document Configuration: Ability to allow separate configuration/Schema for different products.
Synonyms: Ability to integrate synonyms functionality for text for different locales to better fine tune the text search.
Stemming: Ability to automatically correct the similar words based on stemming functionality for different locales for the text search.
Spellchecker/Spell correction: Ability to auto correct the text search input to point user to right content.
Faceted Search: Ability of faceted search, to allow categorization of products and for navigational search functionality.
Hierarchical Facet Structure support: Ability to support hierarchical data for facet, which is the desired behavior for most of organization now a days.
Sorting on attributes: Ability to sort content based on different attributes of the products.
Product/Document Data Boost: Ability to boost specific product based on different criteria.
Elevate Search Query: Ability to elevate search query based on different marketing or business rules.
Versioning: Ability to store different versions of the product/document to serve the relevant one.
Product dependency: Ability to use product dependency for parent and child products allows you to control your data better for search.
Indexing strategy: Ability to select partial or full indexing of data without affecting the end users.
Real time updates: Ability to update documents nearly real time, which is critical for some eCommerce sites.
Integration hooks for data storage: Ability for integration hooks for the current data storage, to automatically import data from database or big data solutions.
Monitoring: Ability to monitor the search solution health.
Testing search query: Ability to test different search query to preview the user experience before hand.
Expose as API: Ability to expose the search solution as API, which can be used by different clients, irrespective of the implementation.
Community support: The community support plays big role in the future of the solution.
Documentation: Getting started with the solution and availability of documentation helps you.
Deployment (testing and production): Deployment time for fresh search solution plays import role for the regular maintenance and future support.
Scalability: Ability to scale the solution, in terms of number of servers or integration with external system is very import for the future of the solution.
Fault-Tolerant (fail over scenario): Inbuilt fail over functionality or rightly configured fail over scenario will impact the availability of the site.
Extensions/Plugins: Number of existing plugins and extensions to meet different implementations and clients will help you to avoid reinventing the wheel.
Multilingual Support: Ability to serve multilingual data is now a days basic requirement of many sites.

Relevant Results

One of the major expectations from the search engine is the ability to return you the relevant results. The relevancy of the results is also very much dependent on the domain data and also the target users.

Many of the search solution do provide you the ability to control the relevancy of the products at different level.

Index time relevancy: While indexing the products for the search solution, based on the business logic and your product properties you can control how relevant each product it.

Query time relevancy: While querying the products, based on marketing rules you can control which products are more relevant based on configured business rules for the same.

Marketing Rules compliance

Ability to be able to search your products, is now a days basic requirement for search solutions. On top of that any search solution which can help you to promote relevant content to the target customers will definitely make a difference.

Many of the commercial tools do provide you the freedom to do so. But again it is up-to your requirements that how you would prefer to control it and what value return you get out of it.

Return on Investment

Depending on your business scenario and requirements you need to choose which solution will be long lasting, more flexible and will result in right return of investment for your business.

For organization, to quick start and jump in the market usually opt for the commercial solution with out taking overhead of building and maintaining the search solution themselves.
For organization, having resources to build and maintain the solution, usually prefer to go for open source solutions. The cost of building an maintaining is usually covered with the flexibility of developing new functionality resulting in return of business value.

Regular Improvements in solution

Well business is changing fast, and making new functionality and fixes available online is very quick and frequent now a days. You need to analyze the solution which will allow you to have that flexibility with you to make changes to your search solution.

In house solution will provide you more flexibility for regular improvements and fixes in comparison to any commercial products where releases and improvements are dependent on multiple clients and their common business cases.

Support and Maintenance

Depending on your situation, you need to see how the solution support and maintenance will work for you.
For in house build solution, you have the flexibility to support and maintain it but the overhead of maintaining the solution is on you.
For commercial products also you need to have expertise or support license to maintain the same.
For hosted solutions, you can avoid the overhead for the supporting and maintaining the solution yourself.

Performance

High Performance search solution is equally important to having a search solution itself. Allowing customers to search for relevant products faster will help you will the conversion rate. Retention is very much impacted by the performance of the search solution.

Ability of the search solution to handle large data will enable you to still have high performance solution.

Analytical tools

Most of the sites are now a days integrated with the analytical tools sharing the user behavior on your website. Number of clicks and most frequently visited and most popular products etc. are some of the functionality from solution which will help you to improve the quality of your search solution.

One Response to “Choosing the right search solution for your site”

  1. […] mentioned in the earlier post, Choosing the right search solution for your site, feel free to analyze a best suited search solution for your requirements. In below section, we […]

Leave a reply to Getting started with ElasticSearch « Jai’s Weblog – Tech, Security & Fun… Cancel reply