IP Library Granted Patent US 10,606,499
Granted Patent B2
US 10,606,499 · App. 15/755,317 · Granted Mar 31, 2020

Computer system, storage apparatus, and method of managing data

Inventors: Mitsuo Hayasaka (Tokyo, JP); Keiichi Matsuzawa (Tokyo, JP)
Assignee: Hitachi, Ltd.
G06F3/0641G06F3/067G06F3/0608H03M7/30H03M7/3091
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 10,606,499
App. No.
15/755,317
Granted
Mar 31, 2020
Kind
B2
Abstract

It is provided a computer system comprising at least one storage apparatus and a computer, wherein the each of the at least one storage apparatus is configured to manage identification information indicating specifics of the stored data, and wherein the computer determines whether the data to be written to the one of the at least one storage apparatus has duplicate data, which is the same data already stored in any one of the at least one storage apparatus, transmits deduplicated data, and uses at least one of individual pieces of identification information or a range of pieces of identification information, depending on how many pieces of identification information appear in succession, to request the information indicating whether the data that is associated with the calculated identification information is stored from the one of the at least one storage apparatus.

Claims (41)

1. A computer system, which has a deduplication function, the computer system comprising:

at least one storage apparatus each having a storage device in which data is stored; and

a computer processor programmed to request each of the at least one storage apparatus to write data, wherein the each of the at least one storage apparatus manages identification information indicating specifics of the stored data, wherein the computer is programmed to: calculate identification information indicating specifics of data to be written to one of the at least one storage apparatus;

request information indicating whether data that is associated with the calculated identification information is stored to the one of the at least one storage apparatus to obtain the information indicating whether the data that is associated with the calculated identification information is stored;

use the obtained information to determine whether the data to be written to the one of the at least one storage apparatus has duplicate data, which is the same data already stored in any one of the at least one storage apparatus; and

transmit deduplicated data, which no longer has the duplicate data, to the one of the at least one storage apparatus, and request that the transmitted data be written, and

wherein the one of the at least one storage apparatus is managed to store the data requested by the computer to be written, and

wherein the computer is programmed to use at least one of individual pieces of identification information and a range of pieces of identification information, depending on how many pieces of identification information appear in succession, to request the information indicating whether the data that is associated with the calculated identification information is stored from the one of the at least one storage apparatus.

2. The computer system according to claim 1 , wherein the computer is programmed to: express identification information for requesting the information by a minimum value of pieces of identification information within a range of the plurality of successive pieces of identification information and a number of pieces of identification information within the range of the plurality of successive pieces of identification information in a case where the request concerns a plurality of successive pieces of identification information; and express the identification information for requesting the information by a minimal value of pieces of identification information within a range of the plurality of discretely close pieces of identification information and a difference between adjacent pieces of identification information in a case where the request concerns a plurality of pieces of identification information discretely close to one another.

3. The computer system according to claim 1 , wherein the computer is programmed to determine whether one of or both of individual pieces of identification information and a range of pieces of identification information is to be used in order to reduce an amount of data for representing the identification information.

4. The computer system according to claim 1 , wherein the at least one storage apparatus includes a first storage apparatus and a second storage apparatus, wherein the computer is programmed to request the information indicating whether the data that is associated with the calculated identification information is stored from the first storage apparatus,

wherein the first storage apparatus is managed to:

request, in a case where the information indicating whether the data that is associated with the calculated identification information is stored is not managed by the first storage apparatus, the information indicating whether the data that is associated with the calculated identification information is stored from the second storage apparatus, which manages the information, to obtain the information indicating whether the data that is associated with the calculated identification information is stored; and

send the requested information indicating whether the data that is associated with the calculated identification information is stored to the computer in response, and

wherein the first storage apparatus is managed to use at least one of individual pieces of identification information or a range of pieces of identification information, depending on how many pieces of identification information appear in succession, to request the requested information indicating whether the data that is associated with the calculated identification information is stored from the second storage apparatus.

5. The computer system according to claim 1 , wherein the one of the at least one storage apparatus is managed to compress data requested by the computer to be written, and to store the compressed data in the storage device.

6. The computer system according to claim 1 , wherein the one of the at least one storage apparatus is managed to: determine whether data requested by the computer to be written has duplicate data, which has the same information as information of data already stored in any one of the at least one storage apparatus; and store deduplicated data, which no longer has the duplicate data, in the storage device.

7. The computer system according to claim 6 , wherein the at least one storage apparatus includes a first storage apparatus and a second storage apparatus, wherein the first storage apparatus is managed to:

calculate identification information indicating specifics of data that is requested by the computer to be written; request, in a case where the information indicating whether the data that is associated with the calculated identification information is stored is not managed by the first storage apparatus, the information indicating whether the data that is associated with the calculated identification information is stored from the second storage apparatus, which manages the information, to obtain the information indicating whether the data that is associated with the calculated identification information is stored;

use the information indicating whether the data that is associated with the calculated identification information is stored to deter mine whether the data to be written to one of the first storage apparatus and the second storage apparatus has duplicate data, which has the same information as information of data already stored in one of the first storage apparatus and the second storage apparatus; and store deduplicated data, which no longer has the duplicate data, in the storage device, and wherein the first storage apparatus is managed to use at least one of:

individual pieces of identification information; or a range of pieces of identification information, depending on how many pieces of identification information appear in succession, to request the requested information indicating whether the data that is associated with the calculated identification information is stored from the second storage apparatus.

8. A storage apparatus, comprising:

at least one storage device in which data is stored; and

a processor programmed to manage input and output of data to and from the storage device,

