# System Architecture

The DIH receives index actions (data indexing requests or administrative actions) and distributes them to the connected IDOL servers.

You can run the DIH in either of two modes: mirror mode and non-mirror mode.

You determine the way that the DIH distributes index data by using the `MirrorMode` parameter in the DIH configuration file. See Set the Distribution Mode.

## Mirror Mode

In mirror mode, the DIH indexes all data to all the connected IDOL servers. Each IDOL server is identical.

The following diagram shows how the DIH in mirror mode integrates into an IDOL Server installation.

DIH system architecture (mirror mode)

The DIH sends all the index data that it receives (represented by gray arrows in the diagram) to all the connected IDOL Servers. The IDOL Servers are exact copies of each other, and must all have the same configuration.

You can run the DIH in mirror mode to ensure uninterrupted service if one of the IDOL Servers fails. While one IDOL Server is inoperable, its identical copies continue to index data, and are still available to return data for queries.

The DIH periodically checks whether all connected IDOL Servers are operating. If an IDOL Server is unavailable, the DIH queues the data that this IDOL Server normally receives. When the IDOL Server is available again, the DIH indexes the queued data into it.

The DIH sends administrative index actions (represented by black arrows in the diagram) to all connected IDOL Servers.

## Non-Mirror Mode

In non-mirror mode, the DIH divides the index data among the connected IDOL servers. Each IDOL server receives the same amount of data.

The diagram below shows how the DIH in non-mirror mode integrates into an IDOL server installation.

DIH system architecture (non-mirror mode)

The DIH distributes the index data that it receives (represented by gray arrows in the diagram above) evenly across the connected IDOL Servers. For example, if the DIH connects to four IDOL servers, it indexes approximately one quarter of the data into each IDOL server. It does not split up sections of individual documents.

Run the DIH in non-mirror mode if the amount of data that you want to index is too large for a single IDOL Server. If the IDOL Servers that the DIH indexes into are on different machines, the indexing process requires less time.

DIH periodically checks whether all the connected IDOL Servers are available. If an IDOL Server is unavailable, the DIH queues the data that this IDOL Server normally receives. When the IDOL Server is available again, the DIH indexes the queued data into it.

NOTE: Mirror mode and non-mirror mode refer only to how DIH distributes index data. DIH always distributes administrative commands to all connected IDOL Servers. This behavior is show by the black arrows in the diagram.

_FT_HTML5_bannerTitle.htm