Skip to main content

ATG Search - performance decisions in Enterprise search

Read more about the basic design decisions for a commerce search setup @ http://tips4ufromsony.blogspot.in/2012/03/basic-design-decisions-for-commerce.html

Read more about search engine tuning @ http://tips4ufromsony.blogspot.in/2012/02/atg-search-search-engine-tuning.html

Following items will affect search performance:  number of items to be searched, quantity of content for each item, number of meta tags, number of facets, Search Merchandising settings, constraints, number of returned results,... You could find a detailed analysis below :

1. Decide how many search engines you need : Based on the performance requirement of the ecommerce site, create the Search Project @ BCC - Search Admin and add the search engine hosts. Read more about search project creation and search engine host set up @  http://tips4ufromsony.blogspot.com/2012/01/atg-search-how-to-create-search-project.html.

2. Decide the search indexing properties : Search indexing time and search response time are dependent on the index file size. As part of verification process, the irrelevant attributes from search index definition file should be removed. As a result, users will view relevant results with less number of attributes and also will get improvements in search indexing time.

3. Decide how many search projects you need : If your application is a multi locale application, you could create multiple search project for each locale. This will give you more options for each locale and a separate search engine can support a locale. Read more about search project creation @  http://tips4ufromsony.blogspot.com/2012/01/atg-search-how-to-create-search-project.html.

4. Decide whether you need to do parallel search indexing : If you have multiple search projects, you could do parallel search indexing and improve search indexing performnace.

5. One search engine per box : Search engines should always run on their own machine, with no other applications running.  This is critical for machines responding to search queries to ensure proper and consistent user experience.

6. Indexing engine box : The search engine used for indexing should not be run on the same server as an engine used for query response.  The search engine used for indexing is preferred to be run on its own machine (with no other applications), but can be run on the CA/BCC.  If this is done, the CA machines should be deployed with extra power (CPU speed and cores, RAM) so that indexing does not affect BCC user experience.


Comments

Popular posts from this blog

Google Chrome shortcut keys

If you are a Google Chromey guy, please find below the list of shortcut keys for some of the most used features  :-) Find more shortcut keys @  http://www.google.com/support/chrome/bin/static.py?page=guide.cs&guide=25799&topic=28650

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.

ATG Search architectural flow : Search and Index

I would like to explain the high level ATG Search implementation architecture ( for an online store) through the above diagram. In this diagram 1.x denotes the search functionality and 2.x denotes the indexing functionality. I have given JBoss as the application server. Physical Boxes and Application Servers in the diagram ( as recommended by ATG )  : Estore ( Commerce ) Box --> The box with the estore/site ear (with the site JSPs and Java codes). Search Engine Box --> The box with the search engine application running. Indexing Engine Box --> The box with the indexing engine application running. CA (Content Administration) Box --> The box with the ATG CA ear ( where we could take CA -BCC - Search Administration and configure the search projects) . Search Indexer Box --> The box with the ATG Search Index ear ( to fetch the index data from repository). Note that the engine performing indexing will need access to the data it is indexing, which for production

ATG Product Catalog schema ER diagram

Check out the O rder schema ER-Diagram @   http://tips4ufromsony.blogspot.in/2012/02/atg-order-schema-er-diagram.html Check out the User Profile  schema ER-Diagram @ http://tips4ufromsony.blogspot.in/2012/03/atg-user-profile-schema-er-diagram.html If you would like to know the relationship between different Product Catalog tables, please find below screen shots of  Product Catalog schema ER Diagrams.

ATG - quick reference to commonly used DSP Tags

In this blog, I would like to give a quick reference to the most commonly used DSP Tags.Note that in this DSP tag details : bean refers to a Nucleus path, component name, and property name param refers to a Page parameter value refers to a Static-value var refers to a EL variable id refers to a scripting variable ============================================================== 1.dsp:importbean     example: <dsp:importbean bean="/atg/dynamo/droplet/Switch"/> ============================================================== 2.dsp:page     usage: It encloses a JSP. The dsp:page invokes the JSP handler, which calls the servlet pipeline and generates HTTPServletRequest.    example:    <dsp:page> ..... </dsp:page> ============================================================== 3.dsp:include     usage: Embeds a page fragment in a JSP.     example:   <dsp:include src="/myPage/ResultPage.jsp" flush="true">