Skip to main content

Websphere Commerce Creating a custom SOLR core

This page describes how we can create custom SOLR cores in commerce. Let's think of a e commerce site where we retailers can log in and can register there shops. We want to index Shops so that user can search for different shops.

SOLR Core Naming Convention

A custom SOLR core has to be named according to OOTB convention MC_10001_<coreName>_en_US. The core name should be a single word without any underscores in it. An entry in solr.xml will look like as below

<core instanceDir="MC_10001\en_US\Shops\" name="MC_10001_Shops_en_US" />

Registering custom core with Search server

Create a new folder along with the other SOLR cores, "Shops" at /search/solr/home/MC_10001/en_US/

  • Shops should have a "conf" folder for configuration XMLs.
  • Define SQL in /conf/wc-data-config.xml and map the database fields with SOLR fields.
  • Define SOLR fields in schema.xml

We need to register our custom SOLR core with Search Server. A typical entry in 
/Search/xml/config/com.ibm.commerce.catalog-ext/wc-search.xml will look like:

<_config:core catalog="10001" indexName="Shops"
            language="en_US" name="MC_10001_Shops_en_US"
            path="/MC_10001/en_US/Shops" serverName="BasicConfiguration" />

At this time, if everything is setup properly, you should be able to hit the newly created SOLR core

Indexing data in custom Index


We can't use OOTB build index and preprocess utility to index data in custom core. These utilities are very much tied to Catalog entities. For custom cores, our data should be index ready. We may need to define complex SQLs in wc-data-config.xml to get the data index ready as we can't use preprocessing here.

For Indexing, we can rely on DIH commands and can directly hit import URL to index the data as below:
http://localhost/solr/MC_10001_Shops_en_US/dataimport?command=full-import




Comments

  1. Thanks for splitting your comprehension with us. It’s really useful to me & I hope it helps the people who in need of this vital information. 
    Online DevOps Certification Course - Gangboard
    Best Devops Training institute in Chennai

    ReplyDelete

  2. Some us know all relating to the compelling medium you present powerful steps on this blog and therefore strongly encourage
    contribution from other ones on this subject while our own child is truly discovering a great deal.
    Have fun with the remaining portion of the year.

    Selenium training in bangalore | best selenium training in bangalore | advanced selenium training in bangalore

    ReplyDelete

Post a Comment

Popular posts from this blog

Websphere Commerce "too many boolean clauses" problem

Sometimes in large scale applications, Store encountered error message is shown on Product Listing page. Root cause: On PLP, sometimes we need to show some information which can be derived from associate SKUs, like color swatches etc. While getting these information from Index, SOLR needs to build the query with product SKU information. When a product is too many SKUs, the parsing fails and we do see error message like below: SolrCore      E org.apache.solr.common.SolrException log org.apache.solr.common.SolrException: org.apache.lucene.queryParser.ParseException: Cannot parse 'catentry_id:(87765 "87766" "87767" "87768" ... ...)':  too many boolean clauses Solution: SOLR has a default maxBoolean configuration which is 3072. Look for the < maxBooleanClauses >  attribute in solrconfig.xml and increase it to appropriate value to handle your catalog structure.

Auto Suggestion in Websphere Commerce Search

There are two types of auto suggestions..  1) Suggest keywords based on Search term. 2) Suggest actual Entity based on Search term. The Auto-Suggestion feature is now handled via Search Rest calls in FEP8. Technically it is Term Search for Spellcheck fields. So the whole thing can be summarized as below mentioned steps: /conf/solrconfig.xml Configure request handler for  /terms  URL Configure  wc_textSuggest  and  wc_spellCheck  configuration /conf/schema.xml Define SOLR fields that are too be shown as Auto Suggested keywords when searched for Terms Define Spell check fields which are to be spell corrected for showing suggestions SOLR Configuration Changes   As auto suggested keywords are nothing but different Terms that are being Indexed at the time of commit, we need to define a handler in solrconfig.xml. <!--          WebSphere Commerce terms request han...