IP Library Granted Patent US 9,058,113
Granted Patent B2
US 9,058,113 · App. 13/240,611 · Granted Jun 16, 2015

Storage region providing device, storage region providing method, and recording medium

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 9,058,113
App. No.
13/240,611
Granted
Jun 16, 2015
Kind
B2
Abstract

A storage region providing device provides a physical storage region (a physical region) as a virtual storage region (a logical region). The device accepts a writing request including data and information for specifying a partial logical region that is part of the logical region. In a case that part of the physical region is not allocated yet to a partial logical region specified by a writing request, the device allocates at least part of an initial allocation region of the physical allocation region to the partial logical region. The device moves data stored in the partial physical region included in the initial allocation region, to a movement destination region that is at least part of a reallocation region other than the initial allocation region of the physical region, and reallocates the movement destination region to the partial logical region.

Claims (53)

1. A storage region providing device configured to provide a physical region that is a physical storage region of a storage device as a logical region that is a virtual storage region, the storage region providing device comprising:

hardware, including a processor and a computer-readable medium storing a computer program;

a writing request acceptance unit configured to accept a writing request including data and partial logical region specification information for specifying a partial logical region that is part of the logical region;

an allocation determination unit configured to determine whether part of the physical region is already allocated to the partial logical region specified by the partial logical region specification information included in the accepted writing request;

an initial allocation unit configured to, in a case that part of the physical region is not yet allocated to the partial logical region specified by the partial logical region specification information included in the accepted writing request, allocate at least part of an initial allocation region of the physical region to the partial logical region;

a data writing unit configured to store the data included in the accepted writing request into a partial physical region that is part of the physical region and is allocated to the partial logical region specified by the partial logical region specification information included in the writing request;

a reallocation unit configured to move data stored in the partial physical region included in the initial allocation region to a movement destination region that is at least part of a reallocation region that is other than the initial allocation region of the physical region, and reallocate the movement destination region to the partial logical region with the partial physical region allocated; and

a retrieval request acceptance unit configured to accept a retrieval request including partial logical region specification information for specifying a partial logical region that is part of the logical region and is a continuous region in the logical region,

wherein the reallocation unit is configured to, in a case that a partial physical region, which is part of the physical region and allocated to the partial logical region specified by the partial logical region specification information included in the accepted retrieval request, is included in the initial allocation region, acquire a size of the partial logical region and determine the movement destination region so that the movement destination region is continuous over the acquired size,

wherein functionality of each unit is realized by execution of the computer program by the processor.

2. The storage region providing device according to claim 1 , wherein:

the physical region is composed of a plurality of physical allocation units;

the logical region is composed of a plurality of logical allocation units;

the storage region providing device is configured to allocate part of the physical region to part of the logical region by allocating the physical allocation unit to the logical allocation unit; and

a size of the physical allocation unit composing the initial allocation region is equal to or less than a size of the physical allocation unit composing the reallocation region.

3. The storage region providing device according to claim 2 , wherein:

the reallocation region includes a plurality of reallocation partial regions each composed of the physical allocation unit, and a size of the physical allocation unit is different depending on the reallocation partial regions; and

the reallocation unit is configured to, in a case that the partial physical region allocated to the partial logical region specified by the partial logical region specification information included in the accepted retrieval request is included in the initial allocation region, select one of the plurality of reallocation partial regions based on a size of the partial logical region, and reallocate at least part of the selected reallocation partial region to the partial logical region.

4. The storage region providing device according to claim 2 , comprising an allocation information storage unit configured to store logical allocation unit identification information for identifying the logical allocation unit and physical allocation unit identification information for identifying the physical allocation unit allocated to the logical allocation unit so as to be related to each other,

wherein the allocation determination unit is configured to, in a case that the physical allocation unit identification information is stored so as to be related to the logical allocation unit identification information for identifying the logical allocation unit composing the partial logical region, determine that part of the physical region is already allocated to the partial logical region.

5. The storage region providing device according to claim 2 , comprising an initial allocation information storage unit configured to store logical allocation unit identification information for identifying the logical allocation unit and initial allocation information representing whether the physical allocation unit allocated to the logical allocation unit is included in the initial allocation region so as to be related to each other,

wherein the reallocation unit is configured to, in a case that the initial allocation information representing that the physical allocation unit allocated to the logical allocation unit is included in the initial allocation region is stored in the initial allocation information storage unit so as to be related to the logical allocation unit identification information for identifying the logical allocation unit composing the partial logical region, determine that the partial physical region allocated to the partial logical region is included in the initial allocation region.

6. The storage region providing device according to claim 1 , wherein:

