Skip to main content

ATG Search Indexing - behind the scene steps explained

Read more about the search indexing @ http://tips4ufromsony.blogspot.com/2011/11/atg-search-architectural-flow-search.html

ATG search indexing involves index file creation, deploying and copying the index file to the search engine's box. The steps can be divided into Initial stage, Preparing Content, Indexing and Deploying. Please find below the detailed analysis of each step.



1. Initial stage:
       a. Check whether the folder deployshare configured correctly @ LaunchingService.deployShare  ( \atg\search\routing\LaunchingService.deployShare ). Lets assume that it is configured to \Search2007.1\SearchEngine\i686-win32-vc71\buildedIndexFiles.
       b. Lets assume that the index file folder ( \Search2007.1\SearchEngine\i686-win32-vc71\indexFiles)  has the following segments (folders) currently :
                    66900009 @ index engine box
       66900010 @ search engine box
       c. Lets assume that the component SearchEngineService has the "Local Content Path" as following for the search and index environments :
                   Search  environment   --> ../indexFiles/66900010
        Indexing environment  --> ../indexFiles/66900009

2.Preparing Content
     a. start an indexing engine @ step "Load latest pre-index customizations"
     b. delete the folder "\indexFiles\66900009" and create a new folder "\indexFiles\66900011" @ location "SearchEngine\i686-win32-vc71\indexFiles" @ index engine box
     c. copy the files initial.index ( from SearchEngine\i686-win32-vc71\data ) and  LUIStore.stg to “indexFiles\66900011” --> done by indexing engine

3.Indexing
     a. create a new index and stg files @ "SearchEngine\i686-win32-vc71\buildedIndexFiles". First create the index file and then the stg file.
     b. copy the new index and stg files to the folder indexFiles\66900011 --> done by indexing engine
     c. update the SearchEngineService.Local Content Path of the indexing environment to ../indexFiles\66900011
     d. kill the indexing engine

4.Deploying
    a. start a new answer engine
    b. create the folder "indexFiles\66900012" @ answer engine box -->  done by the new engine
    c. copy the new index and stg files to the folder "indexFiles\66900012" -->  done be new engine
    d. update the SearchEngineService.Local Content Path of the search environment to ..\indexFiles\66900012
    e. delete the folder "indexFiles\66900010"
    f.  shutdown the previous running engine

Comments

  1. Hi Sony, I have a clarification in step 4, It will be great if you can help me understand : Will ATG create a new search engine with a new Port at this phase ? Say we have existing engine running in port 5010, will a new engine be created and assigned 5011 and engine at 5010 will be killed during this deploying step ?

    ReplyDelete
  2. Yes. A new searhc engine will automatically started @ 4.a @ new port. When we create the search project, we can define the range of port numbers for the search engines amd the new port will be opened with in that range.

    :-)

    ReplyDelete
  3. Hi Sony,
    First of all, thanks for the post....

    I have some concerns. Why do we need the deploy share ?

    As far as i understood
    at step 3.a index and stg files are created in deployeshare folder.

    at step 3.b the index and stg from deploy share is copied to ndexFiles\66900011.

    at step 4.c the index and stg from deploy share is copied to indexFiles\66900012.

    Please correct me

    ReplyDelete
  4. deploy share is the name of the folder we specify @ /atg/search/routing/LaunchingService. This is where the index files are placed for index deployment. Index deployment is the process when the index files are copied to search instances. so the deploy share will come into picture only @ index deployment.

    ReplyDelete
  5. Hi Sony,

    I am a newbie to ATG..! I am really excited to learn ATG concepts...! I have a doubt in the above topic...what is the need for two segment (folders) you mentioned in the below step and why they are mentioned as Index engine box and search engine box..!

    b. Lets assume that the index file folder ( \Search2007.1\SearchEngine\i686-win32-vc71\indexFiles) has the following segments (folders) currently :
    66900009 @ index engine box
    66900010 @ search engine box

    Also please clarify me why the remote launcher is used..and where en all it should run..?

    ReplyDelete
  6. Hi Sony,

    I have one query i hope you will be helping me in this,
    Is it possible to trigger the index deployment using shell script rather than from administration UI.


    Thanks
    Amit Kumar

    ReplyDelete
  7. Can you give pointers to below error while searching for custoemr in CSC.(ATGProfile env is running)
    Error copying file null\data\initial.index to file ../indexFiles\500001\initial.index: boost::filesystem::copy_file: The system cannot find the path specified: "null\data\initial.index", "..\indexFiles\500001\initial.index"

    ReplyDelete

