Graph Node Data Virtualization for UI Responsiveness
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Client devices face inefficiencies in downloading and processing large amounts of user interface data, particularly over low-bandwidth connections and with low-powered devices, leading to slow data retrieval and rendering of user interfaces.
Innovation Solution
The technology assesses client device needs and capabilities to intelligently download and render user interface data by using virtual and expanded graph nodes, optimizing data transfer through client-specific information, such as cache size, connection bandwidth, and user preferences, to reduce data load and improve responsiveness.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If complete graph node data is downloaded to ensure comprehensive information availability, then information completeness is improved, but data download time and processing time increase
Solution Approach 1:
The patent segments graph node data into multiple levels of detail (summary level and detailed level). The system downloads and processes only the summary level data initially, which contains essential information in a condensed format. Detailed data is downloaded only when specifically requested by the user, thereby reducing initial download time while maintaining information completeness when needed.
Solution Approach 2:
The system performs preliminary processing of graph node data on the server side before transmission to the client. Summary statistics, aggregated information, and pre-computed metrics are prepared in advance and transmitted with the data. This preliminary action reduces the amount of processing the client device must perform, thereby reducing processing time while maintaining information completeness.
2Manufacturing precision
If complete graph node data is processed on the client device to ensure accurate rendering, then rendering accuracy is improved, but processing power consumption increases
Solution Approach 1:
The patent divides data processing into two segments: server-side pre-processing and client-side final rendering. The server performs heavy processing tasks including data aggregation, summary computation, and initial filtering. The client device only performs light processing to render the pre-processed data, thereby maintaining rendering accuracy while significantly reducing power consumption.
Solution Approach 2:
The system creates simplified copies of the complete graph node data in the form of summary data that captures the essential characteristics and statistical properties. These summary copies are used for initial rendering and analysis, eliminating the need for the client device to process the complete detailed data sets while maintaining sufficient rendering accuracy.
3Loss of information
If all graph node data is transmitted over the network to ensure data availability, then data availability is improved, but network bandwidth consumption increases
Solution Approach 1:
The patent segments data transmission into two phases: initial transmission of summary data and subsequent on-demand transmission of detailed data. The summary data contains aggregated information, statistics, and metadata that provides data availability for basic functionality. Detailed data is transmitted only when users specifically request it, thereby maintaining data availability while significantly reducing network bandwidth consumption.
Solution Approach 2:
The system performs preliminary data preparation and aggregation on the server side before transmission. Data is pre-filtered, pre-aggregated, and pre-formatted according to anticipated client needs. This preliminary action ensures that the transmitted data is immediately usable upon receipt, maintaining data availability while reducing the total volume of data that needs to be transmitted over the network.
Data Source
AI summary
The described technology is directed towards evaluating client-specific information and possibly other information to determine whether to return less data than is available for a data item in response to a request for graph node data to a data service, and/or return expanded graph node data. When a request for graph data is received, client-specific information is used at least in part by a data service in determining whether to return a virtual graph node comprising a relatively lightweight set of information relative to the full set of information maintained in a main (graph) node. The client-specific information is also used in determining whether to return expanded data beyond that requested, e.g., for caching at the client in anticipation of it likely being needed by the client.


