Improving Index Load Time

In order for the query service to submit a query to a search collection, an instance of the indexer service must be running for that collection. When the indexer service first starts, its default behavior is to read saved state information about the documents in that collection from disk and deserialize it into in-memory objects. The amount of time required to read and load this information increases with collection size, and can take a significant amount of time for larger collections. Regardless of collection size, index load overhead can negatively affect performance for Watson™ Explorer Engine installations that frequently stop collections in order to free associated memory, and must then restart those collections in order to service query requests.

Watson Explorer Engine provides several options that can reduce indexer service initialization and load time. In the Watson Explorer Engine administration tool, these options are located in the Advanced section of a search collection's Configuration > Indexing tab. Available options are the following:

  • Fast document loading - Setting this option to true reduces index load time by loading per-document information directly from the sqlite3 database where document state information is persistently stored. (Default: false)

    When editing a collection in XML mode, this option can be enabled by setting the fast-docs-load vse-index-option to true in the vse-index section of the XML for that collection, as in the following example:

    <vse-index-option name="fast-docs-load">true</vse-index-option>
  • Fast reconstructor startup - Setting this option to true can reduce index load time and the time required to identify fast-indexed items. (Default: false) Setting this option will only improve performance if:
    • the configuration of the search collection has not changed
    • wildcard dictionaries do not need to be generated for that search collection

    When editing a collection in XML mode, this option can be enabled by setting the fast-reconstructor-startup vse-index-option to true in the vse-index section of the XML for that collection, as in the following example:

    <vse-index-option name="fast-reconstructor-startup">true</vse-index-option>
  • Preload database - Setting this option to true causes the indexer service to scan the sqlite3 database where document state information is persistently stored, which therefore loads that information into the disk cache that is used by Watson Explorer Engine. (Default: false)

    When editing a collection in XML mode, this option can be enabled by setting the preload-database vse-index-option to true in the vse-index section of the XML for that collection, as in the following example:

    <vse-index-option name="preload-database">true</vse-index-option>

To set any of these options, click edit after displaying the Configuration > Indexing tab. After modifying any of these options, click apply to save your changes and continue editing, or click OK to save your changes and exit edit mode.