Data storage and retrieval system and method for storing cell coordinates in a computer memory
AssigneeWorkiva Inc.
InventorDustin Lee Hiatt
Life of this patent
Estimating the term…
Abstract
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.
Claims15
A method for maintaining coordinates of cells of a spreadsheet, the method carried out by a first computing device communicatively linked to a second computing device, the method comprising
- receiving a request for an action to be carried out on a cell of the spreadsheet;
- in response to the request, carrying out a traversal of an RTree comprising a plurality of nodes, in which at least some of the plurality of nodes contains one or more minimum bounding rectangles, in which each minimum bounding rectangle represents a single column of the spreadsheet;
- based on the traversal, identifying a node of the plurality containing the minimum bounding rectangle representing the column in which the cell is located,
- loading, from a data store, one or more child nodes of the identified node until a node containing a reference to the cell is located;
- carrying out the requested action with respect to the cell;
- and
- updating the spreadsheet displayed on the second computing device in accordance with the carried out action.
A first computing device communicatively linked to a second computing device, the first computing device comprising processor hardware configured to carry out actions comprising:
- receiving a request for an action to be carried out on a cell of the spreadsheet;
- in response to the request, carrying out a traversal of an RTree comprising a plurality of nodes, in which at least some of the plurality of nodes contains one or more minimum bounding rectangles, in which each minimum bounding rectangle represents a single column of the spreadsheet;
- based on the traversal, identifying a node of the plurality containing the minimum bounding rectangle representing the column in which the cell is located,
- loading, from a data store, one or more child nodes of the identified node until a node containing a reference to the cell is located;
- carrying out the requested action with respect to the cell;
- and
- updating the spreadsheet displayed on the second computing device in accordance with the carried out action.
A non-transitory computer-readable medium having stored thereon computer-executable instructions for carrying out actions comprising:
- receiving a request for an action to be carried out on a cell of the spreadsheet;
- in response to the request, carrying out a traversal of an RTree comprising a plurality of nodes, in which at least some of the plurality of nodes contains one or more minimum bounding rectangles, in which each minimum bounding rectangle represents a single column of the spreadsheet;
- based on the traversal, identifying a node of the plurality containing the minimum bounding rectangle representing the column in which the cell is located,
- loading, from a data store, one or more child nodes of the identified node until a node containing a reference to the cell is located;
- carrying out the requested action with respect to the cell;
- and
- updating the spreadsheet displayed on the second computing device in accordance with the carried out action.
Dependencies are inferred from the claim text.