wherein the storage apparatus is coupled to a computer programmed to request the storage apparatus to write data, wherein the processor programmed to:

manage identification information indicating specifics of the stored data; calculate identification information indicating specifics of data to be written to one of the at least one storage device;

request information indicating whether the data that is associated with the calculated identification information is stored to the one of the at least one storage device to obtain the information indicating whether the data that is associated with the calculated identification information is stored;

use the obtained information to deter mine whether the data to be written to the one of the at least one storage device has duplicate data, which is the same data already stored in any one of the at least one storage device; and

transmit deduplicated data, which no longer has the duplicate data, to the one of the at least one storage device, and request that the transmitted data be written, and wherein the one of the at least one storage device is programmed to store the data requested by the processor to be written, and wherein the processor is programmed to use at least one of individual pieces of identification information and a range of pieces of identification information, depending on how many pieces of identification information appear in succession, to request the information indicating whether the data that is associated with the calculated identification information is stored from the one of the at least one storage device.

9. The storage apparatus according to claim 8 , wherein the processor is programmed to:

express identification information for requesting the information by a minimum value of pieces of identification information within a range of the plurality of successive pieces of identification information and a number of pieces of identification information within the range of the plurality of successive pieces of identification information in a case where the request concerns a plurality of successive pieces of identification information; and

express the identification information for requesting the information by a minimal value of pieces of identification information within a range of the plurality of discretely close pieces of identification information and a difference between adjacent pieces of identification information in a case where the request concerns a plurality of pieces of identification information discretely close to one another.

10. The storage apparatus according to claim 8 , wherein the processor is programmed to determine whether one of or both of:

individual pieces of identification information; and a range of pieces of identification information is to be used in order to reduce an amount of data for representing the identification information.

11. The storage apparatus according to claim 8 , wherein the at least one storage device includes a first storage device and a second storage device, wherein the processor is programmed to request the information indicating whether the data that is associated with the calculated identification information is stored from the first storage device, wherein the first storage device is programmed to: request, in a case where the requested information indicating whether the data that is associated with the calculated identification information is stored is not managed by the first storage device, the information indicating whether the data that is associated with the calculated identification information is stored from the second storage device, which manages the information, to obtain the information indicating whether the data that is associated with the calculated identification information is stored; and send the requested information indicating whether the data that is associated with the calculated identification information is stored to the processor in response, and wherein the first storage device is programmed to use at least one of: individual pieces of identification information; or a range of pieces of identification information, depending on how many pieces of identification information appear in succession, to request the requested information indicating whether the data that is associated with the calculated identification information is stored from the second storage device.

12. The storage apparatus according to claim 8 , wherein the one of the at least one storage device is programmed to compress data requested by the processor to be written, and to store the compressed data in the one of the at least one storage device.

13. The storage apparatus according to claim 8 , wherein the one of the at least one storage device is programmed to: deter mine whether data requested by the processor to be written has duplicate data, which has the same information as information of data already stored in any one of the at least one storage apparatus; and store deduplicated data, which no longer has the duplicate data, in the one of the at least one storage device.

14. The storage apparatus according to claim 13 , wherein the at least one storage device includes a first storage device and a second storage device, and wherein the first storage device is programmed to: calculate identification information indicating specifics of data that is requested by the processor to be written; request, in a case where the information indicating whether the data that is associated with the calculated identification information is stored is not managed by the first storage device, the information indicating whether the data that is associated with the calculated identification information is stored from the second storage device, which manages the information, to obtain the information indicating whether the data that is associated with the calculated identification information is stored; use the information indicating whether the data that is associated with the calculated identification information is stored to determine whether the data to be written to one of the first storage device and the second storage device has duplicate data, which has the same information as information of data already stored in one of the first storage device and the second storage device; and store deduplicated data, which no longer has the duplicate data, in any one of the first storage device and the second storage device.

15. A method of managing data in a computer system having a deduplication function, the computer system comprising: at least one storage apparatus each comprising a storage device in which data is stored; and a computer programmed to request the at least one storage apparatus to write data, the method of managing data including steps of:

managing, by each of the at least one storage apparatus, identification information indicating specifics of the data stored in the each of the at least one storage apparatus;

calculating, by the computer, identification information indicating specifics of data to be written to one of the at least one storage apparatus; requesting, by the computer, information indicating whether data that is associated with the calculated identification information is stored from the one of the at least one storage apparatus to obtain the information indicating whether the data that is associated with the calculated identification information is stored; using, by the computer, the obtained information to determine whether the data to be written to the one of the at least one storage apparatus has duplicate data, which is the same data already stored in any one of the at least one storage apparatus; transmitting, by the computer, deduplicated data, which no longer has the duplicate data, to the one of the at least one storage apparatus, and requesting that the transmitted data be written; and storing, by the one of the at least one storage apparatus, the data requested by the computer to be written, wherein the step of obtaining the information includes step of using, by the computer, at least one of individual pieces of identification information and a range of pieces of identification information, depending on how many pieces of calculated identification information appear in succession, to request the information indicating whether the data that is associated with the calculated identification information is stored from the one of the at least one storage apparatus.

Assignments (2)
COMPANY SPLIT Recorded Aug 20, 2024
From: HITACHI, LTD.
To: HITACHI VANTARA, LTD.
Reel/Frame 069518/0761 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 27, 2018
From: HAYASAKA, MITSUO; MATSUZAWA, KEIICHI
To: HITACHI LTD.
Reel/Frame 045044/0435 →
Continuity (1)
Related Publication 20180253251A1 · Sep 6, 2018