the physical region is configured by storage regions of a plurality of storage devices each having a different random retrieval speed depending on the storage devices, the random retrieval speed being a speed of retrieval of data from a plurality of partial regions located at random, and

the initial allocation region is configured by a storage region of the storage device having the highest random retrieval speed among the plurality of storage devices.

7. A storage region providing method for providing a physical region that is a physical storage region of a storage device as a logical region that is a virtual storage region, the storage region providing method comprising:

accepting a writing request including data and partial logical region specification information for specifying a partial logical region that is part of the logical region;

determining whether part of the physical region is already allocated to the partial logical region specified by the partial logical region specification information included in the accepted writing request;

in a case that part of the physical region is not yet allocated to the partial logical region specified by the partial logical region specification information included in the accepted writing request, allocating at least part of an initial allocation region of the physical region to the partial logical region;

storing the data included in the accepted writing request into a partial physical region that is part of the physical region and is allocated to the partial logical region specified by the partial logical region specification information included in the writing request;

moving data stored in the partial physical region included in the initial allocation region to a movement destination region that is at least part of a reallocation region that is other than the initial allocation region of the physical region, and reallocating the movement destination region to the partial logical region with the partial physical region allocated;

accepting a retrieval request including partial logical region specification information for specifying a partial logical region that is part of the logical region and is a continuous region in the logical region; and

in a case that a partial physical region, which is part of the physical region and allocated to the partial logical region specified by the partial logical region specification information included in the accepted retrieval request, is included in the initial allocation region, acquiring a size of the partial logical region and determining the movement destination region so that the movement destination region is continuous over the acquired size.

8. The storage region providing method according to claim 7 , wherein:

the physical region is composed of a plurality of physical allocation units;

the logical region is composed of a plurality of logical allocation units;

the storage region providing method comprises allocating part of the physical region to part of the logical region by allocating the physical allocation unit to the logical allocation unit; and

a size of the physical allocation unit composing the initial allocation region is equal to or less than a size of the physical allocation unit composing the reallocation region.

9. A non-transitory computer-readable recording medium that records a storage region providing program comprising instructions for causing an information processing device to provide a physical region that is a physical storage region of a storage device as a logical region that is a virtual storage region,

wherein the storage region providing program comprises instructions for causing the information processing device to realize:

a writing request acceptance unit configured to accept a writing request including data and partial logical region specification information for specifying a partial logical region that is part of the logical region;

an allocation determination unit configured to determine whether part of the physical region is already allocated to the partial logical region specified by the partial logical region specification information included in the accepted writing request;

an initial allocation unit configured to, in a case that part of the physical region is not yet allocated to the partial logical region specified by the partial logical region specification information included in the accepted writing request, allocate at least part of an initial allocation region of the physical region to the partial logical region;

a data writing unit configured to store the data included in the accepted writing request into a partial physical region that is part of the physical region and is allocated to the partial logical region specified by the partial logical region specification information included in the writing request;

a reallocation unit configured to move data stored in the partial physical region included in the initial allocation region to a movement destination region that is at least part of a reallocation region that is other than the initial allocation region of the physical region, and reallocate the movement destination region to the partial logical region with the partial physical region allocated; and

a retrieval request acceptance unit configured to accept a retrieval request including partial logical region specification information for specifying a partial logical region that is part of the logical region and is a continuous region in the logical region,

wherein the reallocation unit is configured to, in a case that a partial physical region, which is part of the physical region and allocated to the partial logical region specified by the partial logical region specification information included in the accepted retrieval request, is included in the initial allocation region, acquire a size of the partial logical region and determine the movement destination region so that the movement destination region is continuous over the acquired size,

wherein functionality of each unit is realized by execution of the storage region providing program by a processor of the information processing device.

10. The non-transitory recording medium according to claim 9 , wherein:

the physical region is composed of a plurality of physical allocation units;

the logical region is composed of a plurality of logical allocation units;

the storage region providing program comprises instructions for causing the information processing device to allocate part of the physical region to part of the logical region by allocating the physical allocation unit to the logical allocation unit; and

a size of the physical allocation unit composing the initial allocation region is equal to or less than a size of the physical allocation unit composing the reallocation region.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2024
From: IP WAVE PTE LTD.
To: CLOUD BYTE LLC.
Reel/Frame 067944/0332 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2024
From: NEC ASIA PACIFIC PTE LTD.
To: IP WAVE PTE LTD.
Reel/Frame 066376/0276 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2023
From: NEC CORPORATION
To: NEC ASIA PACIFIC PTE LTD.
Reel/Frame 063349/0459 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2011
From: INAGAKI, TOMOKAZU
To: NEC CORPORATION
Reel/Frame 026956/0444 →