Ability to browse and randomly access a large hierarchy in near constant time in a stateless application
AssigneeOracle International Corporation
InventorsAnurag Garg, Jeffrey Leon Woodard
Life of this patent
Estimating the term…
Abstract
A browser is disclosed that provides for browsing a hierarchical dataset including potentially millions of nodes. The hierarchical dataset may be located on a machine that is remote to the machine hosting the browser. Through selective, intelligent fetching and local cache management of sparse portions of the hierarchical dataset, the browser provides consistent and predictable response times for displaying a randomly-selected node in the context of proximate nodes in the hierarchy.
Claims20
One or more non-transitory computer readable media storing instructions which, when executed by one or more hardware processors, cause:
- displaying, in a display window, a first subset of nodes in a first section of a hierarchical tree of nodes, the hierarchical tree of nodes on a remote machine;
- receiving a request for displaying a target node in the hierarchical tree of nodes, the target node not being displayed when the request is received;
- analyzing the hierarchical tree of nodes to determine relationships between the target node and one or more other nodes in the hierarchical tree of nodes;
- based on the relationships and a configuration corresponding to the display window, determining that (a) a second section of the hierarchical tree is to be displayed in the display window when displaying the target node, the second section comprising the target node and a second subset of nodes in the hierarchical tree of nodes and (b) a third section of the hierarchical tree is not to be displayed in the display window when displaying the target node, the third section comprising a third subset of nodes in the hierarchical tree of nodes;
- responsive to determining that the second section is to be displayed in the display window when displaying the target node and that the third section is not to be displayed when displaying the target node:
- fetching, from the remote machine, the target node and the second subset of nodes comprised in the second section of the hierarchical tree of nodes, without fetching the third subset of nodes comprised in the third section of the hierarchical tree of nodes;
- and
- concurrently displaying the target node and the second subset of nodes in the second section of the hierarchical tree of nodes, without displaying the third subset of nodes in the third section of the hierarchical tree of nodes.
One or more non-transitory computer readable media storing instructions which, when executed by one or more hardware processors, cause:
- fetching information corresponding to both (a) a first subset of nodes in a hierarchical tree of nodes and (b) a second subset of nodes in the hierarchical tree of nodes without fetching information corresponding to a third subset of nodes;
- displaying information for the first subset of nodes without displaying the second subset of nodes;
- responsive to receiving user input modifying a view associated with the hierarchical tree of nodes:
- displaying the second subset of nodes;
- and
- determining that the third subset of nodes are adjacent to the second subset of nodes in a view of the second subset of nodes.
A method comprising:
- displaying, in a display window, a first subset of nodes in a first section of a hierarchical tree of nodes, the hierarchical tree of nodes on a remote machine;
- receiving a request for displaying a target node in the hierarchical tree of nodes, the target node not being displayed when the request is received;
- analyzing the hierarchical tree of nodes to determine relationships between the target node and one or more other nodes in the hierarchical tree of nodes;
- based on the relationships and a configuration corresponding to the display window, determining that (a) a second section of the hierarchical tree is to be displayed in the display window when displaying the target node, the second section comprising the target node and a second subset of nodes in the hierarchical tree of nodes and (b) a third section of the hierarchical tree is not to be displayed in the display window when displaying the target node, the third section comprising a third subset of nodes in the hierarchical tree of nodes;
- responsive to determining that the second section is to be displayed in the display window when displaying the target node and that the third section is not to be displayed when displaying the target node:
- fetching, from the remote machine, the target node and the second subset of nodes comprised in the second section of the hierarchical tree of nodes, without fetching the third subset of nodes comprised in the third section of the hierarchical tree of nodes;
- and
- concurrently displaying the target node and the second subset of nodes in the second section of the hierarchical tree of nodes, without displaying the third subset of nodes in the third section of the hierarchical tree of nodes.
A system comprising:
- at least one hardware device including a processor;
- and
- the system configured to perform:
- displaying, in a display window, a first subset of nodes in a first section of a hierarchical tree of nodes, the hierarchical tree of nodes on a remote machine;
- receiving a request for displaying a target node in the hierarchical tree of nodes, the target node not being displayed when the request is received;
- analyzing the hierarchical tree of nodes to determine relationships between the target node and one or more other nodes in the hierarchical tree of nodes;
- based on the relationships and a configuration corresponding to the display window, determining that (a) a second section of the hierarchical tree is to be displayed in the display window when displaying the target node, the second section comprising the target node and a second subset of nodes in the hierarchical tree of nodes and (b) a third section of the hierarchical tree is not to be displayed in the display window when displaying the target node, the third section comprising a third subset of nodes in the hierarchical tree of nodes;
- responsive to determining that the second section is to be displayed in the display window when displaying the target node and that the third section is not to be displayed when displaying the target node:
- fetching, from the remote machine, the target node and the second subset of nodes comprised in the second section of the hierarchical tree of nodes, without fetching the third subset of nodes comprised in the third section of the hierarchical tree of nodes;
- and
- concurrently displaying the target node and the second subset of nodes in the second section of the hierarchical tree of nodes, without displaying the third subset of nodes in the third section of the hierarchical tree of nodes.
Dependencies are inferred from the claim text.