ATG Search runs within a standard ATG platform installation. Due to the heavy performance demands of indexing content and serving search responses, you must dedicate at least one machine in your network exclusively to Search.

ATG Search has the following components:

The Search Administration, routing, and Search engines must all have access to the deployment share directory. This is a scalable, shared directory where master copies of indexes are stored. This directory should ideally be located on a high-performance machine separate from the Search Administration machine. Routing and Search engine components must have access to this directory in order for indexes to be deployed and searched.

Note: The size of the index that is deployed does not bear any direct relationship to the size of the raw information being indexed—dictionaries, topics, and other customization data can all add to the size of the index, as can the nature of the content itself. For example, content consisting mostly of pictures with some metadata might form a very small index relative to the raw content size, while a product catalog with many small, unique pieces of information might be relatively large.

There are several possible configurations for the components described. The simplest option is to run all components locally, on one machine (the possible exception being the database). This configuration is sufficient for testing purposes and for estimating the size of your optimal configuration, but is not likely to be used in a production environment.

You may want to consider a self-contained installation to begin with. Use this installation to estimate the size of your index or indexes, then add routing and search engine installations as necessary. The original installation can then remain as the Search Administration/indexing machine. In a production environment, you should separate the searching and indexing functions. The diagram that follows shows a minimal configuration:

And of course ideally, resources will be available to provide redundancy in order to prevent performance bottlenecks and failures should one component go down. Additionally, if your content set is large enough to require multiple search Engines, you will need multiple CPUs in order to serve the index. The next diagram shows a single CPU dedicated to indexing, and a minimum of three for searching.