Zeroed block optimization in disk mirroring applications
First Claim
1. A method for duplicating data written to a first storage device on a second storage device, the method comprising the steps of:
- intercepting a write request directed to said first storage device, said write request including at least one data block; and
for each data block included within said write request;
examining said data block to determine if said data block contains only zero data;
if said data block contains only zero data, sending a request to said second storage device to create a zeroed block; and
if said data block contains non-zero data, transmitting said data block to said second storage device.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods for optimizing disk mirroring synchronization and write operations. Disk mirror synchronization, wherein date stored on a first storage device is duplicated on a second storage device, is performed by examining each data block contained within the first storage device and identifying data blocks that contain only zero data and data blocks containing non-zero data. Requests are sent to the second storage device to create a zeroed data block corresponding to each data block on the first disk device that contains only zero data. A copy of each data block on the first disk drive that contains non-zero data is written to the second storage device. Disk mirror write operations, wherein data written to the first storage device is duplicated on the second storage device, are optimized by intercepting write requests directed to the first storage device, and examining each data block within the write requests to determine if the data block contains only zero data. If a data block contains only zero data, a request is sent to the second storage device to create a zeroed block. If a data block contains non-zero data, the data block is transmitted to the second storage device.
-
Citations
10 Claims
-
1. A method for duplicating data written to a first storage device on a second storage device, the method comprising the steps of:
-
intercepting a write request directed to said first storage device, said write request including at least one data block; and
for each data block included within said write request;
examining said data block to determine if said data block contains only zero data;
if said data block contains only zero data, sending a request to said second storage device to create a zeroed block; and
if said data block contains non-zero data, transmitting said data block to said second storage device. - View Dependent Claims (2)
said first and second storage devices are sited at different locations within a computer network.
-
-
3. A method for duplicating data residing on a first storage device on a second storage device, said first storage device containing at least one data block, the method comprising the steps of:
-
for each data block contained on said first storage device;
examining said data block to determine if said data block contains only zero data;
if said data block contains only zero data, sending a request to said second storage device to create a zeroed block; and
if said data block contains non-zero data, transmitting said data block to said second storage device. - View Dependent Claims (4)
said first and second storage devices are sited at different locations within a computer network.
-
-
5. Apparatus comprising:
-
a first storage device connected to receive write requests from a computer system;
a second storage device connected to said computer system;
means for intercepting a write request directed to said first storage device, said write request including at least one data block;
means for examining each data block included with said write request and identifying data blocks that contain only zero data and data blocks containing non-zero data;
means for sending a request to said second storage device to create a zeroed block corresponding to each data block that contains only zero data; and
means for writing to said second storage device a copy of each data block containing non-zero data. - View Dependent Claims (6)
a network connecting said first and second storage devices, said first and second storage devices being sited at different locations within said network.
-
-
7. Apparatus comprising:
-
a first storage device connected to a computer system;
said first storage device containing a plurality of data blocks;
a second storage device connected to said computer system;
means for examining each data block contained within said first storage device and identifying data blocks that contain only zero data and data blocks containing non-zero data;
means for sending a request to said second storage device to create a zeroed block corresponding to each data block that contains only zero data; and
means for writing to said second storage device a copy of each data block containing non-zero data. - View Dependent Claims (8)
a network connecting said first and second storage devices, said first and second storage devices being sited at different locations within said network.
-
-
9. Apparatus comprising:
-
a first server computer including a first storage device connected to receive write requests from a computer system;
a second server computer including a second storage device;
a communications network connecting said first and second server computers;
means for intercepting a write request directed to said first storage device, said write request including at least one data block;
means for examining each data block included with said write request and identifying data blocks that contain only zero data and data blocks containing non-zero data;
means for sending a request to said second storage device to create a zeroed block corresponding to each data block that contains only zero data; and
means for writing to said second storage device a copy of each data block containing non-zero data.
-
-
10. Apparatus comprising:
-
a first server computer including a first storage device connected to receive write requests from a computer system;
a second server computer including a second storage device;
a communications network connecting said first and second server computers;
means for examining each data block contained within said first storage device and identifying data blocks that contain only zero data and data blocks containing non-zero data;
means for sending a request to said second storage device to create a zeroed block corresponding to each data block that contains only zero data; and
means for writing to said second storage device a copy of each data block containing non-zero data.
-
Specification