The invention relates to a functional dependency-based diversity data restoration method. The method comprises the following steps of: initializing a restoration set; judging whether a restoration number in the restoration set is smaller than or equal to a set restoration number, if the judging result is positive, initializing an input queue and executing the next step, and otherwise, executing the last step; selecting a restoration element of each restoration by utilizing a preference function w'(C) so as to generate the input queue; carrying out data restoration by utilizing a Genrepair algorithm; judging whether the restoration set comprises a restoration same as the restoration or not, if the judging result is positive, directly returning the second step, and otherwise, adding the restoration into the restoration set and returning to the second step; and judging whether a termination condition is satisfied or not, if the judging result is positive, completing the restoration, and otherwise, checking the restoration set and selecting corresponding restorations to carry out replacement. Compared with the prior art, the method has the advantages of carrying out data restoration through considering both the diversity and cost, improving the restoration efficiency and being suitable for the effective dynamic sampling of restoration spaces in index levels.