Distributed Server Graph Partitioning for Client-Server Performance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems for managing versioned data in client-server applications face performance issues due to the need for all users to share a single global graph, leading to conflicts and inefficiencies, particularly when handling thousands of users, as they cannot provide personalized graphs or contexts, resulting in redundant information and inefficient use of hardware resources.
Innovation Solution
A distributed computing system with multiple servers organized in layers, each with a memory cache for specific user data and shared information, allowing for real-time processing and updating of user-specific graphs while sharing common information between users, utilizing a multi-layer versioned graph structure to manage and synchronize data across layers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If all users share a single global graph, then users can access common information, but system performance deteriorates due to conflicts and redundant data
Solution Approach 1:
The patent segments the global graph into multiple distributed partitions, each stored on different servers. Users access only their relevant partition rather than the entire global graph, reducing data redundancy and improving access performance while maintaining information sharing capabilities through the distributed architecture.
Solution Approach 2:
The patent introduces a new dimension of organization by creating multiple views or projections of the graph data across different servers and partitions. This allows the same information to be accessed through different dimensional paths, improving performance by avoiding single-point bottlenecks and conflicts.
2Power
If the global graph is distributed across many servers, then processing capacity increases, but data conflicts arise between different user modifications
Solution Approach 1:
The patent introduces version control mechanisms and coordination intermediaries that mediate between distributed servers and user modifications. These intermediaries manage data consistency by coordinating updates across partitions, resolving conflicts before they propagate, and maintaining reliable data state across the distributed system.
Solution Approach 2:
The patent implements feedback mechanisms where servers continuously monitor and report data state changes to a coordination system. This feedback loop enables real-time detection and resolution of potential conflicts, ensuring data consistency is maintained across distributed servers through continuous verification and adjustment.
3Speed
If the graph is updated in real-time, then user experience improves, but hardware resources become overloaded
Solution Approach 1:
The patent implements partial updates where only the specific partitions or data elements that have changed are updated and propagated, rather than refreshing the entire graph. This selective approach maintains real-time responsiveness for affected users while significantly reducing the computational overhead and hardware resource consumption compared to full graph updates.
Data Source
AI summary
A distributed computing system includes a plurality of servers, each server comprising a processor to process computing treatments and a memory system to record and save graphs. The system also includes means of routing between servers and an interface server to treat requests from a plurality of users' equipment. Servers are organized in N layers of servers, building together a group of servers. Servers from a same layer present a ring topology, and each server has a communication protocol with the following server in the ring of the group of machines. The system also includes communication means with the routing server.


