Abstract:
A cloud file event server transmits file events necessary to synchronize a file system of a file share client. A tree queue director circuit receives file events and stores each one into a tree data structure which represents the hierarchical paths of files within the file share client. An event normalization circuit sorts the file events stored at each node into sequential order and moots file events which do not have to be performed because a later file event makes them inconsequential. A thread scheduling circuit assigns a resource to perform file events at a first node in a hierarchical path before assigning one or more resources to a second node which is a child of the first node until interrupted by the tree queue director circuit or until all file events in the tree data structure have been performed.
Abstract:
A new approach is proposed that contemplates systems and methods to support file synchronization between a local host and a cloud storage via one or more local content appliances (CAs), wherein each content appliance is a storage device/host configured to locally maintain documents and files previously downloaded from the cloud storage. First, a client agent at the local host discovers and connects to the CA that manage its files locally. To access a file/document that is not cached on its local host, the client agent requests and receives the file from the CA instead of downloading it directly from the cloud storage. When parts of the file are updated locally by the client, the client agent is configured to transmit the updated file to the CA, wherein the updated file is considered as having been fully committed from the client's perspective. The CA then synchronizes with and uploads the revised file to the cloud storage and/or other CAs in the background.
Abstract:
A cloud file event server transmits file events necessary to synchronize a file system of a file share client. A tree queue director circuit receives file events and stores each one into a tree data structure which represents the hierarchical paths of files within the file share client. An event normalization circuit sorts the file events stored at each node into sequential order and moots file events which do not have to be performed because a later file event makes them inconsequential. A thread scheduling circuit assigns a resource to perform file events at a first node in a hierarchical path before assigning one or more resources to a second node which is a child of the first node until interrupted by the tree queue director circuit or until all file events in the tree data structure have been performed.