Deferred data storage

US9613071B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9613071-B1
Application numberUS-201314067619-A
CountryUS
Kind codeB1
Filing dateOct 30, 2013
Priority dateNov 30, 2007
Publication dateApr 4, 2017
Grant dateApr 4, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method, system, and computer readable storage medium for deferred data storage are disclosed. Data sent via a local-area network is intercepted at a first hardware appliance of a plurality of hardware appliances in response to a first request for the data. A determination is performed of whether the data is locally accessible to the first hardware appliance. Instructions are transmitted to the first hardware appliance to retrieve the data locally accessible to the hardware appliance. The data is stored on at least one temporary page at a hardware appliance. The first hardware appliance and the second hardware appliance are in communication via the local-area network.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for maintaining synchronous data between a branch appliance and a central appliance and storing contiguous data, the method comprising: intercepting response data addressed to a server or to a computer via a communication network at a branch appliance or central appliance in response to a request for the data; determining that at least a portion of the response data is locally accessible to the branch appliance; instructing the branch appliance to build the response data with the data locally accessible to the branch appliance in combination with data transmitted to the branch appliance by the central appliance; and transmitting a deferred store instruction from the central appliance to the branch appliance, to store the response data on at least one temporary page in memory, the temporary page being a memory page for which a determination has not been made whether to store or discard its contents. 2. The method of claim 1 , wherein the deferred store instruction includes an address associated with the at least one temporary page having at least some of the response data. 3. The method of claim 1 , wherein the deferred store instruction further comprises an instruction to the branch appliance to store the response data in a location in a database corresponding to a location in a database in the central appliance. 4. The method of claim 3 , further comprising receiving an acknowledgement at the central appliance from the branch appliance that the contents of the at least one temporary page are stored in memory at both the central appliance and the branch appliance. 5. The method of claim 4 , wherein the acknowledgement is an integrity check or hash. 6. The method of claim 1 , wherein the storing the response data on at least one temporary page at the central appliance further comprises: determining whether a first temporary page is full; and storing the response data on a second temporary page if the first temporary page is full. 7. The method of claim 6 , wherein the first temporary page is considered full if a predetermined period of time has elapsed since instructions were received. 8. The method of claim 1 , further comprising assigning a location in a database to the at least one temporary page. 9. The method of claim 1 , further comprising indexing the contents of the at least one temporary page. 10. The method of claim 9 , wherein the indexing further comprises populating at least one signature hash table, the signature hash table being a fine signature hash table or a coarse signature hash table. 11. The method of claim 1 , further comprising: rebuilding the response data at the branch appliance; storing the response data on a temporary page in memory based on the deferred store instruction; and transmitting the response data to the server or computer. 12. The method of claim 1 , further comprising: exchanging a message between the branch appliance and the central appliance to determine whether to store the temporary page in memory, the determination based at least in part on: determining that a first temporary page is full; and determining, based in part on an analysis of possible data fragmentation in storage, whether to store the contents of the temporary page in data storage. 13. The method of claim 1 , wherein the determining whether a portion of the intercepted response data is locally accessible to the branch appliance comprises determining whether a portion of the intercepted response data has a similar pattern to data locally accessible to the branch appliance. 14. A system for maintaining synchronous data between a branch appliance and a central appliance and storing contiguous data comprising: a branch appliance and at least one central appliance in communication with each other, the branch appliance comprising: a processor that intercepts response data addressed to a server or to a computer via a communication network at the central appliance in response to a request for the data, performs a determination of whether and where at least a portion of the response data is locally accessible to the branch appliance, builds the response data using the response data locally accessible to the branch appliance in combination with data received by the branch appliance, and stores the response data on at least one temporary page in a memory device at the central appliance, the temporary page being a memory page for which a determination has not been made whether to store or discard its contents; and a memory device configured to store the at least one temporary page at the central appliance and at the branch appliance. 15. The system of claim 14 , wherein the processor instructs the branch appliance to store the response data in a location in a database corresponding to a location in a database in the central appliance. 16. The system of claim 14 , wherein the processor determines whether a first temporary page is full, and stores the response data on a second temporary page if the first temporary page is full. 17. The system of claim 16 , wherein the first temporary page is considered full if a predetermined period of time has elapsed since instructions were received. 18. The system of claim 14 , wherein the processor indexes the contents of the at least one temporary page. 19. A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor for performing a method for maintaining synchronous data between a branch appliance and a central appliance and storing contiguous data, the method comprising: intercepting response data addressed to a server or to a computer via a communication network at a central appliance in response to a request for the data; determining that at least a portion of the response data is locally accessible to a branch appliance; generating instructions to allow the branch appliance to build the response data using data locally accessible to the branch appliance in combination with the intercepted response data; and storing the response data on at least one temporary page at the central appliance in accordance with a deferred store instruction, the temporary page being a memory page for which a determination has not been made whether to store or discard its contents.

Assignees

Inventors

Classifications

  • Electricity · mapped topic

  • Physics · mapped topic

  • Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes · CPC title

  • Storing data temporarily at an intermediate stage, e.g. caching · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9613071B1 cover?
A method, system, and computer readable storage medium for deferred data storage are disclosed. Data sent via a local-area network is intercepted at a first hardware appliance of a plurality of hardware appliances in response to a first request for the data. A determination is performed of whether the data is locally accessible to the first hardware appliance. Instructions are transmitted to th…
Who is the assignee on this patent?
Hughes David Anthony, Silver Peak Systems Inc
What technology area does this patent fall under?
Primary CPC classification G06F17/30303. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 04 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).