Range Tree Data Storage for Spreadsheet Cell Coordinate Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data storage and retrieval systems face inefficiencies when handling large numbers of interdependent data entries across different documents, databases, and geographical locations, leading to slow propagation of changes due to high computational overhead in recalculating formulas and updating dependencies.
Innovation Solution
A data storage and retrieval system utilizing a Range Tree (RTree) structure in computer memory, where nodes contain minimum bounding rectangles (MBRs) encompassing cells from different columns, allowing for efficient identification and loading of relevant nodes for search operations, and employing dependency graphs for parallel processing of formulas.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If traditional data storage systems are used to handle large numbers of interdependent data entries across different documents and databases, then data propagation and formula recalculation can be performed, but the processing speed becomes very slow due to high computational overhead
Solution Approach 1:
The patent segments the data storage system into multiple independent data structures including dependency graphs, position maps, and value maps. Each data structure handles a specific aspect of data management, allowing parallel processing and reducing the computational overhead of managing interdependent data entries across documents and databases.
Solution Approach 2:
The patent introduces a new dimensional organization of data by implementing a position map that maps cell positions to data locations and a dependency graph that adds a temporal dimension to track formula dependencies. This multi-dimensional approach enables efficient navigation and recalculation by organizing data in spatial and dependency-based dimensions rather than traditional linear storage.
2Productivity
If all nodes are loaded into memory for search operations in a Range Tree structure, then search and retrieval operations can be performed, but memory usage increases significantly
Solution Approach 1:
The patent applies preliminary action by pre-building the Range Tree data structure with organized minimum bounding rectangles and pre-computing position maps that map cell positions to data locations. This preliminary organization allows the system to load only necessary nodes into memory during search operations rather than loading all nodes, thus maintaining fast search performance while reducing memory usage.
Solution Approach 2:
The patent extracts only the necessary portions of the Range Tree into memory by implementing a position map that identifies and loads only the relevant nodes required for a specific search operation. This selective extraction approach maintains fast retrieval speeds by keeping essential data in memory while leaving non-essential data on disk or in external storage.
3Reliability
If formulas are recalculated sequentially to maintain dependencies among data entries, then accuracy is maintained, but processing time increases significantly
Solution Approach 1:
The patent implements dynamics by using a dependency graph that dynamically tracks formula dependencies and enables the system to determine the optimal recalculation order. This dynamic approach allows the system to recalculate formulas in parallel when dependencies permit, maintaining accuracy by respecting dependency constraints while significantly reducing processing time through parallel execution of independent formula recalculations.
Solution Approach 2:
The patent changes the parameter of formula recalculation from sequential to parallel by implementing a dependency-aware scheduling system. The dependency graph allows the system to identify independent formula groups that can be recalculated simultaneously, changing the recalculation parameter from time-sequential to space-parallel while maintaining accuracy through dependency constraint enforcement.
Data Source
AI summary
In an embodiment, a data storage and retrieval system includes a computing device that configures the computer memory according to an RTree (a type of logic tree) representing a structure of a spreadsheet. The computer memory may be internal to or external to the computing device. In an embodiment, the RTree has a plurality of nodes, at least some of which contain one or more minimum bounding rectangles. Each minimum bounding rectangle (“MBR”) encompasses cells of the spreadsheet from a different one of a plurality of columns of the spreadsheet, but does not encompass cells of any of the other columns of the plurality of columns. A node of the RTree may hold multiple MBRs or a single MBR.


