Patents by Inventor Vasileios Trigonakis
Vasileios Trigonakis 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).
-
Publication number: 20240143594Abstract: A storage manager for offloading graph components to persistent storage for reducing resident memory in a distributed graph processing engine is provided. The storage manager identifies a set of graph components required to execute a graph processing operation on a graph in a graph processing engine of a database system and reserves an amount of memory needed to load the set of graph components into memory. The storage manager loads the set of graph components into memory and initiates execution of the graph processing operation using the set of graph components in memory. The storage manager evicts one or more unused graph components from memory in response to receiving a request to free a requested amount of memory from memory.Type: ApplicationFiled: June 20, 2023Publication date: May 2, 2024Inventors: ARNAUD DELAMARE, IRFAN BUNJAKU, VASILEIOS TRIGONAKIS, CALIN IORGULESCU, TOMAS FALTIN, SUNGPACK HONG, HASSAN CHAFI
-
Patent number: 11947539Abstract: Techniques to efficiently assign available workers to executing multiple graph queries concurrently on a distributed graph database are disclosed. The techniques comprise a runtime engine assigning multiple workers to executing portions of multiple graph queries, each worker in each assignment asynchronously executing a portion of a graph query within a parallel-while construct that includes return statements at different locations, and the runtime engine reassigning a worker to executing another portion of the same or a different graph query to optimize the overall performance of all workers.Type: GrantFiled: May 21, 2022Date of Patent: April 2, 2024Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Vasileios Trigonakis, Calin Iorgulescu, Tomas Faltin, Sungpack Hong, Hassan Chafi
-
Patent number: 11928097Abstract: Efficiently implemented herein is a deterministic semantic for property updates by graph queries. Mechanisms of determinism herein ensure data consistency for graph mutation. These mechanisms facilitate optimistic execution of graph access despite a potential data access conflict. This approach may include various combinations of special activities such as detecting potential conflicts during query compile time, applying query transformations to eliminate those conflicts during code generation where possible, and executing updates in an optimistic way that safely fails if determinism cannot be guaranteed. In an embodiment, a computer receives a request to modify a graph. The request to modify the graph is optimistically executed after preparation and according to safety precautions as presented herein. Based on optimistically executing the request, a data access conflict actually occurs and is automatically detected.Type: GrantFiled: September 20, 2021Date of Patent: March 12, 2024Assignee: Oracle International CorporationInventors: Bence Czipo, Vlad Ioan Haprian, Oskar Van Rest, Damien Hilloulin, Vasileios Trigonakis, Yahya Ez-zainabi, Sungpack Hong, Hassan Chafi
-
Patent number: 11907255Abstract: In an embodiment, multiple computers cooperate to retrieve content from tables in a relational database. Each table contains respective rows. Each row contains a vertex of a graph. Many high-degree vertices are identified. Each high-degree vertex is connected to respective edges in the graph. A count of the edges of each high-degree vertex exceeds a degree threshold. A central computer detects that all vertices in a high-degree subset of tables are high-degree vertices. Based on detecting the high-degree subset of tables, multiple vertices of the graph that are not in the high-degree subset of tables are replicated. Within local storage capacity limits of the computers, this degree-based replication may be supplemented with other vertex replication strategies that are schema based, content based, or workload based. This intelligent selective replication maximizes system throughput by minimizing graph data access latency based on data locality.Type: GrantFiled: March 4, 2022Date of Patent: February 20, 2024Assignee: Oracle International CorporationInventors: Jinsu Lee, Petr Koupy, Vasileios Trigonakis, Sungpack Hong, Hassan Chafi
-
Publication number: 20230409610Abstract: A method, apparatus, and product to provide a parser for property graph queries with precise error reporting and auto-completion based on information from property graph schemas. The approach generally comprises analysis of graph queries prior to their execution to identify issues prior to execution. In some embodiments, the approach includes any of: use of a property graph schema to determine whether names in a received property graph query exist within a corresponding property graph; determining whether the property graph query includes a comparison of mismatched data types; providing an autocomplete suggestion feature for assistance in resolving errors or corresponding to a cursor position within a query string; or evaluation of a property graph query to determine whether it would return an empty result. In some embodiments, property graph query analysis is performed using a context aware approach.Type: ApplicationFiled: June 21, 2022Publication date: December 21, 2023Applicant: Oracle International CorporationInventors: Florian GRATZER, Oskar VAN REST, Vlad Ioan HAPRIAN, Vasileios TRIGONAKIS, Korbinian SCHMID, Steven SERRA, Sungpack HONG, Hassan CHAFI
-
Publication number: 20230376486Abstract: Techniques to efficiently assign available workers to executing multiple graph queries concurrently on a distributed graph database are disclosed. The techniques comprise a runtime engine assigning multiple workers to executing portions of multiple graph queries, each worker in each assignment asynchronously executing a portion of a graph query within a parallel-while construct that includes return statements at different locations, and the runtime engine reassigning a worker to executing another portion of the same or a different graph query to optimize the overall performance of all workers.Type: ApplicationFiled: May 21, 2022Publication date: November 23, 2023Inventors: VASILEIOS TRIGONAKIS, CALIN IORGULESCU, TOMAS FALTIN, SUNGPACK HONG, HASSAN CHAFI
-
Publication number: 20230281219Abstract: In an embodiment, multiple computers cooperate to retrieve content from tables in a relational database. Each table contains respective rows. Each row contains a vertex of a graph. Many high-degree vertices are identified. Each high-degree vertex is connected to respective edges in the graph. A count of the edges of each high-degree vertex exceeds a degree threshold. A central computer detects that all vertices in a high-degree subset of tables are high-degree vertices. Based on detecting the high-degree subset of tables, multiple vertices of the graph that are not in the high-degree subset of tables are replicated. Within local storage capacity limits of the computers, this degree-based replication may be supplemented with other vertex replication strategies that are schema based, content based, or workload based. This intelligent selective replication maximizes system throughput by minimizing graph data access latency based on data locality.Type: ApplicationFiled: March 4, 2022Publication date: September 7, 2023Inventors: Jinsu Lee, Petr Koupy, Vasileios Trigonakis, Sungpack Hong, Hassan Chafi
-
Patent number: 11720630Abstract: Techniques are provided for finding unused vertex and edge identifiers (IDs) in a distributed graph engine. A run-time data structure may be built during the loading of the graph. The data structure identifies unavailable IDs that are associated with graph entities of the graph. The data structure is traversed to determine one or more ranges of free IDs. Unused IDs are generated from the ranges.Type: GrantFiled: January 4, 2021Date of Patent: August 8, 2023Assignee: Oracle International CorporationInventors: Arnaud Delamare, Vasileios Trigonakis, Yahya Ez-Zainabi, Sungpack Hong, Hassan Chafi
-
Publication number: 20230237047Abstract: Data structures and methods are described for applying mutations on a distributed graph in a fast and memory-efficient manner. Nodes in a distributed graph processing system may store graph information such as vertices, edges, properties, vertex keys, vertex degree counts, and other information in graph arrays, which are divided into shared arrays and delta logs. The shared arrays on a local node remain immutable and are the starting point of a graph, on top of which mutations build new snapshots. Mutations may be supported at both the entity and table levels. Periodic delta log consolidation may occur at multiple levels to prevent excessive delta log buildup. Consolidation at the table level may also trigger rebalancing of vertices across the nodes.Type: ApplicationFiled: January 26, 2022Publication date: July 27, 2023Inventors: Vasileios Trigonakis, Paul Renauld, Jinsu Lee, Petr Koupy, Sungpack Hong, Hassan Chafi
-
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
-
Publication number: 20230109463Abstract: Herein is fast and memory efficient iteration of elements of a graph that has (e.g. topological) changes. In an embodiment, a computer generates an element iterator that is based on a graph that contains many elements (e.g. vertices, edges, and their properties) and a delta log that represents modification(s) of the graph. The delta log only records changes, such that only some graph elements are modified and occur in the delta log. Thus, iteration of only some graph elements may need to retrieve data from the delta log. Based on the element iterator and the delta log, a first graph element is accessed during iteration. Based on the element iterator but not the delta log, a second graph element is accessed. For example, a result may be generated that is based on the first element and the second element that were iterated based on different respective data structures.Type: ApplicationFiled: September 20, 2021Publication date: April 6, 2023Inventors: Damien Hilloulin, Valentin Venzin, Vasileios Trigonakis, Martin Sevenich, Alexander Weld, Sungpack Hong, Hassan Chafi
-
Publication number: 20230095703Abstract: Efficiently implemented herein is a deterministic semantic for property updates by graph queries. Mechanisms of determinism herein ensure data consistency for graph mutation. These mechanisms facilitate optimistic execution of graph access despite a potential data access conflict. This approach may include various combinations of special activities such as detecting potential conflicts during query compile time, applying query transformations to eliminate those conflicts during code generation where possible, and executing updates in an optimistic way that safely fails if determinism cannot be guaranteed. In an embodiment, a computer receives a request to modify a graph. The request to modify the graph is optimistically executed after preparation and according to safety precautions as presented herein. Based on optimistically executing the request, a data access conflict actually occurs and is automatically detected.Type: ApplicationFiled: September 20, 2021Publication date: March 30, 2023Inventors: Bence Czipo, Vlad Ioan Haprian, Oskar Van Rest, Damien Hilloulin, Vasileios Trigonakis, Yahya Ez-zainabi, Sungpack Hong, Hassan Chafi
-
Patent number: 11461130Abstract: In an embodiment, a computer of a cluster of computers receives graph logic that specifies a sequence of invocations, including a current invocation and a next invocation, of parallelism operations that can detect whether the graph logic should prematurely terminate. The computer initiates, on the computers of the cluster, execution of the graph logic to process a distributed graph. Before the current invocation, the graph logic registers reversion logic for a modification of the distributed graph that execution of the graph logic has caused. During the current invocation, it is detected that the graph logic should prematurely terminate. Execution of the graph logic on the cluster is terminated without performing the next invocation in the sequence of invocations. The reversion logic reverses the modification of the distributed graph to restore consistency. The distributed graph is retained in volatile memory of the cluster for reuse such as relaunch of the graph logic.Type: GrantFiled: May 26, 2020Date of Patent: October 4, 2022Assignee: Oracle International CorporationInventors: Petr Koupy, Vasileios Trigonakis, Iraklis Psaroudakis, Jinsoo Lee, Sungpack Hong, Hassan Chafi
-
Patent number: 11456946Abstract: A pattern matching engine interprets a query into a data structure resembling a finite state machine. Vertices in the query pattern are treated as states or stages, while edges connecting them are treated as state transitions or hops. To match the full pattern, the first stage is first matched by applying vertex filters, if any. If the vertex is eligible, its edges that satisfy the edge filters, if any, are followed to move to the neighbors that can potentially produce results, thus progressing to the next stage. This process is repeated; if all stages are matched, then the whole pattern has been matched successfully.Type: GrantFiled: June 11, 2020Date of Patent: September 27, 2022Assignee: Oracle International CorporationInventors: Petar Tonkovic, Vasileios Trigonakis, Tomas Faltin, Sungpack Hong, Hassan Chafi
-
Publication number: 20220284056Abstract: Techniques are provided for updating in-memory property graphs in a fast manner, while minimizing memory consumption. A graph is represented as delta compressed sparse rows (CSR), in which its data structure stores forward edge offsets that map reverse edges to forward edges, enabling fast traversals of graph edges in forward and reverse directions. To support fast graph updates, delta logs are used to store changes to the graph. In an embodiment, a base version of the graph data structure is initially loaded or created, and subsequent versions of the graph are created from the reference to the initial graph and a delta log data structure that records the changes compared to the base version of the graph.Type: ApplicationFiled: March 5, 2021Publication date: September 8, 2022Inventors: Damien Hilloulin, Vasileios Trigonakis, Alexander Weld, Valentin Venzin, Sungpack Hong, Hassan Chafi
-
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: 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
-
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
-
Publication number: 20220215055Abstract: Techniques are provided for finding unused vertex and edge identifiers (IDs) in a distributed graph engine. A run-time data structure may be built during the loading of the graph. The data structure identifies unavailable IDs that are associated with graph entities of the graph. The data structure is traversed to determine one or more ranges of free IDs. Unused IDs are generated from the ranges.Type: ApplicationFiled: January 4, 2021Publication date: July 7, 2022Inventors: Arnaud Delamare, Vasileios Trigonakis, Yahya Ez-Zainabi, Sungpack Hong, Hassan Chafi
-
Patent number: 11363093Abstract: Techniques are described herein for evaluating graph processing tasks using a multi-stage pipelining communication mechanism. In a multi-node system comprising a plurality of nodes, each node of said plurality of nodes executes a respective communication agent object. The respective communication agent object comprises: a sender lambda function is configured to perform sending operations and generate source messages based on the sender operations. An intermediate lambda function is configured to read source messages marked for a node, perform intermediate operations based on the source messages and generate intermediate messages based on the intermediate operations. A final receiver lambda function configured to: read intermediate messages marked for said each node, perform final operations based on the intermediate messages and generate a final result based on the final operations.Type: GrantFiled: May 1, 2018Date of Patent: June 14, 2022Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Jinsu Lee, Thomas Manhardt, Sungpack Hong, Petr Koupy, Hassan Chafi, Vasileios Trigonakis