IP Library Granted Patent US 8,370,402
Granted Patent B2
US 8,370,402 · App. 12/177,006 · Granted Feb 5, 2013

Dual representation of stored digital content

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 8,370,402
App. No.
12/177,006
Granted
Feb 5, 2013
Kind
B2
Abstract

Various methods, devices and systems are described for providing dual representation of stored digital content are described where the dual representation includes logical block data and corresponding data objects. Data object property information is synchronized with the data objects.

Claims (30)

1. A local storage device, the local storage device configured for communication with a host device having a host application and a host device file system arranged to generate a block command, the local storage device, comprising:

a data storage array, wherein the data storage array is arranged to include a first portion and a second portion, the first portion being a mass storage portion arranged to store logical data blocks and corresponding data objects, the second portion being arranged to store a predetermined set of data object properties corresponding to the logical data blocks stored in the first portion; and

a controller in communication with the data storage array and having a synchronization unit, the controller configured to manage data stored in the data storage array as logical block data via a first logical interface and data objects corresponding to the data stored as logical data blocks via a second logical interface, wherein the first and the second logical interfaces are in communication with the data storage array; and

wherein, when at least some of the data stored as logical data blocks is modified by way of the first logical interface, the synchronization unit of the controller is configured to update the predefined set of data object properties correspondingly such that the data object properties and modified data are synchronized and the modified data is accessible by way of both the first and the second logical interfaces.

2. The local storage device of claim 1 , wherein the predetermined set of data object properties is defined by the local storage device.

3. The local storage device of claim 2 , wherein the predetermined set of data object properties is defined by the host device.

4. The local storage device of claim 1 , wherein the predetermined set of data object properties includes an object name, an object size, and a number of times the object has been accessed.

5. The local storage device of claim 1 , wherein the synchronization unit is configured to update the predetermined set of data object properties by recognizing data access patterns.

6. The local storage device of claim 1 , wherein the synchronization unit is configured to update the predetermined set of data object properties based on an observed data flow over the first logical interface.

7. A local storage device configured for communication with a host device having a host application and a host device file system, the local storage device comprising:

a data storage array, wherein the data storage array is arranged to include a first portion and a second portion, the first portion being a mass storage portion arranged for logical data blocks and corresponding data objects, the second portion being arranged for a predetermined set of data object properties corresponding to the logical data blocks in the first portion; and

a controller in communication with the data storage array and having a synchronization unit arranged to update a predetermined set of data objects, the controller configured to manage data stored in the mass storage portion of the data storage array as logical data blocks via a first logical interface and configured to manage data objects corresponding to the data stored as logical data blocks via a second logical interface, wherein the first and the second logical interfaces are in communication with the data storage array;

wherein, when a write-related command is received via the second logical interface, the synchronization unit of the controller is configured to update a data object in the first portion of the storage array and update the predefined set of data object properties corresponding to the updated data object.

8. The local storage device of claim 7 , wherein the predetermined set of object properties is defined by the local storage device.

9. The local storage device of claim 7 , wherein the predetermined set of object properties is defined by the HD.

10. The local storage device of claim 7 , wherein the predetermined set of object properties includes an object name, an object size, and a number of times the object has been accessed.

11. A method, comprising:

in a local storage device configured for communication with a host device, the local storage device having a data storage array and a controller, wherein the data storage array is arranged to include a first portion and a second portion, the first portion being a mass storage area to store logical data blocks and corresponding data objects, the second portion being arranged to store a predetermined set of data object properties corresponding to the logical data blocks stored in the first portion, and the controller in communication with the data storage array and having a synchronization unit, the controller:

receiving modified data from the host device over a first logical interface and storing the modified data in the first portion of a memory array in logical data blocks;

managing, over a second logical interface, data objects in the mass storage area corresponding to the logical data blocks; and

when at least some of the data stored as logical data blocks is modified by way of the first logical interface, updating a predetermined set of data object properties of a data object corresponding to the modified data by way of the second logical interface, wherein the updated predetermined set of data object properties is stored in a second portion of the memory array.

12. The method of claim 11 , wherein updating the predetermined set of data object properties comprises updating the predetermined set of data object properties based on recognizing data access patterns.

13. The method of claim 11 , wherein updating the predetermined set of data object properties comprises updating the predetermined set of data object properties based on observing a data flow over the first logical interface.

14. The method of claim 11 , wherein the predetermined set of object properties is defined by a local storage device.

15. The method of claim 11 , wherein the predetermined set of object properties is received from the host device.

16. The method of claim 11 , wherein updating the predetermined set of data object properties comprises updating at least one of an object name, an object size, or a number of times the object has been accessed.

17. The method of claim 11 , further comprising:

receiving a write-related command via the second logical interface;

updating a data object in the mass storage area; and

updating the predefined set of data object properties corresponding to the updated data object.

Assignments (2)
CHANGE OF NAME Recorded Aug 21, 2020
From: SANDISK IL LTD
To: WESTERN DIGITAL ISRAEL LTD
Reel/Frame 053574/0513 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2008
From: NOCHIMOWSKI, ALAIN; RAVE, MICHA
To: SANDISK IL LTD.
Reel/Frame 021639/0491 →