Patents by Inventor Jean-Pierre Lozi
Jean-Pierre Lozi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11921785Abstract: Techniques described herein allow a user of an RDBMS to specify a graph algorithm function (GAF) declaration, which defines a graph algorithm that takes a graph object as input and returns a logical graph object as output. A database dictionary stores the GAF declaration, which allows addition of GAFs without changing the RDBMS kernel. GAFs are used within graph queries to compute output properties of property graph objects. Output properties are accessible in the enclosing graph pattern matching query, and are live for the duration of the query cursor execution. According to various embodiments, the declaration of a GAF includes a DESCRIBE function, used for semantic analysis of the GAF, and an EXECUTE function, which defines the operations performed by the GAF. Furthermore, composition of GAFs in a graph query is done by supplying, as the input graph argument of an outer GAF, the result of an inner GAF.Type: GrantFiled: January 25, 2022Date of Patent: March 5, 2024Assignee: Oracle International CorporationInventors: Hugo Kapp, Laurent Daynes, Vlad Ioan Haprian, Jean-Pierre Lozi, Zhen Hua Liu, Marco Arnaboldi, Sabina Petride, Andrew Witkowski, Hassan Chafi, Sungpack Hong
-
Publication number: 20230267120Abstract: Techniques described herein allow a user of an RDBMS to specify a graph algorithm function (GAF) that takes a graph object as input and returns a logical graph object as output. GAFs are used within graph queries to compute temporary and output properties (“GAF-computed properties”), which are live for the duration of the query cursor execution. GAF-computed output properties are accessible in the enclosing graph pattern matching query as though they were part of the input graph object of the GAF. Temporary cursor-duration tables are generated for the query cursor during compilation of a graph query that includes a GAF, and are used to store the GAF-computed properties. Each temporary table corresponds to one of the primary tables of the input graph, and includes, as a foreign key, primary key information from the corresponding primary table. Thus, the input graph of a GAF may be a “heterogeneous” graph.Type: ApplicationFiled: January 26, 2022Publication date: August 24, 2023Inventors: Hugo Kapp, Laurent Daynes, Vlad Ioan Haprian, Jean-Pierre Lozi, Zhen Hua Liu, Marco Arnaboldi, Sabina Petride, Andrew Witkowski, Hassan Chafi, Sungpack Hong
-
Publication number: 20230252077Abstract: Techniques described herein allow a user of an RDBMS to specify a graph algorithm function (GAF) declaration, which defines a graph algorithm that takes a graph object as input and returns a logical graph object as output. A database dictionary stores the GAF declaration, which allows addition of GAFs without changing the RDBMS kernel. GAFs are used within graph queries to compute output properties of property graph objects. Output properties are accessible in the enclosing graph pattern matching query, and are live for the duration of the query cursor execution. According to various embodiments, the declaration of a GAF includes a DESCRIBE function, used for semantic analysis of the GAF, and an EXECUTE function, which defines the operations performed by the GAF. Furthermore, composition of GAFs in a graph query is done by supplying, as the input graph argument of an outer GAF, the result of an inner GAF.Type: ApplicationFiled: January 25, 2022Publication date: August 10, 2023Inventors: Hugo Kapp, Laurent Daynes, Vlad Ioan Haprian, Jean-Pierre Lozi, Zhen Hua Liu, Marco Arnaboldi, Sabina Petride, Andrew Witkowski, Hassan Chafi, Sungpack Hong
-
Publication number: 20230214407Abstract: Adaptive data collections may include various type of data arrays, sets, bags, maps, and other data structures. A simple interface for each adaptive collection may provide access via a unified API to adaptive implementations of the collection. A single adaptive data collection may include multiple, different adaptive implementations. A system configured to implement adaptive data collections may include the ability to adaptively select between various implementations, either manually or automatically, and to map a given workload to differing hardware configurations. Additionally, hardware resource needs of different configurations may be predicted from a small number of workload measurements. Adaptive data collections may provide language interoperability, such as by leveraging runtime compilation to build adaptive data collections and to compile and optimize implementation code and user code together.Type: ApplicationFiled: February 24, 2023Publication date: July 6, 2023Inventors: Iraklis Psaroudakis, Stefan Kaestle, Daniel J. Goodman, Jean-Pierre Lozi, Matthias Grimmer, Timothy L. Harris
-
Patent number: 11675785Abstract: Techniques are described for enabling in-memory execution of any-sized graph data query by utilizing both depth first search (DFS) principles and breadth first search (BFS) principles to control the amount of memory used during query execution. Specifically, threads implementing a graph DBMS switch between a BFS mode of data traversal and a DFS mode of data traversal. For example, when a thread detects that there are less than a configurable threshold number of intermediate results in memory, the thread enters BFS-based traversal techniques to increase the number of intermediate results in memory. When the thread detects that there are at least the configurable threshold number of intermediate results in memory, the thread enters DFS mode to produce final results, which generally works to move the intermediate results that are currently available in memory to final query results, thereby reducing the number of intermediate results in memory.Type: GrantFiled: January 31, 2020Date of Patent: June 13, 2023Assignee: Oracle International CorporationInventors: Vasileios Trigonakis, Tomas Faltin, Jean-Pierre Lozi, Vlad Ioan Haprian, Sungpack Hong, Hassan Chafi
-
Patent number: 11593398Abstract: Adaptive data collections may include various type of data arrays, sets, bags, maps, and other data structures. A simple interface for each adaptive collection may provide access via a unified API to adaptive implementations of the collection. A single adaptive data collection may include multiple, different adaptive implementations. A system configured to implement adaptive data collections may include the ability to adaptively select between various implementations, either manually or automatically, and to map a given workload to differing hardware configurations. Additionally, hardware resource needs of different configurations may be predicted from a small number of workload measurements. Adaptive data collections may provide language interoperability, such as by leveraging runtime compilation to build adaptive data collections and to compile and optimize implementation code and user code together.Type: GrantFiled: October 9, 2020Date of Patent: February 28, 2023Assignee: Oracle International CorporationInventors: Iraklis Psaroudakis, Stefan Kaestle, Daniel J. Goodman, Jean-Pierre Lozi, Matthias Grimmer, Timothy L. Harris
-
Patent number: 11593323Abstract: Herein are techniques that concurrently populate entries in a compressed sparse row (CSR) encoding, of a type of edge of a heterogenous graph. In an embodiment, a computer obtains a mapping of a relational schema to a graph data model. The relational schema defines vertex tables that correspond to vertex types in the graph data model, and edge tables that correspond to edge types in the graph data model. Each edge type is associated with a source vertex type and a target vertex type. For each vertex type, a sequence of persistent identifiers of vertices is obtained. Based on the mapping and for a CSR representation of each edge type, a source array is populated that, for a same vertex ordering as the sequence of persistent identifiers for the source vertex type, is based on counts of edges of the edge type that originate from vertices of the source vertex type.Type: GrantFiled: July 8, 2021Date of Patent: February 28, 2023Assignee: Oracle International CorporationInventors: Marco Arnaboldi, Jean-Pierre Lozi, Laurent Phillipe Daynes, Vlad Ioan Haprian, Shasank Kisan Chavan, Hugo Kapp, Sungpack Hong
-
Patent number: 11567932Abstract: Techniques support graph pattern matching queries inside a relational database management system (RDBMS) that supports SQL execution. The techniques compile a graph pattern matching query into a SQL query that can then be executed by the relational engine. As a result, techniques enable execution of graph pattern matching queries on top of the relational engine by avoiding any change in the existing SQL engine.Type: GrantFiled: October 26, 2020Date of Patent: January 31, 2023Assignee: Oracle International CorporationInventors: Vlad Haprian, Laurent Daynes, Zhen Hua Liu, Lei Sheng, Hugo Kapp, Marco Arnaboldi, Jean-Pierre Lozi, Andrew Witkowski, Hassan Chafi, Sungpack Hong
-
Patent number: 11537579Abstract: In an embodiment, a computer obtains a mapping of a relational schema of a database to a graph data model. The relational schema identifies vertex table(s) that correspond to vertex type(s) in the graph data model and edge table(s) that correspond to edge type(s) in the graph data model. Each edge type is associated with a source vertex type and a target vertex type. Based on that mapping, a forward compressed sparse row (CSR) representation is populated for forward traversal of edges of a same edge type. Each edge originates at a source vertex and terminates at a target vertex. Based on the forward CSR representation, a reverse CSR representation of the edge type is populated for reverse traversal of the edges of the edge type. Acceleration occurs in two ways. Values calculated for the forward CSR are reused for the reverse CSR. Elastic and inelastic scaling may occur.Type: GrantFiled: March 12, 2020Date of Patent: December 27, 2022Assignee: Oracle International CorporationInventors: Jean-Pierre Lozi, Marco Arnaboldi, Laurent Phillipe Daynes, Vlad Ioan Haprian, Hugo Kapp
-
Patent number: 11507579Abstract: Techniques support graph pattern matching queries inside a relational database management system (RDBMS) that supports SQL execution. The techniques compile a graph pattern matching query into a SQL query that can then be executed by the relational engine. As a result, techniques enable execution of graph pattern matching queries on top of the relational engine by avoiding any change in the existing SQL engine.Type: GrantFiled: October 26, 2020Date of Patent: November 22, 2022Assignee: Oracle International CorporationInventors: Vlad Haprian, Laurent Daynes, Zhen Hua Liu, Lei Sheng, Hugo Kapp, Marco Arnaboldi, Jean-Pierre Lozi, Andrew Witkowski, Hassan Chafi, Sungpack Hong
-
Patent number: 11500868Abstract: Vertex/edge table rows are mapped to unique integer identifiers, to enable construction of in-memory representation of a graph from existing, unmodified RDBMS tables. The unique integer identifiers are based on an encoding of primary key values of the table rows. The unique integer identifiers are used as graph indexes of the in-memory representation.Type: GrantFiled: January 29, 2021Date of Patent: November 15, 2022Assignee: Oracle International CorporationInventors: Andrea Segalini, Jean-Pierre Lozi, Laurent Daynes, Marco Arnaboldi, Vlad Ioan Haprian, Hugo Kapp, Shasank Kisan Chavan, Zhen Hua Liu, Danica Porobic
-
Publication number: 20220245147Abstract: Techniques are provided for mapping vertex/edge table rows to unique integer identifiers, to enable construction of in-memory representation of a graph from existing, unmodified RDBMS tables. The unique integer identifiers are based on an encoding of primary key values of the table rows. The unique integer identifiers are used as graph indexes of the in-memory representation.Type: ApplicationFiled: January 29, 2021Publication date: August 4, 2022Inventors: Andrea Segalini, Jean-Pierre Lozi, Laurent Daynes, Marco Arnaboldi, Vlad Ioan Haprian, Hugo Kapp, Shasank Kisan Chavan, Zhen Hua Liu, Danica Porobic
-
Patent number: 11397732Abstract: An in-memory graph query runtime is integrated inside a database management system and is capable of performing simple patter-matching queries against homogeneous graphs. The runtime efficiently combines breadth-first (BFS) and depth-first (DFS) neighbor traversal algorithms to achieve a hybrid runtime that takes the best from both sides. As a result, the hybrid runtime is able to process arbitrarily large queries with a fixed amount of memory, optimizing for memory locality.Type: GrantFiled: December 11, 2019Date of Patent: July 26, 2022Assignee: Oracle International CorporationInventors: Vlad Haprian, Laurent Daynes, Shasank K. Chavan, Jean-Pierre Lozi, Vasileios Trigonakis, Sungpack Hong, Marco Arnaboldi, Ciprian Baetu
-
Patent number: 11392623Abstract: An in-memory graph query runtime is integrated inside a database management system and is capable of performing simple patter-matching queries against homogeneous graphs. The runtime efficiently combines breadth-first (BFS) and depth-first (DFS) neighbor traversal algorithms to achieve a hybrid runtime that takes the best from both sides. As a result, the hybrid runtime is able to process arbitrarily large queries with a fixed amount of memory, optimizing for memory locality.Type: GrantFiled: December 11, 2019Date of Patent: July 19, 2022Assignee: Oracle International CorporationInventors: Vlad Haprian, Laurent Daynes, Shasank K. Chavan, Jean-Pierre Lozi, Vasileios Trigonakis, Sungpack Hong, Marco Arnaboldi, Ciprian Baetu
-
Patent number: 11392624Abstract: An in-memory graph query runtime is integrated inside a database management system and is capable of performing simple patter-matching queries against homogeneous graphs. The runtime efficiently combines breadth-first (BFS) and depth-first (DFS) neighbor traversal algorithms to achieve a hybrid runtime that takes the best from both sides. As a result, the hybrid runtime is able to process arbitrarily large queries with a fixed amount of memory, optimizing for memory locality.Type: GrantFiled: December 11, 2019Date of Patent: July 19, 2022Assignee: Oracle International CorporationInventors: Vlad Haprian, Laurent Daynes, Shasank K. Chavan, Jean-Pierre Lozi, Vasileios Trigonakis, Sungpack Hong, Marco Arnaboldi, Ciprian Baetu
-
Publication number: 20220179859Abstract: Systems and methods for improving evaluation of graph queries through depth first traversals are described herein. In an embodiment, a multi-node system evaluates against graph data a graph query that specifies a particular pattern to match by determining, at a first node of the multi-node system, in a particular instance of evaluating the graph query, that one or more first vertices on the first node match a first portion of the graph query and that a second vertex that is to be evaluated next is stored on a second node separate from the first node. In response to determining that the next vertex to be evaluated is stored on the second node separate from the first node, the first node generates a message to the second node comprising one or more results of the first portion of the graph query based on the one or more first vertices, an identifier of the next vertex, and a current stage of evaluating the graph query.Type: ApplicationFiled: December 9, 2020Publication date: June 9, 2022Inventors: Tomas Faltin, Vasileios Trigonakis, Jean-Pierre Lozi, Sungpack Hong, Hassan Chafi
-
Publication number: 20220129461Abstract: Techniques support graph pattern matching queries inside a relational database management system (RDBMS) that supports SQL execution. The techniques compile a graph pattern matching query into a SQL query that can then be executed by the relational engine. As a result, techniques enable execution of graph pattern matching queries on top of the relational engine by avoiding any change in the existing SQL engine.Type: ApplicationFiled: October 26, 2020Publication date: April 28, 2022Inventors: Vlad Haprian, Laurent Daynes, Zhen Hua Liu, Lei Sheng, Hugo Kapp, Marco Arnaboldi, Jean-Pierre Lozi, Andrew Witkowski, Hassan Chafi, Sungpack Hong
-
Publication number: 20220129465Abstract: Techniques support graph pattern matching queries inside a relational database management system (RDBMS) that supports SQL execution. The techniques compile a graph pattern matching query into a SQL query that can then be executed by the relational engine. As a result, techniques enable execution of graph pattern matching queries on top of the relational engine by avoiding any change in the existing SQL engine.Type: ApplicationFiled: October 26, 2020Publication date: April 28, 2022Inventors: Vlad Haprian, Laurent Daynes, Zhen Hua Liu, Lei Sheng, Hugo Kapp, Marco Arnaboldi, Jean-Pierre Lozi, Andrew Witkowski, Hassan Chafi, Sungpack Hong
-
Publication number: 20220129451Abstract: Techniques support graph pattern matching queries inside a relational database management system (RDBMS) that supports SQL execution. The techniques compile a graph pattern matching query into a SQL query that can then be executed by the relational engine. As a result, techniques enable execution of graph pattern matching queries on top of the relational engine by avoiding any change in the existing SQL engine.Type: ApplicationFiled: October 26, 2020Publication date: April 28, 2022Inventors: Vlad Haprian, Laurent Daynes, Zhen Hua Liu, Lei Sheng, Hugo Kapp, Marco Arnaboldi, Jean-Pierre Lozi, Andrew Witkowski, Hassan Chafi, Sungpack Hong
-
Publication number: 20220114178Abstract: Techniques are provided for processing a graph query by exploiting an in-memory graph index and minimizing the number of storage accesses needed to project properties of generated paths. A predefined number of paths from a graph query runtime is accumulated, using different data structures, before executing storage accesses necessary to retrieve all properties needed. A first data structure stores all paths from the graph query runtime that hit cache(s) entirely. A second data structure stores paths that do not hit caches at any level or only a subset of the levels does. Once any of these data structures are full, result rows are produced based on the two data structures prior to extracting more paths from the graph query runtime.Type: ApplicationFiled: January 29, 2021Publication date: April 14, 2022Inventors: Vlad Ioan Haprian, Mikael Gonzalez Morales, Laurent Daynes, Zhen Hua Liu, Danica Porobic, Marco Arnaboldi, Jean-Pierre Lozi, Hugo Kapp, Sungpack Hong, Shasank Kisan Chavan, Hassan Chafi