Patent classifications
G06F16/1767
System and method for promoting reader groups for lock cohorting
NUMA-aware reader-writer locks may leverage lock cohorting techniques that introduce a synthetic level into the lock hierarchy (e.g., one whose nodes do not correspond to the system topology). The synthetic level may include a global reader lock and a global writer lock. A writer thread may acquire a node-level writer lock, then the global writer lock, and then the top-level lock, after which it may access a critical section protected by the lock. The writer may release the lock (if an upper bound on consecutive writers has been met), or may pass the lock to another writer (on the same node or a different node, according to a fairness policy). A reader may acquire the global reader lock (whether or not node-level reader locks are present), and then the top-level lock. However, readers may only hold these locks long enough to increment reader counts associated with them.
Multitenancy using an overlay file system
Example methods and systems are directed to multitenancy using an overlay file system. Each tenant has one or more users and a tenant layer in the overlay file system. Each user has a user layer in the overlay file system. The overlay file system provides a logical file system to each user based on the user layer, the tenant layer, and a strategy comprising a set of application layers. A first user shares a file with other users of the same tenant by moving the file from the first user's user layer to the tenant layer. After the file is moved, all users of the tenant have access to the file. The moving of the file is achieved by modifying metadata for the file.
System and method for promoting reader groups for lock cohorting
NUMA-aware reader-writer locks may leverage lock cohorting techniques that introduce a synthetic level into the lock hierarchy (e.g., one whose nodes do not correspond to the system topology). The synthetic level may include a global reader lock and a global writer lock. A writer thread may acquire a node-level writer lock, then the global writer lock, and then the top-level lock, after which it may access a critical section protected by the lock. The writer may release the lock (if an upper bound on consecutive writers has been met), or may pass the lock to another writer (on the same node or a different node, according to a fairness policy). A reader may acquire the global reader lock (whether or not node-level reader locks are present), and then the top-level lock. However, readers may only hold these locks long enough to increment reader counts associated with them.
Transition to an organization directory
The present technology pertains to a organization directory hosted by a synchronized content management system. The corporate directory can provide access to user accounts for all members of the organization to all content items in the organization directory on the respective file systems of the members' client devices. Members can reach any content item at the same path as other members relative to the organization directory root on their respective client device. In some embodiments novel access permissions are granted to maintain path consistency.
Techniques and Architectures for Utilizing a Change Log to Support Incremental Data Changes
Techniques and mechanisms for incremental data ingestion are disclosed. Raw data is received from multiple disparate sources to be consumed in an environment for collecting unformatted raw data. The environment has at least a delta data table and a delta notification table. A write to an entry in the delta data table is attempted. Entries to the delta data table specify at least records indicating changes to objects in the environment. A write a corresponding entry to the delta notification table is attempted in response to a successful write attempt to the delta data table. The delta notification table entry includes information about delta data table entries for a specified period. At least one data consumer is notified that the delta data table has been modified.
CONCURRENT ACCESS AND TRANSACTIONS IN A DISTRIBUTED FILE SYSTEM
According to one embodiment of the present disclosure, a first set of file system objects included in performing a requested file system operation is identified in response to a request to perform a file system operation. An update intent corresponding to the requested file system operation is inserted into a data structure associated with each identified file system object. Each file system object corresponding to the corresponding data structure is modified as specified by the update intent in that data structure. After modifying the file system object corresponding to the corresponding data structure, the update intent is removed from that data structure.
Method and apparatus for a file sharing and synchronization system
A computer-implemented method is provided for managing and sharing picture files. In one embodiment of the present invention, the method comprises providing a server platform and providing a datastore on the server platform for maintaining full resolution copies of the files shared between a plurality of sharing clients. A synchronization engine is provided on the server platform and is configured to send real-time updates to a plurality of sharing clients when at least one of the sharing clients updates or changes one of said files. A web interface may also be provided that allows a user to access files in the datastore through the use of a web browser.
Violation resolution in client synchronization
The disclosed technology relates to a system configured to receive a set of operations configured to converge a server state and a file system state, wherein the server state is for content items stored by a content management system and the file system state is for the content items stored on a client device. The system is further to detect a violation of a rule by an operation in the set of operations, identify resolution actions for the violation of the rule, and perform the resolution actions.
TECHNIQUES FOR EFFICIENT MIGRATION OF KEY-VALUE DATA
The present disclosure relates to a system and techniques for enabling migration of data between data storage devices without disruption to an application that relies upon the data. In some embodiments, this may involve the insertion of a redirect command into a mutation log. Upon receiving a transaction that relates to a data value, a transactor host may access the mutation log. Upon detecting the redirect command, the transactor host may generate a new mutation log in a second memory location which includes a reference to the mutation log. New mutations generated by the mutation log are then written to the new mutation log.
FILE SHARING METHOD, APPARATUS, AND SYSTEM
A file sharing method, apparatus, and system, mainly relate to the technical field of computers. The method comprises: obtaining a file to be shared; concurrently transmitting the shared file compression packages onto a blockchain; forming data blocks according to a compressed package file name and a hash value thereof, wherein the data blocks comprise the hash value of a previous data block; using the hash value of a last data block as a root hash value; and according to the root hash value, obtaining a file comprised in the last data block, and then obtaining each file compression package in a blockchain indicated by the root hash value. By compressing a plurality of files into file packages, the present application partially overcomes the technical problem that the burden of a network resource is too high due to a large number of files; the file on-chain and sharing efficiency is improved by performing concurrent on-chain on each file compression package; and a one-way linked list data structure on the blockchain is used to save and share the file, thereby improving the security of the file.