Searching Across Multiple Machines

In this section:

The massive parallel search feature enables you to distribute Lucene indexes in order to search across many machines in the network. The feature increases the speed at which large amounts of data are searched.

Massive parallel search is best used in a distributed network environment, in which indexes are fed independently on each remote server, as shown in the following diagram.

Massive parallel search across multiple indexes on multiple machines

One main Magnify server searches across all remote Magnify servers. Communication between the main server and the remote servers is through an HTTP web service. As a result, communication can span not just the company intranet, but also the World Wide Web.

Each remote server can be the main server of a lower-level remote machine. In that case, the structure resembles a tree, of which the main Magnify server is the root.

When a remote server goes down, the search function for all other servers is not affected. The main server automatically detects the failed server and stops calling it after a certain number of failures. The main server then periodically polls the failed server, at a time interval configured by the user, to determine whether or not the failed server is running again. Once the failed server is running again, the main search server automatically includes it in all search results.


Top of page

x
Installation and Configuration

Magnify must be installed on every machine. For more information on installing Magnify, see the WebFOCUS and ReportCaster Installation and Configuration manual for your platform. Configure the collections.xml file on each machine. The following sample files apply to the preceding scenario.

The collections.xml file for the main Magnify server is:

.
.
.
<collections>
   <group name="all" id="all">
      <component id="accounting" member="accounting" />
      <component id="hr" member="hr" />
      <component id="it" member="it" />
      <component id="marketing" member="marketing" />
      <component id="legal" member="legal" />
   </group>
</collections>
<indexes>
   <index name="accounting" hostname="172.30.236.108" port="8080"
                useRMIremoteindex="true" type="webservice" />
   <index name="hr" hostname="174.129.39.235" port="8080"
                useRMIremoteindex="true" type="webservice" />
   <index name="it" hostname="172.30.236.50" port="8080"
                useRMIremoteindex="true" type="webservice" />
   <index name="marketing" hostname="174.23.453.33" port="8080"
                useRMIremoteindex="true" type="webservice" />
   <index name="legal" hostname="172.30.236.109" port="8080"
                useRMIremoteindex="true" type="webservice" />
</indexes>
.
.
.

The collections.xml file for the remote Magnify server in Houston is:

.
.
.
<collections>
   <group name="all" id="all">
      <component id="accounting" member="accounting" />
   </group>
</collections>
<indexes>
   <index name="accounting" directory="accounting" type="file" />
</indexes>
.
.
.

WebFOCUS