Abstract:
Systems and methods are disclosed for identifying users of a collaboration system as search results. In one embodiment, the system performs a text-based content search of content items to identify relevant content. The disclosed system stores metadata associated with the content that includes various user information. The user information can be used to facilitate identification of relevant individuals (users or collaborators) as search results, in addition to or in lieu of, relevant content.
Abstract:
Techniques are disclosed for improving scalability in a system which incrementally updates remote clients with events that occurred in a cloud-enabled platform. In one embodiment, a method comprises, in response to an action from a user in the cloud-enabled platform, determining a list of events to update one or more collaborators of the user about the action. The method further comprises separating the list of events into a plurality of sub-lists of events such that each sub-list of events can be stored in a database within a designated amount of time, and further comprises storing the plurality of sub-lists of events into the database to be read by the one or more collaborators. Among other advantages, embodiments disclosed herein provide enhancement in scalability, robustness and availability for cloud-based collaboration platforms with large numbers of collaborators by incorporating mechanisms to divide-and-conquer the workload of event updates in such platforms.
Abstract:
Systems and methods are disclosed for identifying users of a collaboration system as search results. In one embodiment, the system performs a text-based content search of content items to identify relevant content. The disclosed system stores metadata associated with the content that includes various user information. The user information can be used to facilitate identification of relevant individuals (users or collaborators) as search results, in addition to or in lieu of, relevant content.
Abstract:
Systems for managing shared content in a cloud-based service platform. A method commences upon identifying one or more storage devices that store one or more content objects. The storage devices may be partitioned into geographically distant locations. A first partition in one geography is associated with a first set of content objects and a second partition is associated with a second set of content objects. An inviter-collaborator generates a set of outgoing collaboration attributes pertaining to a shared content object from the first partition. The outgoing collaboration attributes are stored on the inviter's partition. An invitee-collaborator accepts the invitation and generates a set of incoming collaboration attributes that derive from the set of outgoing collaboration attributes. The set of incoming collaboration attributes are stored on the invitee's partition. The invitations can be sent and received through operation of a web application that facilitates offering invitations and acceptance of those invitations.
Abstract:
Systems for managing shared content in a cloud-based service platform. A method commences upon identifying one or more storage devices that store one or more content objects. The storage devices may be partitioned into geographically distant locations. A first partition in one geography is associated with a first set of content objects and a second partition is associated with a second set of content objects. An inviter-collaborator generates a set of outgoing collaboration attributes pertaining to a shared content object from the first partition. The outgoing collaboration attributes are stored on the inviter's partition. An invitee-collaborator accepts the invitation and generates a set of incoming collaboration attributes that derive from the set of outgoing collaboration attributes. The set of incoming collaboration attributes are stored on the invitee's partition. The invitations can be sent and received through operation of a web application that facilitates offering invitations and acceptance of those invitations.
Abstract:
Techniques are disclosed for improving scalability in a system which incrementally updates remote clients with events that occurred in a cloud-enabled platform. In one embodiment, a method comprises, in response to an action from a user in the cloud-enabled platform, determining a list of events to update one or more collaborators of the user about the action. The method further comprises separating the list of events into a plurality of sub-lists of events such that each sub-list of events can be stored in a database within a designated amount of time, and further comprises storing the plurality of sub-lists of events into the database to be read by the one or more collaborators. Among other advantages, embodiments disclosed herein provide enhancement in scalability, robustness and availability for cloud-based collaboration platforms with large numbers of collaborators by incorporating mechanisms to divide-and-conquer the workload of event updates in such platforms.
Abstract:
Embodiments of the disclosure provide systems and methods for identifying collaborators on migrated content and determining which, if any, of those collaborators should be allowed access to the content on the target system of that migration. According to one embodiment, a method for migrating content and a plurality of collaborators on the content from a source system to a target system can comprise initiating, by a migration control system, migration of the content from the source system to the target system and analyzing, by the migration control system, while the migration is being conducted, the content being migrated from the source system to the target system. One or more policies can be applied to the content and the plurality of collaborators on the content being migrated from the source system to the target system by the migration control system while the migration is being conducted.
Abstract:
Systems and methods of maintaining a horizontally scaled database based on data ownership for a cloud-based platform (e.g., cloud-based collaboration and/or storage platform/service) are disclosed. The system database comprises multiple shard databases, and all files and folders owned by a user are stored on a single shard database. When a user transfers ownership of a file and/or a folder to a second user, the transferred file and/or folder is stored on the shard database that stores all of the data for the second user.
Abstract:
Systems and methods of maintaining a horizontally scaled database based on data ownership for a cloud-based platform (e.g., cloud-based collaboration and/or storage platform/service) are disclosed. The system database comprises multiple shard databases, and all files and folders owned by a user are stored on a single shard database. When a user transfers ownership of a file and/or a folder to a second user, the transferred file and/or folder is stored on the shard database that stores all of the data for the second user.