IP Library Patent Application 12432024
Patent Application
App. No. 12/432,024

CONTENT-BASED WRITE REDUCTION

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 None
App. No.
12/432,024
Abstract

Apparatus, systems, and methods may operate to detect a write request to write new data to a storage medium, to generate a coded version of the new data, to compare the coded version of the new data to a coded version of old data stored in the storage medium, and to refrain from writing the new data to the storage medium when the coded version of the new data is equal to the coded version of the old data. Additional apparatus, systems, and methods are disclosed.

Claims (48)

1 . An apparatus, comprising:

a node including a detection module to detect a write request to write new data to an area of a storage medium; and

a processor to generate a coded version of the new data, to compare the coded version of the new data to a coded version of old data stored in the area, and to prevent writing the new data to the area when the coded version of the new data is equal to the coded version of the old data.

2 . The apparatus of claim 1 , further comprising:

the storage medium.

3 . The apparatus of claim 1 , further comprising:

a memory to store the coded version of the old data as meta data associated with a file containing the old data.

4 . A system, comprising:

a first node to issue a write request associated with new data comprising at least a portion of a data file; and

a second node including a detection module to detect the write request to write the new data, and a processor to generate a coded version of the new data, to compare the coded version of the new data to a coded version of old data stored in an area of a storage medium, and to prevent writing the new data to the area when the coded version of the new data is equal to the coded version of the old data.

5 . The system of claim 4 , wherein the storage medium comprises:

an array of disks.

6 . The system of claim 4 , further comprising:

a display coupled to the first node to display a visible representation of the portion.

7 . A processor-implemented method to execute on one or more processors that perform the method, comprising:

detecting a write request to write new data to an area of a storage medium;

generating a coded version of the new data;

comparing the coded version of the new data to a coded version of old data stored in the area; and

refraining from writing the new data to the area when the coded version of the new data is equal to the coded version of the old data.

8 . The method of claim 7 , further comprising:

storing the coded version of the old data as meta data prior to the detecting.

9 . The method of claim 8 , wherein the meta data comprises a portion of file meta data.

10 . The method of claim 7 , further comprising:

writing the new data to the area when the coded version of the new data differs from the coded version of the old data.

11 . The method of claim 7 , wherein the storage medium comprises:

a disk.

12 . The method of claim 7 , wherein the area comprises at least one block of memory.

13 . The method of claim 7 , wherein the coded version of the new data comprises a hash of the new data.

14 . The method of claim 7 , wherein the write request is associated with detecting selection of a save command used in one of a word processing application program, a spreadsheet application program, a presentation application program, or a calendar processing application program.

15 . The method of claim 7 , further comprising:

repeating the refraining for a plurality of blocks in a single file until a hash of the data to be written to one of the plurality of blocks is not equal to a hash of the data already written to the one of the plurality of blocks.

16 . A processor-implemented method to execute on one or more processors that perform the method, comprising:

receiving, at a server, a write request to write new data to an area of a multi-disk storage medium coupled to the server;

generating a coded version of the new data;

comparing the coded version of the new data to a coded version of old data stored in the area of the multi-disk storage medium; and

refraining from writing the new data to the area of the multi-disk storage medium when the coded version of the new data is equal to the coded version of the old data.

17 . The method of claim 16 , wherein the receiving further comprises:

receiving the write request from one of a plurality of clients coupled to the server by a network.

18 . The method of claim 16 , wherein the coded version of the new data comprises a hash coded version of the new data or a cyclic redundancy check coded version of the new data.

19 . The method of claim 16 , further comprising:

storing the new data in a data cache prior to the generating.

20 . The method of claim 16 , further comprising:

storing the coded version of the new data in a meta data storage area.

21 . The method of claim 16 , further comprising:

reading the coded version of the old data into memory responsive to booting the server.

22 . The method of claim 16 , wherein the area of the multi-disk storage medium comprises a plurality of blocks.

23 . The method of claim 16 , further comprising:

writing the new data to the area of the multi-disk storage medium when the coded version of the old data does not exist.

Assignments (14)
RELEASE OF SECURITY INTEREST REEL/FRAME 035656/0251 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.)
Reel/Frame 062623/0009 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT TYPO IN APPLICATION NUMBER 10708121 WHICH SHOULD BE 10708021 PREVIOUSLY RECORDED ON REEL 042388 FRAME 0386. ASSIGNOR(S) HEREBY CONFIRMS THE NOTICE OF SUCCESSION OF AGENCY. Recorded Jul 26, 2018
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 048793/0832 →
NOTICE OF SUCCESSION OF AGENCY Recorded May 2, 2017
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 042388/0386 →
CHANGE OF NAME Recorded Sep 13, 2016
From: NOVELL, INC.
To: MICRO FOCUS SOFTWARE INC.
Reel/Frame 040020/0703 →
SECURITY INTEREST Recorded May 13, 2015
From: MICRO FOCUS (US), INC.; BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; NOVELL, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 035656/0251 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 028252/0216 Recorded Nov 24, 2014
From: CREDIT SUISSE AG
To: NOVELL, INC.
Reel/Frame 034470/0680 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 028252/0316 Recorded Nov 24, 2014
From: CREDIT SUISSE AG
To: NOVELL, INC.
Reel/Frame 034469/0057 →
GRANT OF PATENT SECURITY INTEREST FIRST LIEN Recorded May 23, 2012
From: NOVELL, INC.
To: CREDIT SUISSE AG, AS COLLATERAL AGENT
Reel/Frame 028252/0216 →
GRANT OF PATENT SECURITY INTEREST SECOND LIEN Recorded May 23, 2012
From: NOVELL, INC.
To: CREDIT SUISSE AG, AS COLLATERAL AGENT
Reel/Frame 028252/0316 →
RELEASE OF SECURITY INTEREST IN PATENTS FIRST LIEN (RELEASES RF 026270/0001 AND 027289/0727) Recorded May 22, 2012
From: CREDIT SUISSE AG, AS COLLATERAL AGENT
To: NOVELL, INC.
Reel/Frame 028252/0077 →
RELEASE OF SECURITY IN PATENTS SECOND LIEN (RELEASES RF 026275/0018 AND 027290/0983) Recorded May 22, 2012
From: CREDIT SUISSE AG, AS COLLATERAL AGENT
To: NOVELL, INC.
Reel/Frame 028252/0154 →
GRANT OF PATENT SECURITY INTEREST (SECOND LIEN) Recorded May 13, 2011
From: NOVELL, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 026275/0018 →
GRANT OF PATENT SECURITY INTEREST Recorded May 12, 2011
From: NOVELL, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 026270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2009
From: SELVAN, ARUL
To: NOVELL, INC.
Reel/Frame 022754/0397 →