A retrieval system, comprising:
- a storage system;
- and
- a search engine server coupled to the storage system, for retrieving a data object satisfying search criteria from among a plurality of data objects in accordance with a search request, wherein:
- the storage system comprises:
- a first logical unit for storing an index including a plurality of index records;
- a second logical unit for storing a rule that defines how to output search results;
- at least one third logical unit for storing a snapshot of the index;
- and
- at least one fourth logical unit for storing a snapshot of the rule;
- each of the plurality of index records is created for any one of the plurality of data objects, and includes storage location information indicating where the data object is stored and a keyword list of at least one keyword included in the data object;
- and
- the search engine server is configured to:
- select the third logical unit and the fourth logical unit based on a search request upon reception of the search request;
- search the index stored in the selected third logical unit with a keyword included in the search request for an index record whose keyword list includes the keyword;
- and
- output the storage location information of the data object included in at least one extracted index record in an order according to the rule stored in the selected fourth logical unit,
- wherein the storage system further comprises:
- a plurality of third logical units for storing snapshots of the index which are created based on times different from each other;
- and
- a plurality of fourth logical units for storing snapshots of the rule which are created based on times different from each other;
- the search engine server is further configured to:
- manage the snapshots of the index and the snapshot of the rule by associating each of the times based on which the snapshots are created with identification information of a logical unit storing the corresponding snapshot;
- refer time information relating to the index and the rule included in the search request upon reception of the search request;
- and
- select for the index the third logical unit that stores the snapshot of the index created based on a time before and closest to a time determined by the time information, and for the rule the fourth logical unit that stores the snapshot of the rule created based on a time before and closest to a time determined by the time information.