# Run the Distributed Action Handler in Non-Mirror Mode

In non-mirror mode, the IDOL Servers that the DAH distributes ACI actions to are different (that is, each IDOL Server is configured differently and contains different data). If you run the DAH in non-mirror mode, you must set up virtual databases, which can be of the following types:

- Combinator. The virtual database forwards an action to all the databases that it represents. It collates and sorts the results before it returns them.

- Distributor. The virtual database forwards an action according to the selected distribution method to one of the databases it represents:

  - Load balancing. Each distributor VDB assigns each incoming action to just one of the databases that it maps to. When this database responds with a result, the DAH forwards it to the client software.

    If an IDOL Server stops responding for any reason (for example, because of a hardware failure or network outage), the DAH marks it as down. It assigns incoming actions only to the databases on IDOL Server installations that are running, saving the time that it takes to attempt to communicate with the failed database.

  - Failover. Each distributor VDB forwards incoming actions to the first database that is listed for the virtual database `MapsTo` parameter. If this database stops responding for any reason (for example, because of a hardware failure or network outage), the DAH marks it as down and switches to the next database (the second one listed for the `MapsTo` parameter) and so on, and seamlessly continues to service client actions.

Virtual databases can map to IDOL Server databases or to other VDBs that you set up for the DAH.

NOTE: When you implement a non-mirror mode architecture in which VDBs map to other VDBs, set up combinator VDBs to map only to other VDBs. Distributor virtual databases normally map directly to the databases on the servers. (That is, the combinator VDB combines results from distributor VDBs; a distributor VDB must not distribute queries to combinator VDBs.)

For details of the actions that the DAH can distribute in non-mirror mode, refer to the Distributed Action Handler Reference.

Related Topics

- Display Online Help

To run the DAH in non-mirror mode

1. Open the DAH configuration file in a text editor.

2. Find the `MirrorMode` setting in the `[Server]` section and set it to `False`.

3. In the `[Server]` section, set the `VirtualDatabases` setting to the total number of virtual databases that you want to create. You can create the following virtual database types:

   - Combinator. The virtual database forwards an action to all the IDOL Server databases that it represents. It collates and sorts the results before it returns them.

   - Distributor. The virtual database forwards an action to one of the IDOL Server databases that it represents. These databases must be identical (that is, all the databases are exact copies of each other and contain the same data). You determine the way that it forwards the action by using the distribution method.

4. To create distributor VDBs, set the `DistributionMethod` setting in the `[Server]` section to one of the following to determine how the distributor VDBs forward the actions that they receive:

   -     DistributionMethod=0

     Failover distribution method. Each distributor VDB forwards incoming actions to the first IDOL Server database that you list in the virtual database `MapsTo` parameter. If this IDOL Server database stops responding for any reason (for example, because of a hardware failure or network outage), the DAH marks it as down. It switches to the next IDOL Server database (the second one listed in the `MapsTo` parameter) and so on, and seamlessly continues to service client actions.

   -     DistributionMethod=1

     Load balancing distribution method. Each distributor VDB assigns each incoming action to just one of the IDOL Server databases that it maps to. When this IDOL Server database responds with a result, the DAH forwards it to the client software.

     If an IDOL Server stops responding for any reason (for example, because of a hardware failure or network outage), the DAH marks it as down. It assigns incoming actions only to the IDOL Server databases that are running, saving the time that it takes to attempt to communicate with the failed IDOL Server database.

5. Create a `[VDBN]` section for each of the virtual databases that you want to create. For example:

       [VDB0]
       [VDB1]
       [VDB2]

   NOTE: The virtual databases are numbered in consecutive order starting from `0` (zero).

6. Specify the settings to apply to each VDB in the appropriate virtual database section. You can specify the name, type, and the IDOL Server databases that it maps to. For example:

       [VDB0]
       DbName=News
       Type=Distributor
       MapsTo=0:News,1:News,2:News

       [VDB1]
       DbName=Accounts
       Type=Combinator
       MapsTo=0:Personnel,1:FinancialDocs

       [VDB2]
       DbName=ProjectManagers
       Type=Combinator
       MapsTo=1:Personnel,Accounts

   In this example, the VDB configured in `[VDB2]` maps to the `Accounts` VDB configured in `[VDB1]`, as well as to an IDOL Server database specified by `1:Personnel`.

   If you add a virtual database that maps to another virtual database, you must ensure that the section number of the virtual database that you add is higher than the section number of the virtual database that you are mapping to. That is, the virtual database in `[VDB2]` can map to the virtual database in `[VDB1]`, but the virtual database in `[VDB1]` must not map to the virtual database in `[VDB2]`. This restriction ensures that virtual database mappings are not circular.

7. Save and close the configuration file.

8. Restart the DAH for your changes to take effect.

_FT_HTML5_bannerTitle.htm