File system hierarchies and functionality with cloud object storage

US11442898B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11442898-B2
Application numberUS-202016822406-A
CountryUS
Kind codeB2
Filing dateMar 18, 2020
Priority dateJan 6, 2017
Publication dateSep 13, 2022
Grant dateSep 13, 2022

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.

Techniques described herein relate to systems and methods of data storage, and more particularly to providing layering of file system functionality on an object interface. In certain embodiments, file system functionality may be layered on cloud object interfaces to provide cloud-based storage while allowing for functionality expected from a legacy applications. For instance, POSIX interfaces and semantics may be layered on cloud-based storage, while providing access to data in a manner consistent with file-based access with data organization in name hierarchies. Various embodiments also may provide for memory mapping of data so that memory map changes are reflected in persistent storage while ensuring consistency between memory map changes and writes. For example, by transforming a ZFS file system disk-based storage into ZFS cloud-based storage, the ZFS file system gains the elastic nature of cloud storage.

First claim

Opening claim text (preview).

What is claimed: 1. A method comprising: receiving, via a block storage system, a first set of one or more requests to perform a first transaction with respect to a file; storing, via the block storage system, data blocks and corresponding metadata in one or more storage devices of the block storage system, wherein: the data blocks correspond to the file, and the data blocks and the corresponding metadata are stored separately as logical blocks according to a tree hierarchy; causing storage, in a cloud object store, of a set of cloud storage objects, where the set of cloud storage objects comprises data of the data blocks and the corresponding metadata of the tree hierarchy, and the causing storage comprises causing communication of a second set of one or more requests to the cloud object store to specify storage of the set of cloud storage objects in the cloud object store so that the set of cloud storage objects preserves the data of the data blocks, the corresponding metadata, and relationships of the data blocks and the corresponding metadata according to the tree hierarchy, wherein the set of cloud storage objects is stored in the cloud object store to correspond to a cloud-based instantiation of the tree hierarchy; receiving, via the block storage system, a third set of one or more requests to perform a second transaction with respect to the file; converting at least one I/O request, corresponding to the third set of one or more requests, into an object interface request; and transferring the object interface request to cause communication with the cloud object store to perform at least one I/O operation with respect to at least a subset of the set of cloud storage objects. 2. The method as recited in claim 1 , wherein the causing the communication of the second set of one or more requests to the cloud object store comprises: transferring a fourth set of one or more requests to a cloud daemon; wherein, responsive to the fourth set of one or more requests, the cloud daemon communicates, via an object protocol over one or more networks, with the cloud object store to specify storage of the set of cloud storage objects. 3. The method as recited in claim 1 , further comprising: converting a plurality of requests that are compliant with Portable Operating System Interface (POSIX) into a plurality of object interface requests to perform operations with respect to the cloud-based instantiation of the tree hierarchy stored in the cloud object store, where the plurality of requests comprises the at least one I/O request and the plurality of object interface requests comprises the object interface request. 4. The method as recited in claim 1 , further comprising: translating the third set of one or more requests into the at least one I/O request to perform the at least one I/O operation, where the transferring the object interface request comprises communicating with the cloud object store to perform the at least one I/O operation with respect to at least the subset of the set of cloud storage objects. 5. The method as recited in claim 4 , wherein the I/O operation corresponds to a write operation and is performed according to a copy-on-write process with respect to at least the subset of the set of cloud storage objects in the cloud object store. 6. The method as recited in claim 5 , wherein the specifying the storage of the set of cloud storage objects in the cloud object store comprises: specifying a first object size to store a first subset of the set of cloud storage objects that are identified as being of a first data type; and specifying a second object size to store a second subset of the set of cloud storage objects that are identified as being of a second data type; wherein the first object size is different from the second object size, and the first data type is different from the second data type. 7. A system comprising: one or more processors communicatively coupled to memory, the one or more processors to facilitate: processing a first set of one or more requests to perform a first transaction with respect to a file; storing data blocks and corresponding metadata in one or more storage devices of a block storage system, wherein: the data blocks correspond to the file, and the data blocks and the corresponding metadata are stored separately as logical blocks according to a tree hierarchy; causing storage, in a cloud object store, of a set of cloud storage objects, where the set of cloud storage objects comprises data of the data blocks and the corresponding metadata of the tree hierarchy, and the causing storage comprises causing communication of a second set of one or more requests to the cloud object store to specify storage of the set of cloud storage objects in the cloud object store so that the set of cloud storage objects preserves the data of the data blocks, the corresponding metadata, and relationships of the data blocks and the corresponding metadata according to the tree hierarchy, wherein the set of cloud storage objects is stored in the cloud object store to correspond to a cloud-based instantiation of the tree hierarchy; processing a third set of one or more requests to perform a second transaction with respect to the file; converting at least one I/O request, corresponding to the third set of one or more requests, into an object interface request; and transferring the object interface request to cause communication with the cloud object store to perform at least one I/O operation with respect to at least a subset of the set of cloud storage objects. 8. The system as recited in claim 7 , wherein the causing the communication of the second set of one or more requests to the cloud object store comprises: transferring a fourth set of one or more requests to a cloud daemon; wherein, responsive to the fourth set of one or more requests, the cloud daemon communicates, via an object protocol over one or more networks, with the cloud object store to specify storage of the set of cloud storage objects. 9. The system as recited in claim 8 , the one or more processors further to facilitate: converting a plurality of requests that are compliant with Portable Operating System Interface (POSIX) into a plurality of object interface requests to perform operations with respect to the cloud-based instantiation of the tree hierarchy stored in the cloud object store, where the plurality of requests comprises the at least one I/O request and the plurality of object interface requests comprises the object interface request. 10. The system as recited in claim 7 , the one or more processors further to facilitate: translating the third set of one or more requests into the at least one I/O request to perform the at least one I/O operation, where the transferring the object interface request comprises communicating with the cloud object store to perform the at least one I/O operation with respect to at least the subset of the set of cloud storage objects. 11. The system as recited in claim 10 , wherein the I/O operation corresponds to a write operation and is performed according to a copy-on-write process with respect to at least the subset of the set of cloud storage objects in the cloud object store. 12. The system as recited in claim 11 , wherein the specifying the storage of the set of cloud storage objects in the cloud object store comprises: specifying a first object size to store a first subset of the set of cloud storage objects that are identified as being of a first data type; and specifying a second object size to store a second subset of the set of cloud storage objects that are identified as being of a second data type; wherein

Assignees

Inventors

Classifications

  • G06F21/602Primary

    Providing cryptographic facilities or services · CPC title

  • Compression (speech analysis-synthesis for redundancy reduction G10L19/00; for image communication H04N); Expansion; Suppression of unnecessary data, e.g. redundancy reduction · CPC title

  • Management of files · CPC title

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

  • Trees · 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 US11442898B2 cover?
Techniques described herein relate to systems and methods of data storage, and more particularly to providing layering of file system functionality on an object interface. In certain embodiments, file system functionality may be layered on cloud object interfaces to provide cloud-based storage while allowing for functionality expected from a legacy applications. For instance, POSIX interfaces a…
Who is the assignee on this patent?
Oracle Int Corp
What technology area does this patent fall under?
Primary CPC classification G06F21/602. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 13 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).