Post a Comment

Popular posts from this blog

ATG - more about Forms and Form Handlers

An ATG form is defined by the dsp:form tag, which typically encloses DSP tags that specify form elements, such as dsp:input that provide direct access to Nucleus component properties. Find below a sample dsp:form tag.    <dsp:form action="/testPages/showPersonProperties.jsp" method="post" target="_top">      <p>Name: <dsp:input bean="/samples/Person.name" type="text"/>      <p>Age: <dsp:input bean="/samples/Person.age" type="text" value="30"/>      <p><dsp:input type="submit" bean="/samples/Person.submit"/> value="Click to submit"/>    </dsp:form>   When the user submits the form, the /samples/Person.name property is set to the value entered in the input field.Unlike standard HTML, which requires the name attribute for most input tags; the name attribute is optional for DSP form element tags. If an input tag omits the n...

Eclipse plug-in to create Class and Sequence diagrams

ModelGoon is an Eclipse plug-in avaiable for UML diagram generation from Java code. It can be used to generate Package Dependencies Diagram, Class Diagram, Interaction Diagram and Sequence Diagram. You coud get it from http://marketplace.eclipse.org/content/modelgoon-uml4java Read more about it and see some vedios about how to create the class and sequence diagram @ http://www.modelgoon.org/?tag=eclipse-plugin Find some snapshots below which gives an idea about the diagram generation.

Basic design decisions for a commerce search setup ( with an ATG Search view)

In this blog I would like to explain the basic set of configuration/design decisions needed to setup an ATG search project. Most of these design decisions are common for all Enterprise search applications. 1. Decide the searchable properties :   This means the properties that the business want the user to search in the ecommerce platform. In ATG search these are configured as the text properties in the product-catalog-output-config.xml ( the definitionFile of the \atg\commerce\search\ProductCatalogOutputConfig). Usually the displayName of product/sku, displayName of department/category/sub-category, skuId, brandName are the properties configured as searchable. 2. Decide the search refinement properties or the faceted properties :   After a user search for a keyword, search refinement is the next step done to filter his results. ATG supports the search refinement using the Faceted Search concept. Read more about facted search @...

Search Facets - how to create a new search facets in ATG Search

A Facet is a search refinement element that corresponds to a property of a commerce item type. ATG supports the search result refinement using the Faceted Search concept. Read more about facted search @  http://en.wikipedia.org/wiki/Faceted_search . Facet can either be ranges or specific values. Each facet is stored in the RefinementRepository as a separate refineElement repository item. Facets are divided into Global and Local facets. Global facets apply to all the categories and local facets only to the category in which they are created. For example Price/Brand can be considered as the facets that are common for all skus and New Release/Coming Soon can be considered as the facets that are specific to Physical Media products like Vidoe/DVD/Blue-ray/Books. We can use the ATG BCC - Merchandising UI to create facets. The Faceting Property depends on the meta-properties defined in the \atg\commerce\search\product-catalog-output-config.xml ( the def...

ATG - basic concepts of ATG

This blog is for the ATG beginners to get some basic overview about ATG. I just given the ATG concepts as a list of numbered points for the ease of understanding. 1. At the framework level, ATG is a               java based application platform for hosting web-based applications, as well as RMI accessible business components,               with an ORM layer,               a component container,               an MVC framework,               and a set of tag libraries for JSP. 2. Art Technology Group(ATG)'s Dynamo Application Server (DAS) is a Java EE compliant application server. DAS is no longer actively developed as ATG recommends using other Java EE applications servers for its products such as BEA WebLogic, JBoss or IBM WebSphere. 3. Prior to ATG 2007, JHTML was used instead of JSP for view purpose. J...