IP Library › Granted Patent US 7,877,359
Granted Patent B2
US 7,877,359 · App. 12/068,207 · Granted Jan 25, 2011

Backup executability judging system

Assignee: Hitachi, Ltd.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,877,359
App. No.
12/068,207
Granted
Jan 25, 2011
Kind
B2
Abstract

A problem of prior art is that normal backup data is lost as a result of taking a backup by overwriting the normal backup data with data that has been changed greatly from a virus infection or the like. This invention provides a computer system having a storage system. The storage system contains a first storage area and a second storage area for storing a copy of data that is stored in the first storage area at one point in time. Only when the differential amount indicating the difference between data stored in the first storage area and data stored in the second storage area is smaller than a predetermined threshold, the storage system deletes the data which is stored in the second storage area and newly stores a copy of the data stored in the first storage area in the second storage area.

Claims (98)

1. A computer system comprising:

a storage system coupled to a network,

wherein the storage system having one or more data storage devices containing a plurality of data storage areas, and a controller for controlling the data storage devices,

wherein the plurality of data storage areas including a first storage area and a second storage area for storing a copy of data that is stored in the first storage area at one point in time, and

wherein the storage system is configured to delete, only when the differential amount is smaller than the predetermined threshold, the data stored in the second storage area and newly store a copy of the data stored in the first storage area in the second; and

a backup judging module,

wherein the backup judging module is configured to judge whether or not a differential amount indicating a difference between data stored in the first storage area and data stored in the second storage area is smaller than a predetermined threshold, and

wherein the backup judging module is further configured to:

count keywords contained in at least one of data stored in the first storage area and data stored in the second storage area to calculate, for each of the keywords, a difference between an appearance count of the keyword in the data stored in the first storage area and an appearance count of the keyword in the data stored in the second storage area;

add up one of an absolute value and square of the difference calculated for each of the keywords; and

use the added up value as a differential amount indicating a difference between the data stored in the first storage area and the data stored in the second storage area.

2. The computer system according to claim 1 ,

wherein the computer system holds information that indicates a schedule for storing a copy of data stored in the first storage area in one of the plurality of data storage areas,

wherein the computer system further comprises an index creating module,

wherein the index creating module is configured to:

count, at least once, after a copy of data stored in the first storage area is stored in one of the plurality of data storage areas according to the information indicating a schedule and before the next time a copy of the data stored in the first storage area is stored in one of the plurality of data storage areas, the appearance count of each keyword that is contained in the data stored in the first storage area;

hold the counted appearance count as a first appearance count; and

hold, in a case where a copy of the data stored in the first storage area is to copy in the second storage area, a copy of the first appearance count as a second appearance count, which is an appearance count of a keyword contained in data stored in the second storage area, and

wherein the backup judging module is further configured to calculate for each of the keywords the difference between the appearance count of the keyword in the data stored in the first storage area and the appearance count of the keyword in the data stored in the second storage area by calculating a difference between the held first appearance count and the held second appearance count.

3. The computer system according to claim 2 , further comprising a first computer and a second computer, which are coupled to the network,

wherein the first computer has a first interface coupled to the network, a first processor coupled to the first interface, and a first memory coupled to the first processor,

wherein the second computer has a second interface coupled to the network, a second processor coupled to the second interface, and a second memory coupled to the second processor,

wherein the information indicating a schedule is held in the first computer,

wherein the first computer is configured to:

send, when judged from the information indicating a schedule that time for a copy of the data stored in the first storage area to copy in one of the data storage areas, a judging request to the backup judging module; and

send, only when a response indicating that execution of backup is permitted is received from the backup judging module, a backup request to the storage system,

wherein the backup judging module and the index creating module are implemented by the second processor by executing a program that is stored in the second memory,

wherein the first appearance count and the second appearance count are held in the second computer,

wherein the backup judging module is further configured to:

judge, upon reception of the judging request, whether or not a differential amount indicating a difference between data stored in the first storage area and data stored in the second storage area is smaller than the predetermined threshold; and

send, when judged that the differential amount is smaller than the predetermined threshold, a response indicating that execution of backup is permitted to the first computer, and

wherein the storage system further configured to delete, upon reception of the backup request, the data stored in the second storage area and newly store a copy of the data stored in the first storage area in the second storage area.

4. The computer system according to claim 2 , further comprising a first computer coupled to the network,

wherein the first computer has a first interface coupled to the network, a first processor coupled to the first interface, and a first memory coupled to the first processor,

wherein the information indicating a schedule is held in the first computer,

