Table user-defined function for graph data processing

US12380108B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12380108-B2
Application numberUS-202418582395-A
CountryUS
Kind codeB2
Filing dateFeb 20, 2024
Priority dateSep 13, 2022
Publication dateAug 5, 2025
Grant dateAug 5, 2025

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 may include receiving a definition of a table user-defined function (TUDF) in a graph query language. The table user-defined function may be created based on the definition. For example, the creation of the table user-defined function may include checking and compiling the definition to generate executable code associated with the table user-defined function. Upon receiving a query including a relational query language statement invoking the table user-defined function, such as a structured query language select statement, the query may be executed on at least a portion of a graph data stored in a database. The executing of the query may include calling the executable code to execute the table user-defined function included in the relational query language statement. Related systems and computer program products are also provided.

First claim

Opening claim text (preview).

What is claimed is: 1. A system, comprising: at least one data processor; and at least one memory storing instructions which, when executed by the at least one data processor, result in operations comprising: creating, based at least on a definition, a table user-defined function in a graph query language; compiling the definition of the table user-defined function, wherein the compiling of the definition of the table user-defined function includes verifying a first table type of a table output by the table user-defined function, wherein the compiling of the definition of the table user-defined function includes verifying an existence and validity of one or more graph workspaces referenced in the definition of the table user-defined function and/or verifying that each execution path within the definition returns a same table type; receiving a query including a relational query language statement invoking the table user-defined function; and executing, on at least a portion of a graph data stored in a database, the query including by executing the table user-defined function included in the relational query language statement. 2. The system of claim 1 , wherein the table user-defined function is defined to perform graph specific processing on a graph workspace containing one or more vertex tables and edge tables forming the graph data. 3. The system of claim 1 , wherein the operations further comprise: verifying that a schema qualified name of the table user-defined function specified in the definition is unique within a schema of a graph workspace referenced in the definition and adheres to a naming convention associated with the relational query language statement. 4. The system of claim 1 , wherein the operations further comprise: verifying that a creator of the table user-defined function has a privilege to define a function and/or replace a function in a given schema. 5. The system of claim 1 , wherein the compiling of the definition of the table user-defined function causes generation of an executable code associated with the table user-defined function. 6. The system of claim 5 , wherein the compiling of the definition of the table user-defined function includes verifying that the first table type of the table output by the table user-defined function matches a second table type defined in a function signature. 7. The system of claim 5 , wherein the table user-defined function is executed by at least calling the executable code associated with the table user-defined function. 8. The system of claim 1 , wherein the table user-defined function implements a graph processing algorithm comprising one or more of subgraph, inverse graph, in-degree, out-degree, incoming edges, outgoing edges, neighbors, is-reachable, shortest path, shortest path one to all, k shortest paths, strongly connected components, depth first traversal, and breadth first traversal. 9. The system of claim 1 , wherein the relational query language statement comprises GraphScript. 10. The system of claim 1 , wherein the relational query language statement is a structured query language (SQL) select statement. 11. The system of claim 1 , wherein the table user-defined function is invoked in a FROM clause of an SQL select statement. 12. The system of claim 1 , wherein the table user-defined function provides read-only access to the graph data. 13. The system of claim 1 , wherein the definition of the table user-defined function specifies one or more of a name of the table user-defined function, a schema name of the table user-defined function, a parameter of the table user-defined function, a security mode of the table user-defined function, and a type of table output by the table user-defined function. 14. A computer-implemented method, comprising: creating, based at least on a definition, a table user-defined function in a graph query language; compiling the definition of the table user-defined function, wherein the compiling of the definition of the table user-defined function includes verifying a first table type of a table output by the table user-defined function, wherein the compiling of the definition of the table user-defined function includes verifying an existence and validity of one or more graph workspaces referenced in the definition of the table user-defined function and/or verifying that each execution path within the definition returns a same table type; receiving a query including a relational query language statement invoking the table user-defined function; and executing, on at least a portion of a graph data stored in a database, the query including by executing the table user-defined function included in the relational query language statement. 15. The method of claim 14 , wherein the table user-defined function is defined to perform graph specific processing on a graph workspace containing one or more vertex tables and edge tables forming the graph data. 16. The method of claim 14 , further comprising: verifying that a schema qualified name of the table user-defined function specified in the definition is unique within a schema of a graph workspace referenced in the definition and adheres to a naming convention associated with the relational query language statement. 17. The method of claim 14 , further comprising: verifying that a creator of the table user-defined function has a privilege to define a function and/or replace a function in a given schema. 18. A non-transitory computer readable medium storing instructions, which when executed by at least one data processor, result in operations comprising: creating, based at least on a definition, a table user-defined function in a graph query language; compiling the definition of the table user-defined function, wherein the compiling of the definition of the table user-defined function includes verifying a first table type of a table output by the table user-defined function, wherein the compiling of the definition of the table user-defined function includes verifying an existence and validity of one or more graph workspaces referenced in the definition of the table user-defined function and/or verifying that each execution path within the definition returns a same table type; receiving a query including a relational query language statement invoking the table user-defined function; and executing, on at least a portion of a graph data stored in a database, the query including by executing the table user-defined function included in the relational query language statement.

Assignees

Inventors

Classifications

  • Graphs; Linked lists (G06F16/9027 takes precedence) · CPC title

  • of query operations · 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 US12380108B2 cover?
A method may include receiving a definition of a table user-defined function (TUDF) in a graph query language. The table user-defined function may be created based on the definition. For example, the creation of the table user-defined function may include checking and compiling the definition to generate executable code associated with the table user-defined function. Upon receiving a query inc…
Who is the assignee on this patent?
Sap Se
What technology area does this patent fall under?
Primary CPC classification G06F16/9024. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 05 2025 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).