Round Robin Indexing

You can use round robin indexing with the DIH to maximize indexing performance. This option rotates indexing over several child servers, so that only one DIH indexes at a time.

A round robin DIH forms part of a larger architecture that achieves extremely high performance and low search latency. IDOL Server provides the fastest queries when it is not indexing, and indexes fastest when it is not being queried. When you configure indexing for round robin mode, DIH suspends query handling for a specific child server. This server then has optimal indexing, and only one child server receives most incoming documents.

If you have the DAH installed, you can configure the DAH to divert search queries to other IDOL servers to allow the active server to devote all its resources to the indexing task.

Use the [DAHServerN] section options to configure child servers for powerup and shutdown when round robin indexing rollover occurs. This option optimizes both query handling and data indexing across a group of child servers.

For example, DAH disables queries to the first server, which optimizes indexing speed for that server. Query handling is optimal for the other servers, which are not indexing data. The first server indexes data during this period, before DAH queries it again.


You can use round robin mode without installing the DAH to divert search queries from the active server. However, when the active server must perform search and indexing tasks simultaneously, it compromises performance for both.

To enable round robin mode, set RoundRobinMode to True in the [Server] section of the DIH configuration file. You must complete the following sections in the DIH configuration file (DAH portions apply only if you have installed it):



Port=6502 [IDOLServer1]
Port=6602 [IDOLServer2]
Port=6702 [RoundRobinMode] ServerImmediateStart=2 NextServerStartTime=00:00 NextServerStartDate=2006/10/20 PeriodInDay=1 [DAHServer0] Host=dahhost0 Port=12000 ShutDownEnginePeriods=0,-1 [DAHServer1] Host=dahhost1 Port=13000 StartUpEnginePeriods=-2

In this example, the DIH immediately starts to send index data to IDOL Server 2. Indexing switches to the next server, IDOL Server 0, on 20 October 2006 at 00:00. After this period, DIH dedicates one day for each child server before it rolls over to the next. To optimize data indexing when the rollover occurs, and to suspend query handling, it shuts down the DAH child servers that indexed data yesterday and today. At the same time, it powers up the DAH child server that indexed data the day before yesterday.


You can use RoundRobinMode only when MirrorMode is set to False. DIH will not start if RoundRobinMode and MirrorMode are both set to True.