Managing virtual hard drives as blobs

US9639299B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9639299-B2
Application numberUS-201313944627-A
CountryUS
Kind codeB2
Filing dateJul 17, 2013
Priority dateNov 16, 2009
Publication dateMay 2, 2017
Grant dateMay 2, 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.

Cloud computing platforms having computer-readable media that perform methods for facilitating communications with storage. A request having a first-interface format to access storage is intercepted. The first interface format of the request supports access to a virtual hard drive (VHD). The request is translated to a blob request having a blob interface format. The blob interface format of the blob request supports access to a plurality of blobs of data in a blob store. The blob request is communicated to a blob interface such that the blob request is executed in managing the plurality of blobs.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for facilitating communications with storage, the method comprising: intercepting a request having a first-interface format, the request is received from an application running on a virtual machine, the application communicates using the first-interface format, wherein the first-interface format of the request supports access to a virtual hard drive (VHD), wherein the VHD is mounted as a block device associated with a blob interface and a blob store; translating the request to a blob request having a blob interface format, wherein the blob interface format of the blob request supports access to a plurality of blobs of data in the blob store; and communicating the blob request to the blob interface associated with the VHD such that the blob request is executed in managing the plurality of blobs. 2. The method of claim 1 , wherein the request is generated to function with an application programming interface (API) for communicating with the VHD. 3. The method of claim 2 , wherein the API is a legacy interface for communicating with the VHD. 4. The method of claim 2 , wherein the request is an input/output (I/O) request. 5. The method of claim 1 , wherein the plurality of blobs are accessible both directly through the blob interface and through a VHD-redirect to the blob interface when the VHD is mounted by the application. 6. The method of claim 1 , wherein the VHD is mounted for access to the plurality of blobs based on a time-limited lease associated with the application. 7. The method of claim 6 , wherein the time-limited lease is renewable for the application maintain access to the plurality of blobs. 8. The method of claim 1 , wherein the request is generated at a client device running the application via a cloud computing platform. 9. The method of claim 8 , wherein the client device includes storage information comprising configuration settings that facilitate access to the blob server. 10. A system for facilitating communications with storage, the system comprising: a processor and a memory configured for providing computer program instructions to the processor; an application configured for: generating a request, from an application running on one or more virtual machines, directed to a virtual hard drive (VHD), the request having a first-interface format, wherein the first-interface format of the request supports access to the VHD, wherein the VHD is mounted as a block device associated with a blob interface and a blob store; a driver configured for: intercepting the request from the application running on the one or more virtual machines; translating the request to a blob request having a blob interface format, wherein the blob interface format of the blob request supports access to the plurality of blobs of data in the blob store; and communicating the blob request to the blob interface such that the blob request is executed in managing the plurality of blobs. 11. The system of claim 10 , further comprising: the blob server configured for: storing the plurality of blobs in the blob store that are exposed via the VHD to the application; and receiving via the blob interface the request for access to the plurality of blobs, wherein the request is communicated as a blob request upon translation by the driver. 12. The system of claim 11 , wherein the blob server further comprises one or more snapshots of the plurality of blobs, wherein the one or more snapshots are created via the blob interface to allow additional applications to concurrently read data stored in the plurality of blobs. 13. The system of claim 10 , further comprising: an input/output (I/O) redirection component configured for: redirecting the request from the VHD to the driver. 14. The system of claim 10 , wherein the driver is further configured for: translating the request to the blob request, wherein translating the blob request comprises: accessing a drive library to locate drive commands; identifying a drive command that interprets the request; and converting the request based on the drive command to the blob request; communicating the blob request to the blob interface wherein communicating the blob request comprises locating a blob on the server; transmitting the blob request through the blob interface to the blob store on the blob server; and reporting information associated with the blob request to the application. 15. The system of claim 10 , wherein the driver is further configured for managing a plurality of time-leases associated with the VHD, wherein the plurality of time-leases are renewable. 16. One or more hardware computer storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform a method for facilitating communications with storage, the method comprising: intercepting a request having a first-interface format that is different from a blob interface format, wherein the first-interface format of the request supports access to a virtual hard drive (VHD), wherein the request is directed to the VHD, the VHD is mounted as a block device associated with a blob interface and a blob store; translating the request to a blob request having a blob interface format, wherein the blob interface format of the blob request supports access to a plurality of blobs that store data in a blob store; and communicating the blob request to the blob interface associated with the VHD such that the blob request is executed in managing the plurality blobs. 17. The media of claim 16 , wherein translating the request comprises: accessing a drive library to locate drive commands; identifying a drive command that interprets the request; and converting the request based on the drive command to the blob request. 18. The media of claim 16 , wherein communicating the blob request to the blob interface further comprises: locating a blob on the blob server; transmitting the blob request through the blob interface to the blob store on the blob server; and reporting information associated with the blob request to the application. 19. The media of claim 16 , wherein managing the plurality of blobs comprises reading and writing data records on the blob server. 20. The media of claim 16 , wherein a snapshot of the plurality of blobs is created via the blob interface to allow additional applications to concurrently read data stored in the plurality of blobs.

Assignees

Inventors

Classifications

  • G06F3/0686Primary

    Libraries, e.g. tape libraries, jukebox · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

  • at device level, e.g. emulation of a storage device or system · CPC title

  • G06F3/0661Primary

    Format or protocol conversion arrangements · CPC title

  • Management of space entities, e.g. partitions, extents, pools · 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 US9639299B2 cover?
Cloud computing platforms having computer-readable media that perform methods for facilitating communications with storage. A request having a first-interface format to access storage is intercepted. The first interface format of the request supports access to a virtual hard drive (VHD). The request is translated to a blob request having a blob interface format. The blob interface format of the…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/0686. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 02 2017 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).