×

Systems and methods for transformation of logical data objects for storage

  • US 9,323,773 B2
  • Filed: 03/28/2012
  • Issued: 04/26/2016
  • Est. Priority Date: 05/31/2006
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method for reading data from a transformed logical object comprising a plurality of transformed storage sections, said method comprising:

  • receiving, by a processor, a plurality of data chunks for storage in the transformed logical object;

    comparing a characteristic of each data chunk to a predefined criterion comprising estimated or actual time of transformation of each data chunk;

    transforming each data chunk and accumulating each transformed data chunk in a first storage section if the predefined characteristic matches the characteristic of each particular data chunk;

    identifying each data chunk as being non-transformed or partly transformed and accumulating each non-transformed data chunk and each partly transformed data chunk in a second storage section if the predefined characteristic does not match the characteristic of each particular data chunk;

    receiving, by the processor, a read request to read a range of data stored in the transformed logical object, wherein the read request includes a starting point in time at which the data was stored;

    identifying the range of data utilizing the starting point in time included in the read request;

    selecting a last-updated data related to the range of data, wherein the last-updated data is included in an index entry that facilitates a one-to-one relationship between the range of data and live data to be extracted from the transformed logical object;

    de-transforming the first storage section including a first portion of the live data to generate first data;

    determining that the second storage section includes a second portion of the live data;

    de-transforming the partly transformed data chunks in the second storage section to generate second data comprising a combination of the de-transformed partly transformed data chunks and the non-transformed data chunks;

    identifying each portion of the requested range of data included in the first data and the second data;

    storing each portion of the requested range of data identified in the first data and the second data in cache; and

    transmitting each portion of the requested range of data identified in the first data and the second data from the cache to a requestor, wherein;

    the first portion of the live data is less than the first storage section in its entirety, andthe second portion of the live data is less than the second storage section in its entirety.

View all claims
  • 0 Assignments
Timeline View
Assignment View
    ×
    ×