DISTRIBUTED DATA SYSTEM WITH DOCUMENT MANAGEMENT AND ACCESS CONTROL
First Claim
1. A method comprising:
- coupling a platform comprising a processor to a plurality of databases;
forming a grid by coupling a plurality of agents to the platform, wherein each agent of the plurality of agents is an agent of the platform running on a client device;
generating metadata at each agent and providing the metadata to the platform instead of content, wherein the metadata corresponds to the content of memory accessible by a plurality of client devices corresponding to the plurality of agents;
determining with the metadata locations of the content;
generating goals with the metadata representing operations for maintaining a state of the content;
generating with the metadata a plurality of tasks corresponding to the goals; and
assigning each task to an agent having access to the content that corresponds to the task, wherein each task is a processing operation directed by the platform to be performed by an agent on content accessible by the agent.
1 Assignment
0 Petitions
Accused Products
Abstract
Data management systems and methods include a cloud-based platform coupled to a system of agents or folders hosted on client devices. The platform does not store actual data but instead makes use of metadata provided by the agents to track a location of all data in the system and manage the distributed storage, movement and processing of the actual data among the agents. In so doing, the platform pools networked storage into “virtual clusters” using local storage at the agents. The agents collectively monitor, store, and transfer or move data, and perform data processing operations as directed by the platform, as described in detail herein. The agents include agents hosted on or coupled to processor-based devices, agents hosted on devices of a local area network, agents hosted on devices of a wide area network, agents hosted on mobile devices, and agents hosted on cloud-based devices.
103 Citations
125 Claims
-
1. A method comprising:
-
coupling a platform comprising a processor to a plurality of databases; forming a grid by coupling a plurality of agents to the platform, wherein each agent of the plurality of agents is an agent of the platform running on a client device; generating metadata at each agent and providing the metadata to the platform instead of content, wherein the metadata corresponds to the content of memory accessible by a plurality of client devices corresponding to the plurality of agents; determining with the metadata locations of the content; generating goals with the metadata representing operations for maintaining a state of the content; generating with the metadata a plurality of tasks corresponding to the goals; and assigning each task to an agent having access to the content that corresponds to the task, wherein each task is a processing operation directed by the platform to be performed by an agent on content accessible by the agent. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122)
-
-
123. A method comprising:
-
coupling a platform comprising a processor to a plurality of databases; forming a grid comprising a plurality of agents coupled to the platform, wherein each agent is an agent of the platform running on a client device; generating metadata at each agent by hashing a plurality of fragments of content accessible by the agent, wherein the metadata corresponds to the content of memory accessible by a plurality of client devices corresponding to the plurality of agents; providing the metadata to the platform instead of the content; generating with the metadata a plurality of tasks including tasks controlling at least one of storing, transferring and processing of the content, wherein a task is a processing operation performed on content accessible by the agent responsible for the task; and assigning the plurality of tasks to the plurality of agents.
-
-
124. A method comprising:
-
coupling a platform comprising a processor to a plurality of databases; forming a grid comprising a plurality of agents coupled to the platform, wherein each agent is an agent of the platform running on a client device; providing to the platform by each agent of each client device metadata of content of memory accessible by the client device; determining with the metadata locations of the content; generating goals with the metadata representing operations for maintaining a state of the content; generating with the metadata a plurality of tasks corresponding to the goals; and assign each task to an agent having access to the content that corresponds to the task, wherein a task is a processing operation directed by the platform to be performed by an agent on content accessible by the agent, wherein the metadata provided by plurality of agents includes information of the plurality of tasks performed by the plurality of agents.
-
-
125. A method comprising:
-
establishing a coupling between a platform comprising a processor and a plurality of databases; forming a grid by coupling a plurality of agents to the platform, wherein each agent of the plurality of agents is an agent of the platform running on a client device; generating metadata at each agent representing content of memory accessible by a plurality of client devices corresponding to the plurality of agents, wherein the generating comprises hashing a plurality of fragments of the content to generate a plurality of blobs representing the plurality of fragments; providing the metadata to the platform instead of the content; generating with the metadata a plurality of tasks, wherein a task is a processing operation performed on content accessible by the agent responsible for the task, wherein the plurality of tasks include tasks that at least one of monitor, store, transfer and process the content; and assigning the plurality of tasks to the plurality of agents.
-
Specification