wherein the first computer is configured to send, when judged from the information indicating a schedule that time for a copy of the data stored in the first storage area is to copy in one of the data storage areas, a backup request to the storage system,

wherein each of the backup judging module and the index creating module is implemented by the controller by executing a predetermined program,

wherein the first appearance count and the second appearance count are held in the storage system,

wherein the backup judging module is further configured to judge, upon reception of the backup request, whether or not a differential amount indicating a difference between data stored in the first storage area and data stored in the second storage area is smaller than the predetermined threshold, and

wherein the storage system is further configured to delete, when judged that the differential amount is smaller than the predetermined threshold, the data stored in the second storage area and newly store a copy of the data stored in the first storage area in the second storage area.

5. The computer system according to claim 1 ,

wherein the backup judging module is further configured to calculate, a predetermined number of times, a differential amount indicating a difference between data stored in the first storage area and data stored in the second storage area,

wherein the storage system is further configured to repeat, the predetermined number of times, processing of deleting the data stored in the second storage area and newly storing a copy of the data stored in the first storage area in the second storage area irrespective of whether the differential amount is smaller than the predetermined threshold or not, and

wherein the backup judging module is further configured to use as the predetermined threshold a maximum value of differential amounts which are obtained by performing the differential amount calculation the predetermined number of times.

6. The computer system according to claim 1 ,

wherein the plurality of data storage areas further include a third storage area,

wherein the second storage area stores a copy of data that is stored in the first storage area at a first point in time, and the third storage area stores a copy of data that is stored in the first storage area at a second point in time,

wherein the backup judging module is further configured to:

delete, when a differential amount indicating a difference between data stored in the first storage area and data stored in the second storage area is smaller than the predetermined threshold and is also smaller than a differential amount indicating a difference between the data stored in the first storage area and data stored in the third storage area, the data stored in the second storage area and newly store a copy of the data stored in the first storage area in the second storage area; and

delete, when a differential amount indicating a difference between data stored in the first storage area and data stored in the third storage area is smaller than the predetermined threshold and is also smaller than a differential amount indicating a difference between the data stored in the first storage area and data stored in the second storage area, the data stored in the third storage area and newly store a copy of the data stored in the first storage area in the third storage area.

7. The computer system according to claim 1 ,

wherein the backup judging module is further configured to calculate a differential amount indicating a difference between data that is stored in the first storage area and that is associated with a first file and data that is stored in the second storage area and that is associated with the first file to judge whether or not the differential amount is smaller than a predetermined threshold, and

wherein the storage system is further configured to delete, only when the differential amount is smaller than the predetermined threshold, the data that is associated with the first file from the second storage area, and newly store a copy of the data that is stored in the first storage area and that is associated with the first file in the second storage area.

8. The computer system according to claim 1 ,

wherein the plurality of data storage areas further include a fourth storage area, and

wherein the storage system is further configured to store, when the differential amount is equal to or larger than the predetermined threshold, a copy of the data stored in the first storage area in the fourth storage area without deleting the data stored in the second storage area.

9. The computer system according to claim 1 ,

wherein the computer system holds information that indicates a retention period of data stored in the second storage area,

wherein the backup judging module is further configured to judge whether or not a differential amount indicating a difference between data stored in the first storage area and data stored in the second storage area is equal to or larger than the predetermined threshold, and whether or not the data stored in the second storage area has passed the retention period, and

wherein the storage system is further configured to delete, when the differential amount is smaller than the predetermined threshold and the data stored in the second storage area has passed the retention period, the data stored in the second storage area and newly store a copy of the data stored in the first storage area in the second storage area; and

wherein the storage system is further configured to update, when the differential amount is equal to or larger than the predetermined threshold and the data stored in the second storage area has passed the retention period, the information to extend the retention period of the data stored in the second storage area without deleting the data stored in the second storage area.

10. A method for controlling a computer system comprising:

a storage system coupled to a network,

wherein the storage system having one or more data storage devices containing a plurality of data storage areas, and a controller for controlling the data storage devices, and

wherein the plurality of data storage areas including a first storage area and a second storage area for storing a copy of data that is stored in the first storage area at one point in time,

a first step of judging whether or not a differential amount indicating a difference between data stored in the first storage area and data stored in the second storage area is smaller than a predetermined threshold;

a second step of deleting, only when the differential amount is smaller than the predetermined threshold, the data stored in the second storage area and newly storing a copy of the data stored in the first storage area in the second storage area;

