System And Method For Synchronizing File Systems With Large Namespaces
Abstract
A method for facilitating synchronization of a remote file system (RFS) and a local file system (LFS) includes maintaining a global revision identifier associated with the RFS, where the global revision identifier has a variable state, and responsive to the RFS being modified, updating metadata associated with one or more of the file system objects of the RFS based on a state of the global revision identifier. More particularly, the method includes updating the global revision identifier to a new state in response to the RFS modification and then updating the metadata of the folder(s) associated with the RFS modification. The RFS metadata is partitioned by folder and file to facilitate efficient searching based on a requested namespace view. Another method utilizes prior revision identifiers stored in the LFS to limit the RFS metadata returned to the local cloud during a rescan, by excluding the data set that has not changed, which improves the efficiency of the rescan synchronization.
Claims
exact text as granted — not AI-modified1 . In a remote file storage system, a method for facilitating synchronization of a remote file system (RFS) and a local file system (LFS), said RFS being located remotely from said LFS, said method comprising:
maintaining a global revision identifier associated with said RFS, said global revision identifier having a variable state; establishing a connection with a user; providing access to said RFS to said user, said RFS including a plurality of file system objects, each of said file system objects being associated with metadata; receiving an instruction to modify said RFS from said user; and responsive to said RFS being modified, updating said metadata associated with one or more of said file system objects of said RFS based on a state of said global revision identifier.
2 . The method of claim 1 , wherein said step of updating said metadata includes altering said metadata of said one or more file system objects to reflect said state of said global revision identifier.
3 . The method of claim 2 , further comprising updating said state of said global revision identifier to a new state prior to said step of updating said metadata based on said state of said global revision identifier.
4 . The method of claim 1 , wherein said step of updating said metadata associated with said one or more file system objects includes updating metadata associated with one or more folders of said RFS.
5 . The method of claim 4 , wherein said instruction to modify said RFS comprises an instruction involving a file located within said one or more of said folders having said metadata associated therewith updated.
6 . The method of claim 1 , wherein:
said metadata associated with said file system objects of said RFS are partitioned into a folders portion and a files portion; said folders portion includes a plurality of folder records each storing folder metadata associated with a folder of said RFS; said files portion includes a plurality of file records each storing file metadata associated with a file of said RFS; said folder metadata for each of said folder records includes revision data indicative of said state of said global revision identifier at some point in time; and said step of updating said metadata of said one or more file system objects based on said state of said global revision identifier includes updating said revision data of said folder metadata.
7 . The method of claim 1 , further comprising:
establishing a second connection with a local file storage system associated with said LFS; receiving a synchronization request from said local file storage system; and providing metadata associated with at least some of said file system objects of said RFS to said local file storage system.
8 . The method of claim 7 , wherein:
said synchronization request includes data indicative of at least one requested folder within said RFS; and said step of providing metadata includes providing folder metadata associated with one or more identified folders of said RFS based on said at least one requested folder of said RFS, said folder metadata including revision data being indicative of a state of said global revision identifier the last time an identified folder of said RFS was modified.
9 . The method of claim 8 , further comprising:
receiving a file listing request from said local file storage system for at least some of said plurality of folders identified by said folder metadata provided to said local file storage system; and providing file metadata for files stored in each folder identified in said file listing request to said local file storage system.
10 . The method of claim 7 , further comprising providing a current state of said global revision identifier to said local file storage system.
11 - 21 . (canceled)
22 . A method for synchronizing a local file system (LFS) with an associated remote file system (RFS), said LFS being located remotely from said RFS, said method comprising:
establishing a network connection with a remote file storage system associated with said RFS; initiating a synchronization process with said remote file storage system; providing at least one namespace identifier to said remote file storage system via said network connection, said namespace identifier being indicative of at least a portion of a subscribed namespace synchronized on said RFS and said LFS; and providing at least one prior revision identifier to said remote file storage system, said prior revision identifier defining a state associated with said RFS when said at least said portion of said subscribed namespace was last synchronized between said RFS and said LFS.
23 . The method of claim 22 , further comprising receiving RFS metadata from said remote file storage system, said RFS metadata being associated with file system objects in said at least said portion of said subscribed namespace that have been modified since said prior synchronization.
24 . The method of claim 23 , wherein:
said RFS metadata comprises folder metadata associated with said one or more folders of said subscribed namespace; and said method further comprises querying said remote file storage system for file metadata associated with files stored in at least some of said one or more folders.
25 . The method of claim 22 , further comprising:
receiving a current revision identifier from said remote file storage system, said current revision identifier defining a current state associated with said RFS; and storing said current revision identifier in LFS metadata associated with at least one folder of said portion of said subscribed namespace on said LFS associated with said namespace identifier.
26 . A local file storage system storing a local file system (LFS) that is synchronized with an associated remote file system (RFS) stored remotely from said LFS, said local file storage system comprising:
memory for storing data, said data including
said LFS including a plurality of file system objects, each of said file system objects including LFS metadata, and
a plurality of prior revision identifiers, each prior revision identifier defining a state of said RFS at a time when an associated folder of a subscribed namespace between said LFS and said RFS was last synchronized;
a remote cloud interface configured to establish a connection with said remote file storage system; and a synchronizer configured to
initiate a synchronization process with said remote file storage system,
provide at least one namespace identifier to said remote file storage system, said namespace identifier being indicative of at least a portion of said subscribed namespace, and
provide at least one prior revision identifier associated with said namespace identifier to said remote file storage system.
27 . The system of claim 26 , wherein said remote cloud interface receives RFS metadata from said remote file storage system, said RFS metadata being associated with file system objects in at least said portion of said subscribed namespace that have been modified since said prior synchronization.
28 . The system of claim 27 , wherein:
said RFS metadata comprises folder metadata associated with said one or more folders of said subscribed namespace; and said synchronizer is configured to query said remote file storage system for file metadata associated with files stored in at least some of said one or more folders.
29 . The system of claim 26 , wherein:
said remote cloud interface is configured to receive a current revision identifier from said remote file storage system, said current revision identifier defining a current state associated with said RFS; and said synchronizer is configured to store said current revision identifier in LFS metadata associated with at least one folder of said portion of said subscribed namespace on said LFS associated with said namespace identifier.Join the waitlist — get patent alerts
Track US2022147488A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.