IP Library Granted Patent US 10,387,253
Granted Patent B2
US 10,387,253 · App. 15/686,908 · Granted Aug 20, 2019

System and method to utilize larger block sizes for logical disk and further decompose into smaller physical block sizes for redundant encoding by utilizing erasure coding

Inventor: Guillermo Juan Rozas (Los Gatos, CA)
G06F11/1076H03M13/154H03M13/23H03M13/373H03M13/3761G06F3/064H04L1/0057H04L1/0083
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,387,253
App. No.
15/686,908
Granted
Aug 20, 2019
Kind
B2
Abstract

Disclosed are a method and device in a network for utilizing larger block sizes for a logical disk, and further decomposing into smaller physical block sizes for a redundant encoding by utilizing an erasure coding logic to avoid a read□modify□write operation on a plurality of write operations. The device includes a receiving module, an encoding module, and a transmitting module. The receiving module configured to obtain a read request or a write request of a large block size to a storage unit over a network. In an embodiment, the storage unit comprising a plurality of physical devices of a smaller blocks size that is a divisor of the large block size. The encoding module to encode the received requests redundantly to persist media failures by reconstructing the requests on reads using the redundancy. The transmitting module transmits either a request command to initiate a read operation or an acknowledgment data on completion of a write operation.

Claims (23)

1. A method to utilize larger block sizes for a logical disk, and further decompose into smaller physical block sizes for a redundant encoding by utilizing an erasure coding logic, the method comprising the steps of:

receiving, by a processor of a computing device, a read request, and a write request of a large block size to a storage unit over a network, wherein the storage unit comprising a plurality of physical devices, wherein the step of receiving the read request comprising the steps of: mapping the plurality of physical devices with a portion of the read request, and further de-interleaving the mapped portion; transmitting a set of parallel read sub-requests to the plurality of physical devices to receive a corresponding partial data; and producing a result by interleaving and concatenating the data which is different from the corresponding partial data;

encoding, by the processor, the received read request and the write request to persist media failures by reconstructing the requests on reads using the redundancy; and

transmitting, by the processor, either a request command to initiate a read operation and an acknowledgment data on completion of a write operation.

2. The method as claimed in claim 1 , wherein the step of receiving the write request comprising the step of:

de-interleaving into parts that correspond to a plurality of non-parity physical devices; and

computing redundant ‘parity’ blocks, and transmitting the parts including non-parity and parity to the appropriate physical devices.

3. A device in a network, comprising:

a non-transitory storage device having embodied therein one or more routines operable to utilize larger block sizes for a logical disk, and further decompose into smaller physical block sizes for a redundant encoding by utilizing an erasure coding logic; and

one or more processors coupled to the non-transitory storage device and operable to execute the one or more routines, wherein the one or more routines include:

a receiving module configured to obtain a read request, and a write request of a large block size to a storage unit over a network, wherein the storage unit comprising a plurality of physical devices, wherein the receiving module is configured to: map the plurality of physical devices with a portion of the read request, and further de-interleaving the mapped portion; transmit a set of parallel read sub-requests to the plurality of physical devices to receive a corresponding partial data; and produce a result by interleaving and concatenating the data which is different from the corresponding partial data;

an encoding module configured to encode the received to persist media failures by reconstructing the requests on reads using the redundancy; and

a transmitting module configured to transmit either a request command to initiate a read operation and an acknowledgment data on completion of a write operation.

4. The device as claimed in claim 3 , wherein the receiving module which receives the read request is further configured to:

de-interleave into parts that correspond to a plurality of non-parity physical devices; and

compute redundant ‘parity’ blocks, and transmits the parts including non-parity and parity to the appropriate physical devices.

5. A method to utilize a zero-padded erasure coding scheme including an equal volume of a logical disk, and a physical disk, the method comprising the steps of:

receiving, by a processor of a computing device, a read request, and a write request of a logical disk to a storage unit over a network, wherein the storage unit comprising a plurality of physical devices of a physical disk to perform compression to recover desired data efficiency;

encoding, by the processor, the received requests to persist media failures by reconstructing the requests on reads using the redundancy;

performing, by the processor, at least one of interleaving, de-interleaving, and padding at sub-512 bytes to support the logical volume of the 512 bytes;

transmitting, by the processor, either a request command to initiate a read operation and an acknowledgment data on completion of a write operation, and

reducing data by not storing the padded zeros while physical disk performs compression to recover desired data efficiency.

6. The method as claimed in claim 5 , wherein the zeros are added for padding to preserve granularity of the logical volume of 512 bytes.

Assignments (4)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2021
From: DATERA, INC.
To: DATERA, LLC
Reel/Frame 056333/0705 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2021
From: DATERA, LLC
To: VMWARE, INC.
Reel/Frame 056333/0777 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2018
From: ROZAS, GUILLERMO JUAN
To: DATERA INC.
Reel/Frame 044606/0407 →
Continuity (1)
Related Publication 20190065310A1 · Feb 28, 2019
Cited By (1)
US 12,646,613