a third step of counting keywords contained in at least one of data stored in the first storage area and data stored in the second storage area to calculate, for each of the keywords, a difference between an appearance count of the keyword in the data stored in the first storage area and an appearance count of the keyword in the data stored in the second storage area; and

a fourth step of adding up one of an absolute value and square of the difference calculated for each of the keywords,

wherein the added up value is used as a differential amount indicating a difference between the data stored in the first storage area and the data stored in the second storage area.

11. The method according to claim 10 ,

wherein the computer system holds information that indicates a schedule for storing a copy of data stored in the first storage area in one of the plurality of data storage areas,

wherein the method further comprises:

a fifth step of counting, at least once, after a copy of data stored in the first storage area is stored in one of the plurality of data storage areas according to the information indicating a schedule and before the next time a copy of the data stored in the first storage area is stored in one of the plurality of data storage areas, the appearance count of each keyword that is contained in the data stored in the first storage area, and holding the counted appearance count as a first appearance count; and

a sixth step of holding, in a case where a copy of the data stored in the first storage area is to be stored in the second storage area, a copy of the first appearance count as a second appearance count, which is an appearance count of a keyword contained in data stored in the second storage area,

wherein the third step comprises calculating a difference between the held first appearance count and the held second appearance count.

12. The method according to claim 10 ,

wherein the first step is repeated a predetermined number of times, and comprises storing the calculated differential amount,

wherein the second step is repeated the predetermined number of times, and comprises deleting the data stored in the second storage area and newly storing a copy of the data stored in the first storage area in the second storage area irrespective of whether the differential amount is smaller than the predetermined threshold or not, and

wherein a maximum value of differential amounts stored as a result of repeating the first step is used as the predetermined threshold.

13. The method according to claim 10 ,

wherein the plurality of data storage areas further include a third storage area,

wherein the second storage area stores a copy of data that is stored in the first storage area at a first point in time, and the third storage area stores a copy of data that is stored in the first storage area at a second point in time,

wherein the second step comprises the steps of:

deleting, when a differential amount indicating a difference between data stored in the first storage area and data stored in the second storage area is smaller than the predetermined threshold and is also smaller than a differential amount indicating a difference between the data stored in the first storage area and data stored in the third storage area, the data stored in the second storage area and newly storing a copy of the data stored in the first storage area in the second storage area; and

deleting, when a differential amount indicating a difference between data stored in the first storage area and data stored in the third storage area is smaller than the predetermined threshold and is also smaller than a differential amount indicating a difference between the data stored in the first storage area and data stored in the second storage area, the data stored in the third storage area and newly storing a copy of the data stored in the first storage area in the third storage area.

14. The method according to claim 10 ,

wherein the first step comprises the step of calculating a differential amount indicating a difference between data that is stored in the first storage area and that is associated with a first file and data that is stored in the second storage area and that is associated with the first file to judge whether or not the differential amount is smaller than a predetermined threshold, and

wherein the second step comprises the step of deleting, only when the differential amount is smaller than the predetermined threshold, the data that is associated with the first file from the second storage area, and newly storing a copy of the data that is stored in the first storage area and that is associated with the first file in the second storage area.

15. The method according to claim 10 ,

wherein the plurality of data storage areas further include a fourth storage area, and

wherein the method further comprises a seventh step of storing, when the differential amount is equal to or larger than the predetermined threshold, a copy of the data stored in the first storage area in the fourth storage area without deleting the data stored in the second storage area.

16. The method according to claim 10 ,

wherein the computer system holds information that indicates a retention period of data stored in the second storage area,

wherein the method further comprises:

an eighth step of judging whether or not the data of the second storage area has passed the retention period; and

a ninth step of updating, when the differential amount is equal to or larger than the predetermined threshold and the data stored in the second storage has passed the retention period, the information to extend the retention period of the data stored in the second storage area without deleting the data from the second storage area, and

wherein the second step comprises the step of deleting, when the differential amount is smaller than the predetermined threshold and the data stored in the second storage area has passed the retention period, the data stored in the second storage area and newly storing a copy of the data stored in the first storage area in the second storage area.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 26, 2011
From: SANDISK CORPORATION
To: SANDISK TECHNOLOGIES INC.
Reel/Frame 026345/0903 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2008
From: KODAMA, SHOJI; KUMAZAWA, KIYOTAKE
To: HITACHI, LTD.
Reel/Frame 020519/0117 →
Priority Claims (1)
JP 2007-291697 · Nov 9, 2007 · national
Continuity (1)
Related Publication 20090125577A1 · May 14, 2009