Client-Side Sorting of Paginated Dataset Pages
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing client-server architectures face inefficiencies when handling large datasets, leading to slow scrolling and sorting due to the need for the server to recompute and resend entire datasets, resulting in high latency and impractical user experiences.
Innovation Solution
Implementing a system where the server manages the dataset and sends only the pages currently viewed by the client, with updates applied locally by the client terminal, reducing the computational burden on both the server and client and minimizing data transfer.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If the server sends the entire dataset to the client terminal for local storage, then the client can access and scroll over the data, but the network traffic and server processing requirements increase significantly
Solution Approach 1:
The dataset is divided into multiple pages, and only the currently viewed page is sent to the client terminal. When the user navigates to different pages, the server sends only those specific pages instead of the entire dataset. This segmentation approach reduces network traffic while maintaining full data accessibility.
Solution Approach 2:
Only the necessary portion of the dataset (the currently viewed page) is extracted and sent to the client terminal. This extraction principle ensures that minimal data is transmitted over the network while the client retains the ability to access the full dataset through server-side pagination.
2Reliability
If the server recomputes and resends entire datasets for sorting operations, then the data remains consistent, but the latency increases and user experience deteriorates
Solution Approach 1:
Sorting operations are performed segment by segment on individual pages rather than on the entire dataset. This allows the server to maintain data consistency through controlled updates while significantly reducing the computational time and latency experienced by users during sorting operations.
Solution Approach 2:
The server pre-computes and stores sorted versions of data pages. When a sorting operation is requested, the server can quickly retrieve pre-sorted data or apply sorting to a single page rather than the entire dataset, thereby maintaining consistency while minimizing latency.
3Quantity of substance
If the client terminal receives all pages of the dataset, then complete data is available locally, but the memory requirements and processing burden on the client increase
Solution Approach 1:
The dataset is segmented into pages, and only the currently required page is loaded into the client terminal's memory. This segmentation allows the client to work with smaller data subsets, reducing memory requirements and processing complexity while maintaining access to the complete dataset through server-side pagination.
Solution Approach 2:
Only the necessary page data is extracted and transferred to the client terminal for processing. This extraction approach ensures that the client handles minimal data at any given time, reducing computational burden while the server maintains the complete dataset for subsequent page deliveries.
Data Source
AI summary
There is provided a system for client-side updating and sort of a page of a dataset, comprising: at least one processor of a client terminal executing a code for: accessing a server to obtain a page of a dataset comprising a plurality of pages, wherein the dataset is sorted according to a sort operation, wherein other pages of the plurality of pages are not provided to the client terminal, presenting the page on a display of the client terminal, receiving at least one update message for updating of a value of the page, applying the update to the page to create an updated page, re-executing the sort operation on the updated page, and presenting the sorted updated page.


