Design-Time Services
The indexing service provides an API to manage the indexing processes. The indexing service is designed to be tightly integrated with the knowledge repository's retrieval service (see Runtime Services). Therefore, when a knowledge base is integrated into the Software Agent Framework (SAF) knowledge repository, the basic functionality provided by the indexing service is immediately available for the knowledge base. The indexing service consists of the following operations:
Creating an index
Deleting an index
Full compilation
Delta compilation
Adding a knowledge entity to an index
Deleting a knowledge entity from an index
Modifying the contents of an index
All design-time operations related to search engines are controlled by the SAF job queue management. Job queue management is crucial to control and resolve the following problems:
Controlling multiple indexing processes in parallel for different knowledge bases, clients, languages, and servers
Compiling high volume data into an index efficiently
Controlling and processing delta updates
Recovering failed jobs
This is particularly important for the initial load of a knowledge base.
Organizing dependent jobs in a proper sequence
Interrupting and recovering undesirable jobs
Advanced processes are also built into the SAF search engine framework to improve indexing performance:
Multiple queues are designed to process simultaneous requests from different knowledge bases, clients, and languages.
Configurable packet size is used to retrieve and submit indexing of content in packets.
Automatic delta updates can be scheduled for each index.
Failed jobs can be resumed.
Individual jobs can be monitored and controlled from a central application. For more information, see Knowledge Base Compilation.