Data recovery advisor
First Claim
1. A computer-implemented method to diagnose and fix problems in a data storage system, the data storage system being implemented at least partially by one or more computers, the method comprising:
- checking integrity of one or more components of the data storage system;
wherein a data failure is related to corruption of data in a file, the data being read by or written by or read and written by a software program, and at least the corruption of the data is identified by said checking of integrity after an error is encountered by said software program which during normal functioning is unable to process the data due to the corruption of the data;
wherein said checking of integrity comprises checking for at least existence of said file;
identifying a type of repair based at least in part on using, with a map in a memory of a computer that maps failure types to repair types, a type of the data failure related to corruption;
wherein the type of repair identifies a group of alternative repairs each of which can fix the data failure related to corruption, such that each repair in the group is an alternative to another repair in the group, wherein at least one repair in the group uses a backup of the data;
checking feasibility of the group of alternative repairs at least by checking for existence of a backup of the data in a storage device, wherein at least said checking of feasibility is performed automatically, and a plurality of feasible repairs are selected by said checking of feasibility, from among the group of alternative repairs, and said at least one repair is excluded from the plurality of feasible repairs in response to the checking feasibility being unable to find a backup of the data;
consolidating multiple repairs in the plurality of feasible repairs, based on respective impacts of the multiple repairs, into one or more repair plans;
displaying the one or more repair plans;
receiving identification of a specific repair plan selected by user input from among the one or more repair plans displayed;
performing the specific repair plan selected by the user input, to obtain corrected data to fix the corruption in the data;
storing the corrected data in non-volatile storage media of the data storage system; and
said software program at least using the corrected data;
wherein at least said checking of feasibility, said consolidating, said performing and said storing are performed by one or more processors in the one or more computers.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer is programmed to identify failures and perform recovery of data. Specifically, in several embodiments, the computer is programmed to automatically check integrity of data in a storage structure to identify a set of failures related to the storage structure. The computer is further programmed in some embodiments to identify, based on one failure in the set of failures, a group of repairs to fix that one failure. Each repair in the group of repairs is alternative to another repair in the group. The computer is also programmed in some embodiments to execute at least one repair in the group of repairs, so as to generate corrected data to fix the one failure. In certain embodiments, the corrected data is stored in non-volatile storage media of the computer.
69 Citations
46 Claims
-
1. A computer-implemented method to diagnose and fix problems in a data storage system, the data storage system being implemented at least partially by one or more computers, the method comprising:
-
checking integrity of one or more components of the data storage system; wherein a data failure is related to corruption of data in a file, the data being read by or written by or read and written by a software program, and at least the corruption of the data is identified by said checking of integrity after an error is encountered by said software program which during normal functioning is unable to process the data due to the corruption of the data; wherein said checking of integrity comprises checking for at least existence of said file; identifying a type of repair based at least in part on using, with a map in a memory of a computer that maps failure types to repair types, a type of the data failure related to corruption; wherein the type of repair identifies a group of alternative repairs each of which can fix the data failure related to corruption, such that each repair in the group is an alternative to another repair in the group, wherein at least one repair in the group uses a backup of the data; checking feasibility of the group of alternative repairs at least by checking for existence of a backup of the data in a storage device, wherein at least said checking of feasibility is performed automatically, and a plurality of feasible repairs are selected by said checking of feasibility, from among the group of alternative repairs, and said at least one repair is excluded from the plurality of feasible repairs in response to the checking feasibility being unable to find a backup of the data; consolidating multiple repairs in the plurality of feasible repairs, based on respective impacts of the multiple repairs, into one or more repair plans; displaying the one or more repair plans; receiving identification of a specific repair plan selected by user input from among the one or more repair plans displayed; performing the specific repair plan selected by the user input, to obtain corrected data to fix the corruption in the data; storing the corrected data in non-volatile storage media of the data storage system; and said software program at least using the corrected data; wherein at least said checking of feasibility, said consolidating, said performing and said storing are performed by one or more processors in the one or more computers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 39, 40, 41, 42)
-
-
16. One or more non-transitory computer-readable storage media storing a plurality of instructions which when executed by one or more processors in one or more computers cause at least:
-
checking integrity of one or more components of a data storage system; wherein a data failure is related to corruption of data in a file, the data being read by or written by or read and written by a software program, and at least the corruption of the data is identified by said checking of integrity after an error is encountered by said software program which during normal functioning is unable to process the data due to the corruption of the data; wherein said checking of integrity comprises checking for at least existence of said file; identifying a type of repair based at least in part on using, with a map in a memory of a computer that maps failure types to repair types, a type of the data failure related to corruption; wherein the type of repair identifies a group of alternative repairs each of which can fix the data failure related to corruption, such that each repair in the group is an alternative to another repair in the group, wherein at least one repair in the group uses a backup of the data; checking feasibility of the group of alternative repairs at least by checking for existence of a backup of the data in a storage device, wherein at least said checking of feasibility is performed automatically, and a plurality of feasible repairs are selected by said checking of feasibility, from among the group of alternative repairs, and said at least one repair is excluded from the plurality of feasible repairs in response to the checking feasibility being unable to find a backup of the data; consolidating multiple repairs in the plurality of feasible repairs, based on respective impacts of the multiple repairs, into one or more repair plans; displaying the one or more repair plans; receiving identification of a specific repair plan selected by user input from among the one or more repair plans displayed; performing the specific repair plan selected by the user input, to obtain corrected data to fix the corruption in the data; storing the corrected data in non-volatile storage media of the data storage system; and said software program at least using the corrected data. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 43, 44, 45, 46)
-
-
32. A system, implemented at least partially by one or more computers comprising one or more processors and one or more memories, to diagnose and fix problems in a data storage system, wherein the one or more processors are configured to at least:
-
check integrity of one or more components of the data storage system; wherein a data failure is related to corruption of data in a file, the data being read by or written by or read and written by a software program, and at least the corruption of the data is identified by said check of integrity after an error is encountered by said software program which during normal functioning is unable to process the data due to the corruption of the data; wherein said check of integrity comprises checking for at least existence of said file; identify a type of repair based at least in part on using, with a map in a memory of a computer that maps failure types to repair types, a type of the data failure related to corruption; wherein the type of repair identifies a group of alternative repairs each of which can fix the data failure related to corruption, such that each repair in the group is an alternative to another repair in the group, wherein at least one repair in the group uses a backup of the data; check feasibility of the group of alternative repairs at least by checking for existence of a backup of the data in a storage device, wherein at least said check of feasibility is performed automatically, and a plurality of feasible repairs are selected by said check of feasibility, from among the group of alternative repairs, and said at least one repair is excluded from the plurality of feasible repairs in response to said check of feasibility being unable to find a backup of the data; consolidate multiple repairs in the plurality of feasible repairs, based on respective impacts of the multiple repairs, into one or more repair plans; display the one or more repair plans; receive identification of a specific repair plan selected by user input from among the one or more repair plans displayed; perform the specific repair plan selected by the user input, to obtain corrected data to fix the corruption in the data; store the corrected data in non-volatile storage media of the data storage system; and said software program at least uses the corrected data. - View Dependent Claims (33, 34, 35, 36, 37, 38)
-
Specification