Generating shortcut paths between related objects

US12554748B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12554748-B2
Application numberUS-202318540844-A
CountryUS
Kind codeB2
Filing dateDec 14, 2023
Priority dateAug 23, 2021
Publication dateFeb 17, 2026
Grant dateFeb 17, 2026

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method executes at a computing device having one or more processors and memory. The device identifies a set of objects for a data visualization platform, each object in the set of objects representing a database, a data source, a table, a data field, a user, a visualization worksheet, or a calculated field. The device generates a data model from the set of objects. Each object of the set of objects is represented as a node in the data model and each directed edge in the data model identifies a relationship between a pair of objects. The device generates one or more shortcuts in the data model according to object types of the objects in the set of objects. Each shortcut represents a relationship, between a respective pair of objects, not represented by a directed edge. Then the device stores the data model, including the generated shortcuts, in the memory.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method for managing data performed at a computing device having one or more processors and memory storing one or more programs configured for execution by the one or more processors, the method comprising: identifying, by the one or more processors, a set of objects for a data visualization platform, each object in the set of objects representing a database, a data source, a table, a data field, a user, a visualization worksheet, or a calculated field; generating based on a schema model, by the one or more processors, a data model from the set of objects, wherein each object of the set of objects is represented as a node in the data model and each directed edge in the data model identifies a relationship between a pair of objects, wherein the data model includes shortcuts and a respective shortcut includes a source object, a target object, and a flow direction, and at least some of the shortcuts are persisted shortcuts; storing, in the memory, the data model, including the one or more shortcuts and the persisted shortcuts; and in response to receiving a query at the data visualization platform: resolving the query by using the one or more shortcuts, wherein resolving the query comprises parsing the query and determining that the query references objects that are associated with one or more shortcuts, wherein resolving the query includes: generating shortcut directed paths for the one or more shortcuts; determining relevant persisted shortcuts from the persisted shortcuts in the data model, wherein the relevant persisted shortcuts are persisted shortcuts that match data types included in the one or more shortcuts; replacing respective shortcuts with the relevant persisted shortcuts in the shortcut directed paths; and storing, in memory, the shortcut directed paths to be used for resolving subsequent queries. 2 . The method of claim 1 , wherein generating the shortcut directed paths comprises computing one or more closures by traversing the data model, wherein each closure comprises a portion of nodes and edges of the data model separated by a data flow boundary. 3 . The method of claim 2 , wherein the data flow boundary defines a boundary between column objects and column field objects along a predefined edge. 4 . The method of claim 2 , wherein computing the one or more closures is based on one or more closure hints for determining conditions for including objects into closures. 5 . The method of claim 4 , wherein the one or more closure hints comprise a closure hint for forming a closure between column objects and table objects along an edge identified as a table. 6 . The method of claim 4 , wherein the one or more closure hints reference objects, relationships and flow directions for generating the one or more closures. 7 . The method of claim 4 , wherein the one or more closure hints include indicators (i) if a closure is an up closure or a down closure, and (ii) if both up closures and down closures need to be generated for a pair of objects, wherein edges directed away from a source object on a path towards a target object are edges in a down direction for down closures, and wherein edges directed away from the target object to the source object are edges in an up direction for up closures. 8 . The method of claim 4 , wherein the one or more closure hints include at least one named relationship that indicate an edge in the data model that links a source object with a target object. 9 . The method of claim 1 , wherein each shortcut is defined by at least a source object, target object, and a flow direction. 10 . The method of claim 1 , wherein each shortcut corresponds to a directed path from a source object to a target object such that changes in the data model does not invalidate the shortcut. 11 . The method of claim 1 , wherein storing the one or more shortcuts comprises caching the generated shortcuts for a predetermined duration, for a duration of a session, or for reuse between sessions. 12 . A system for visualizing data, comprising: one or more processors; memory coupled to the one or more processors; and one or more programs stored in the memory and configured for execution by the one or more processors, the one or more programs comprising instructions for: identifying, by the one or more processors, a set of objects for a data visualization platform, each object in the set of objects representing a database, a data source, a table, a data field, a user, a visualization worksheet, or a calculated field; generating based on a schema model, by the one or more processors, a data model from the set of objects, wherein each object of the set of objects is represented as a node in the data model and each directed edge in the data model identifies a relationship between a pair of objects, wherein the data model includes shortcuts and a respective shortcut includes a source object, a target object, and a flow direction, and at least some of the shortcuts are persisted shortcuts; storing, in the memory, the data model, including the one or more shortcuts and the persisted shortcuts; and in response to receiving a query at the data visualization platform: resolving the query by using the one or more shortcuts, wherein resolving the query comprises parsing the query and determining that the query references objects that are associated with one or more shortcuts, wherein resolving the query includes: generating shortcut directed paths for the one or more shortcuts; determining relevant persisted shortcuts from the persisted shortcuts in the data model, wherein the relevant persisted shortcuts are persisted shortcuts that match data types included in the one or more shortcuts; replacing respective shortcuts with the relevant persisted shortcuts in the shortcut directed paths; and storing, in memory, the shortcut directed paths to be used for resolving subsequent queries. 13 . The system of claim 12 , wherein generating the shortcut directed paths comprises computing one or more closures by traversing the data model, wherein each closure comprises a portion of nodes and edges of the data model separated by a data flow boundary. 14 . The system of claim 13 , wherein the data flow boundary defines a boundary between column objects and column field objects along a predefined edge. 15 . The system of claim 13 , wherein computing the one or more closures is based on one or more closure hints for determining conditions for including objects into closures. 16 . The system of claim 15 , wherein the one or more closure hints comprises a closure hint between column objects and table objects along an edge identified as a table. 17 . A non-transitory computer readable storage medium storing one or more programs, the one or more programs configured for execution by a computing device having one or more processors, memory, and one or more programs comprising instructions for: identifying, by the one or more processors, a set of objects for a data visualization platform, each object in the set of objects representing a database, a data source, a table, a data field, a user, a visualization worksheet, or a calculated field; generating based on a schema model, by the one or more processors, a data model from the set of objects, wherein each object of the set of objects is represented as a node in the data model and each directed edge in the data model identifies a relationship between a pair of objects, wherein the data model includes shortcuts and a respective shortcut includes a source object, a target object, an

Assignees

Inventors

Classifications

  • Presentation of query results · CPC title

  • with adaptation to user needs · CPC title

  • Visual data mining; Browsing structured data · CPC title

  • Trees, e.g. B+trees · CPC title

  • Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12554748B2 cover?
A method executes at a computing device having one or more processors and memory. The device identifies a set of objects for a data visualization platform, each object in the set of objects representing a database, a data source, a table, a data field, a user, a visualization worksheet, or a calculated field. The device generates a data model from the set of objects. Each object of the set of o…
Who is the assignee on this patent?
Tableau Software Llc
What technology area does this patent fall under?
Primary CPC classification G06F16/288. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 17 2026 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).