Web Spreadsheet Grid Block Asynchronous Loading
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Web-based spreadsheet applications often result in a user experience that differs from locally executed applications due to disparities in display capabilities and data retrieval methods, leading to delays and interactivity issues during navigation and dynamic updates.
Innovation Solution
Implementing asynchronous retrieval and rendering of grid data in blocks to mimic the navigation and update experience of locally executed spreadsheet applications, where blocks are loaded and unloaded based on user interaction and viewport requirements, optimizing resource usage and reducing network delays.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If all grid data is retrieved and displayed at once in web-based spreadsheet applications, then complete data availability is achieved, but network delays and degradation of user experience occur
Solution Approach 1:
The spreadsheet grid data is divided into multiple blocks, where each block represents a portion of the overall data set. The system retrieves and displays only the blocks that are currently visible or likely to be viewed, rather than loading all data at once. This segmentation approach maintains complete data availability on the server while significantly reducing initial network transfer time and improving display performance.
Solution Approach 2:
The system performs preliminary actions by pre-fetching and caching grid blocks that are likely to be needed based on user navigation patterns. As users navigate through the spreadsheet, the system anticipates future viewing areas and retrieves those blocks in advance, reducing perceived delays and maintaining smooth user experience.
2Ease of operation
If grid data is retrieved asynchronously in blocks, then user experience is improved, but system complexity increases
Solution Approach 1:
The patent introduces a block manager component that acts as an intermediary between the user interface and the data retrieval system. This block manager handles the complexity of asynchronous block retrieval, caching, and rendering automatically, allowing the rest of the system to operate with simpler logic while still achieving improved user experience through progressive data loading.
3Adaptability or versatility
If data is retrieved over network in web services, then accessibility is improved, but interactivity and display speed deteriorate
Solution Approach 1:
The system implements local quality by caching retrieved grid blocks in the user's browser or local storage. Once data is retrieved from the network, it is stored locally for rapid access during navigation and interactions. This approach maintains the accessibility benefits of web-based services while dramatically improving display speed for subsequent operations, as the browser can access cached blocks without additional network requests.
Data Source
AI summary
Users are enabled to navigate a spreadsheet document presented by a web service in a similar fashion to a locally executed spreadsheet application by retrieving blocks of grid data asynchronously in order to display or refresh the area(s) of the spreadsheet currently being viewed by the user as the user navigates the spreadsheet grid or dynamic updates occur. The blocks are laid out in the browser's user interface to fill the user's viewport as well as a predefined buffer around the edge of the viewport. As such, when the user scrolls or updates occur, data associated with blocks are added, updated, or removed in the browser as required to fill the user's viewport.


