IP Library Granted Patent US 9,633,035
Granted Patent B2
US 9,633,035 · App. 14/153,369 · Granted Apr 25, 2017

Storage system and methods for time continuum data retrieval

Inventors: Nir Peleg (Beer Yaakov, IL); Amnon Arthur Strasser (Tel Aviv, IL); Or Sagi (Tel Aviv, IL)
Assignee: Reduxio Systems Ltd.
G06F17/30159G06F3/0641G06F17/3023
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 9,633,035
App. No.
14/153,369
Granted
Apr 25, 2017
Kind
B2
Abstract

A method and system for storage of a data block for time continuum back-in-time data retrieval. The method comprises receiving a data block from a user node; updating an index stored in a memory respective of a time that the data block was received, wherein the time is a past time for retrieval of the data block; generating a hash number respective of contents of the data block; updating the index with the generated hash number; checking for existence of the generated hash number in a database; upon determination that the generated hash number does not exist in the database saving the data block in a storage device; increasing monotonously a transaction number respective of the generated hash number; and updating the index with the transaction number.

Claims (51)

1. A method for storage of a data block for time continuum back-in-time data retrieval, comprising:

receiving a data block from a user node;

updating an index stored in a memory respective of a time that the data block was received, wherein the time is a past time for retrieval of the data block;

generating a hash number respective of contents of the data block;

updating the index with the generated hash number;

checking for existence of the generated hash number in a database;

upon determination that the generated hash number does not exist in the database:

saving the data block in a storage device;

increasing monotonously a transaction number respective of the generated hash number;

updating the index with the transaction number;

receiving a request to retrieve the data block, the request including at least a past time respective of the data block to be retrieved;

retrieving the transaction number respective of the past time;

retrieving the data block from the storage device using the index that contains the retrieved transaction number; and

providing the retrieved data block.

2. The method of claim 1 , wherein the database includes previously stored hash numbers.

3. The method of claim 2 , wherein generating a hash number further comprises:

receiving at least a metadata associated with the data block; and

generating the hash number respective of the metadata and contents of the received data block.

4. The method of claim 1 , wherein saving the data block further comprising:

compressing the data block into a compressed data block; and

mapping into the storage device any one of: the data block and the compressed data block.

5. The method of claim 1 , further comprising: retrieving the data block in a time continuum back-in-time manner.

6. A non-transitory computer readable medium having stored thereon instructions for causing one or more processing units to execute the method according to claim 1 .

7. The method of claim 1 , wherein the request includes at least one of: an address of the data block, and an identifier of the data block.

8. The method of claim 1 , wherein retrieving the transaction number further comprises:

retrieving the transaction number included in an index that indexes a time closest to the past time and designates at least one of the address and identifier of the data block.

9. A system for storage of a data block for time continuum back-in-time data retrieval, comprising:

a network interface communicatively connected to at least a user node and storage device through a network;

a memory connected to the processor, containing a plurality of instructions that when executed by the processor configure the system to:

receive a data block from the user node;

update an index stored in a memory respective of a time that the data block was received, wherein the time is a past time for retrieval of the data block;

generate a hash number respective of contents of the data block;

update the index with the generated hash number;

check for existence of the generated hash number in a database, and upon determination that the generated hash number does not exist in the database:

save the data block in a storage device;

increase monotonously a transaction number respective of the generated hash number;

update the index with the transaction number

receive a request from a user node, the request including at least a past time respective of the data block to be retrieved;

retrieve the transaction number respective of the past time;

retrieve the data block from the storage device using an index that contains the retrieved transaction number; and

provide the retrieved data block to the requesting user node.

10. The system of claim 9 , wherein the network is at least one of: a local area network (LAN), a wide area network (WAN), a metro area network (MAN), a storage area network (SAN), the world wide web (WWW), the Internet, and combinations thereof.

11. The system of claim 9 , wherein the system is further configured to: save the generated hash number in the database upon determination that the generated hash number does not exist in the database, wherein the database includes previously stored hash numbers.

12. The system of claim 9 , wherein the system is further configured to:

receive at least a metadata associated with the data block; and

generate the hash number respective of the metadata and contents of the received data block.

13. The system of claim 9 , wherein the system is further configured to:

compress the data block into a compressed data block; and

map into the storage device any one of: the data block and the compressed data block.

14. The system of claim 9 , wherein the system is further configured to: retrieve the data block in a time continuum back-in-time manner.

15. The system of claim 9 , wherein the network is at least one of: a local area network (LAN), a wide area network (WAN), a metro area network (MAN), a storage area network (SAN), the world wide web (WWW), the Internet, and combinations thereof.

Assignments (2)
SECURITY INTEREST Recorded Jun 6, 2016
From: REDUXIO SYSTEMS LTD.
To: KREOS CAPITAL V (EXPERT FUND) L.P.
Reel/Frame 038809/0579 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2014
From: PELEG, NIR; STRASSER, AMNON ARTHUR; SAGI, OR
To: REDUXIO SYSTEMS LTD.
Reel/Frame 031950/0967 →
Continuity (2)
Provisional Application 61751878 · Jan 13, 2013
Related Publication 20140222772A1 · Aug 7, 2014