Patent ID: 8756198

Claim:
A system, comprising: a processor; storage coupled to the processor, wherein the storage stores a computer program, and wherein the processor is configured to execute the computer program to perform operations, the operations comprising: determining a fitness value for each index among indexes that maximizes a gain ratio that balances a quality of the indexes and an amount of time to backup the indexes and minimizes a root mean square error of a difference between a derived ranking and a user determined ranking of the indexes, wherein the fitness value is determined based on one or more fitness factors, including reading indexes for backing up from faster storage first and reading indexes from worn storage later; selecting indexes from a first group of indexes in a current generation of indexes biased to indexes with higher fitness values; forming sub-groups of indexes using the selected indexes; determining fitness values of each of the sub-groups based on the fitness value of each of the indexes in the sub-groups; selecting a subset of the sub-groups; placing the indexes in the selected subset into a new generation of indexes; in response to determining that the indexes in the current generation of indexes and the new generation of indexes have similar fitness values, backing up the indexes in the new generation of indexes without backing up other indexes; and in response to determining that the indexes in the current generation of indexes and the new generation of indexes do not have similar fitness values, iterating through additional generations of indexes until in at least two of the generations of indexes have similar fitness values.