Patent ID: 8370804
Filing Date: 2013-02-05
Classification: G06F

Abstract:
1. A method comprising: initializing, by a computer, a first pointer to point to a beginning of a first version of data that is in a buffer, and a second pointer to point to a beginning of a second version of the data that is appended in the buffer to an end of the first version, and wherein an end of the buffer corresponds to an end of the second version; determining, by the computer in response to the reading and the appending, if any first portion of the data is identical to a second portion of the data, wherein the any first portion is located in the buffer before the second portion, and wherein the second portion is pointed to by the second pointer, and wherein the any first portion and the second portion are determined to be identical based on an encoding scheme; encoding into a delta data module according to the encoding scheme, if the any first portion and the second portion are determined to be identical, the any first portion using an offset from a location in the buffer pointed to by a pointer selected from the first pointer and the second pointer, wherein the selected pointer points to a location in the buffer that is nearest to the identical any first portion, and, if the any first portion and the second portion are not determined to be identical, a unit of the data that is pointed to by the second pointer; adjusting, by the computer in response to the encoding, the first pointer and the second pointer by a size of the any first portion or the unit of data; repeating, by the computer in response to the adjusting, the determining and the encoding and the adjusting until the second pointer points to a location past the end of the buffer.