Hosted file sync with direct access to hosted files

US10019460B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10019460-B2
Application numberUS-201514853746-A
CountryUS
Kind codeB2
Filing dateSep 14, 2015
Priority dateSep 14, 2015
Publication dateJul 10, 2018
Grant dateJul 10, 2018

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.

Disclosed herein is a system and method that can be used to synchronize files from a hosted file system where the client endpoint devices have direct access to the files stored on a hosted file store/system. When the client synchronizes with the files stored on the hosted file store the synchronization process identifies the files that need to be synchronized with the client and prepares batches of files to be synced. During the process of synchronization the files are not locked from other user's being able to use the files. If the file is modified by another endpoint during the file synchronization process the file will not be synchronized with the client device during the particular synchronization process. In this way synchronization becomes possible with the hosted service without impacting the performance of other devices that use and access the data in the hosted file store.

First claim

Opening claim text (preview).

The invention claimed is: 1. A cloud service for synchronizing files between a client device of a plurality of client devices and a file store through a sync role of the cloud service, the cloud service comprising: at least one client device; memory that is coupled to the at least one computing device and that includes computer-readable instructions that, based on execution by at least one computing device, configure the cloud service to perform actions comprising: receiving, by the cloud service from the client device, a request to synchronize a set of files with a namespace in the file store, where the each of the plurality of client devices has direct access to the file store where the direct access is not through the sync role; locking, by the cloud service in response to the received request, access through the sync role by the plurality of client devices to the namespace, where the locked namespace blocks read and write access through the sync role but where the locked namespace can still be directly accessed by any of the plurality of client devices; uploading, by the cloud service from the client device, the set of files to a staging folder; receiving, by the cloud service via the sync role from the client device in connection with the uploading a set of file metadata for each file in the staged set of files; applying, by the cloud service, each received set of file metadata to its corresponding file of in the staged set of files; first obtaining, by the cloud service subsequent to the applying, an exclusive handle for each of at least a portion of the files in the namespace that corresponds to a file in the staged set of files, where each obtained handle effectively blocks changes to the corresponding file in the namespace by direct access from any of the plurality of client devices; second obtaining, by the cloud service subsequent to the applying, an exclusive handle for each of at least a portion of the files in the staged set of files; and replacing, by the cloud server subsequent to the first and second obtainings, each file in the namespace for which an exclusive handle was obtained with the corresponding file in the staged set of files for which an exclusive handle was obtained. 2. The cloud service of claim 1 , the actions further comprising: determining, by the cloud service subsequent to the applying and prior to the replacing, that metadata of a file in the staged set of files and metadata of the corresponding file in the namespace do not match; and dropping, by the cloud service in response to the determining, any obtained exclusive handle to the file in the staged set of files or any obtained exclusive handle to the corresponding file in the namespace. 3. The cloud service of claim 1 where the file store comprises the namespace. 4. The cloud service of claim 1 where the cloud service is configured for synchronizing files and folders from NTFS, FAT, and SMB file systems. 5. The cloud service of claim 1 where the namespace, when unlocked, can be accessed through the sync role by any of the plurality of client devices, where such access comprises reading and writing files and folder within the namespace. 6. The cloud service of claim 1 where the replacing comprises: first renaming a file in the namespace for which an exclusive handle was obtained from its original name to a temporary name; and second renaming the corresponding file in the staged set of files for which an exclusive handle was obtained to the original name. 7. The cloud service of claim 6 where the renaming further comprises deleting the first renamed file with the temporary name. 8. A method performed on at least one computing device of a cloud service, the method for synchronizing files between a client device of a plurality of client devices and a file store through a sync role of the cloud service, the method comprising: receiving, by the cloud service from the client device, a request to synchronize a set of files with a namespace in the file store, where the each of the plurality of client devices has direct access to the file store where the direct access is not through the sync role; locking, by the cloud service in response to the received request, access through the sync role by the plurality of client devices to the namespace, where the locked namespace blocks read and write access through the sync role but where the locked namespace can still be directly accessed by any of the plurality of client devices; uploading, by the cloud service from the client device, the set of files to a staging folder; receiving, by the cloud service via the sync role from the client device in connection with the uploading a set of file metadata for each file in the staged set of files; applying, by the cloud service, each received set of file metadata to its corresponding file of in the staged set of files; first obtaining, by the cloud service subsequent to the applying, an exclusive handle for each of at least a portion of the files in the namespace that corresponds to a file in the staged set of files, where each obtained handle effectively blocks changes to the corresponding file in the namespace by direct access from any of the plurality of client devices; second obtaining, by the cloud service subsequent to the applying, an exclusive handle for each of at least a portion of the files in the staged set of files; and replacing, by the cloud server subsequent to the first and second obtainings, each file in the namespace for which an exclusive handle was obtained with the corresponding file in the staged set of files for which an exclusive handle was obtained. 9. The method of claim 8 further comprising: determining, by the cloud service subsequent to the applying and prior to the replacing, that metadata of a file in the staged set of files and metadata of the corresponding file in the namespace do not match; and dropping, by the cloud service in response to the determining, any obtained exclusive handle to the file in the staged set of files or any obtained exclusive handle to the corresponding file in the namespace. 10. The method of claim 8 where the file store comprises the namespace. 11. The method of claim 8 where the cloud service is configured for synchronizing files and folders from NTFS, FAT, and SMB file systems. 12. The method of claim 8 where the namespace, when unlocked, can be accessed through the sync role by any of the plurality of client devices, where such access comprises reading and writing files and folder within the namespace. 13. The method of claim 8 where the replacing comprises: first renaming a file in the namespace for which an exclusive handle was obtained from its original name to a temporary name; and second renaming the corresponding file in the staged set of files for which an exclusive handle was obtained to the original name. 14. The method of claim 13 where the renaming further comprises deleting the first renamed file with the temporary name. 15. At least one hardware computer storage medium that includes computer-readable instructions that, based on execution by at least one computing device of a cloud service, configure the cloud service to perform actions for synchronizing files between a client device of a plurality of client devices and a file store through a sync role of the cloud service, the actions comprising: receiving, by the cloud service from the client device, a request to synchronize a set of files with a namespace in the file store, where the each of the plurality of client devices has direct access to the file store where the direct access is not

Assignees

Inventors

Classifications

  • G06F16/178Primary

    Techniques for file synchronisation in file systems · CPC title

  • based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

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

  • specially adapted for file transfer, e.g. file transfer protocol [FTP] · CPC title

  • Physics · mapped topic

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 US10019460B2 cover?
Disclosed herein is a system and method that can be used to synchronize files from a hosted file system where the client endpoint devices have direct access to the files stored on a hosted file store/system. When the client synchronizes with the files stored on the hosted file store the synchronization process identifies the files that need to be synchronized with the client and prepares batche…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F16/178. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 10 2018 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 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).