-
公开(公告)号:US12271402B2
公开(公告)日:2025-04-08
申请号:US17808083
申请日:2022-06-21
Applicant: Oracle International Corporation
Inventor: Florian Gratzer , Oskar Van Rest , Vlad Ioan Haprian , Vasileios Trigonakis , Korbinian Schmid , Steven Serra , Sungpack Hong , Hassan Chafi
IPC: G06F16/29 , G06F16/21 , G06F16/242
Abstract: 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.
-
公开(公告)号:US11500868B2
公开(公告)日:2022-11-15
申请号:US17162527
申请日:2021-01-29
Applicant: Oracle International Corporation
Inventor: Andrea Segalini , Jean-Pierre Lozi , Laurent Daynes , Marco Arnaboldi , Vlad Ioan Haprian , Hugo Kapp , Shasank Kisan Chavan , Zhen Hua Liu , Danica Porobic
IPC: G06F16/245 , G06F16/22 , G06F16/2453 , G06F16/2452 , G06F16/2455
Abstract: 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.
-
公开(公告)号:US20220245147A1
公开(公告)日:2022-08-04
申请号:US17162527
申请日:2021-01-29
Applicant: Oracle International Corporation
Inventor: Andrea Segalini , Jean-Pierre Lozi , Laurent Daynes , Marco Arnaboldi , Vlad Ioan Haprian , Hugo Kapp , Shasank Kisan Chavan , Zhen Hua Liu , Danica Porobic
IPC: G06F16/2453 , G06F16/2452 , G06F16/2455 , G06F16/22
Abstract: 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.
-
公开(公告)号:US20190235913A1
公开(公告)日:2019-08-01
申请号:US15886745
申请日:2018-02-01
Applicant: Oracle International Corporation
Inventor: Alexander Weld , Korbinian Schmid , Sungpack Hong , Hassan Chafi , Vlad Ioan Haprian
IPC: G06F9/48
CPC classification number: G06F9/48
Abstract: Techniques are described herein for concurrently evaluating graph processing tasks in a fair and efficient manner. In an embodiment, a request to execute a graph processing task is received. A first mapping associates each graph processing task of a plurality of graph processing tasks to a set of workload characteristics of a plurality of sets of workload characteristics. A second mapping associates each set of workload characteristics of the plurality of sets of workload characteristics to a set of execution parameters of a plurality of sets of execution parameters. Using the first mapping, a set of workload characteristics is determined based on the graph processing task. Using the second mapping, a set of execution parameters is determined based on the determined set of workload characteristics. The graph processing task is executed based on the determined set of execution parameters.
-
公开(公告)号:US20250139096A1
公开(公告)日:2025-05-01
申请号:US18385617
申请日:2023-10-31
Applicant: Oracle International Corporation
Inventor: Laurent Daynes , Martin Brugnara , Jean-Pierre Lozi , Calin Iorgulescu , Marco Arnaboldi , Hugo Kapp , Vlad Ioan Haprian , Zhen Hua Liu , Sungpack Hong
IPC: G06F16/2455 , G06F16/22 , G06F16/23
Abstract: Techniques are described for applying topological graph changes and traversing the modified graph. In an implementation, a set of compile processes schedules the graph changes caused by a DML (Data Manipulation Language) statement. Based on the requested graph operation in a received query for graph, a set of graph operation processes generate extensions to the graph that capture the changes to the graph by the DML. The received graph operation(s) are then performed by traversing both the existing graph and the generated extensions.
-
公开(公告)号:US11675785B2
公开(公告)日:2023-06-13
申请号:US16778668
申请日:2020-01-31
Applicant: ORACLE INTERNATIONAL CORPORATION
Inventor: Vasileios Trigonakis , Tomas Faltin , Jean-Pierre Lozi , Vlad Ioan Haprian , Sungpack Hong , Hassan Chafi
IPC: G06F16/2452 , G06F16/2458
CPC classification number: G06F16/24526 , G06F16/2471
Abstract: 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.
-
公开(公告)号:US20210286790A1
公开(公告)日:2021-09-16
申请号:US16816686
申请日:2020-03-12
Applicant: Oracle International Corporation
Inventor: Jean-Pierre Lozi , Marco Arnaboldi , Laurent Phillipe Daynes , Vlad Ioan Haprian , Hugo Kapp
Abstract: 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.
-
公开(公告)号:US20210224235A1
公开(公告)日:2021-07-22
申请号:US16747827
申请日:2020-01-21
Applicant: Oracle International Corporation
Inventor: Marco Arnaboldi , Jean-Pierre Lozi , Laurent Phillipe Daynes , Vlad Ioan Haprian , Shasank Kisan Chavan , Hugo Kapp , Sungpack Hong
IPC: G06F16/21 , G06F16/901 , G06F16/28 , G06F16/27
Abstract: 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. For the CSR, the computer populates, in parallel and based on said mapping, a destination array that contains canonical offsets as sequence positions within the sequence of persistent identifiers of the vertices.
-
9.
公开(公告)号:US20200073868A1
公开(公告)日:2020-03-05
申请号:US16378424
申请日:2019-04-08
Applicant: Oracle International Corporation
Inventor: Arnaud Delamare , Vasileios Trigonakis , Vlad Ioan Haprian , Oskar Van Rest , Sungpack Hong , Hassan Chafi , Tomas Faltin , Jean-Pierre Lozi
IPC: G06F16/2453 , G06F16/901 , G06F16/22 , H03M7/30
Abstract: Techniques are described herein for space-efficient encoding of label information of property graphs. In an embodiment, an input graph is received. The input graph comprises a plurality of entities and a plurality of label sets. Each entity of said plurality of entities is associated with a label set of the plurality of label sets and each label set of the plurality of label sets comprises zero or more labels of a plurality of labels. A first mapping is generated that maps each label of the plurality of labels to a label code. A second mapping is generated that maps each label integer set of a plurality of label integer sets to a label code. Each label integer set of the plurality of label integer sets corresponds to a label set of the plurality of label sets, wherein each label integer set of the plurality of label integer sets comprises label codes from the first mapping that are mapped to each label included in the corresponding label set. A compressed label set is generated for each entity of the plurality of entities. Each compressed label set comprises a plurality of bits that indicate a zeroth state, a first state, a second state, or a third state. The compressed label sets and the first and second mappings are used to efficiently evaluate graph label queries.
-
10.
公开(公告)号:US11928097B2
公开(公告)日:2024-03-12
申请号:US17479006
申请日:2021-09-20
Applicant: Oracle International Corporation
Inventor: Bence Czipo , Vlad Ioan Haprian , Oskar Van Rest , Damien Hilloulin , Vasileios Trigonakis , Yahya Ez-zainabi , Sungpack Hong , Hassan Chafi
CPC classification number: G06F16/2315 , G06F11/0772 , G06F16/2365
Abstract: 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. Based on the data access conflict, optimistically executing the request is prematurely and automatically halted without finishing executing the request.
-
-
-
-
-
-
-
-
-