-
公开(公告)号:US11379200B2
公开(公告)日:2022-07-05
申请号:US16776792
申请日:2020-01-30
Applicant: Oracle International Corporation
Inventor: Martijn Dwars , Martin Sevenich , Sungpack Hong , Hassan Chafi , Guido Wachsmuth
Abstract: Techniques are described for compiling source code to generate graph-optimized intermediate representation instructions of the source code that implement techniques for optimizing algorithms for graph analysis. A compiler, executing on a computing device, receives source code instructions for a program to be compiled. The compiler identifies a target expression, within the source code instructions, that invokes a particular method call on a particular object type. The target expression contains a target block of code to be translated into an intermediate representation using graph-optimized compilation techniques. The compiler generates a block of graph-specific intermediate representation instructions to replace the target expression. The compiler compiles the source code instructions to generate intermediate representation instructions, where the intermediate representation instructions include the block of graph-specific intermediate representation instructions in place of the target expression.
-
公开(公告)号:US20210406265A1
公开(公告)日:2021-12-30
申请号:US16917621
申请日:2020-06-30
Applicant: Oracle International Corporation
Inventor: Martijn Dwars , Martin Sevenich , Sungpack Hong , Guido Wachsmuth , Hassan Chafi
IPC: G06F16/2453 , G06F16/2455 , G06F16/248 , G06F16/901
Abstract: To execute function-step-based graph queries on a graph engine that has its own graph query language, rather than re-implementing an existing infrastructure to support function-step-based graph protocols, function-step-based graph queries are transformed to the graph query language that is understood by the graph engine. The existing infrastructure computes the results of the transformed queries. Result sets are then transformed to function-based-based result sets, which are returned to customers. In this manner, the graph engine supports function-step-based graph query workloads without implementation of the function-step-based graph protocol.
-
公开(公告)号:US11205050B2
公开(公告)日:2021-12-21
申请号:US16179049
申请日:2018-11-02
Applicant: Oracle International Corporation
Inventor: Rhicheek Patra , Sungpack Hong , Jinha Kim , Damien Hilloulin , Davide Bartolini , Hassan Chafi
Abstract: Techniques are described herein for learning property graph representations edge-by-edge. In an embodiment, an input graph is received. The input graph comprises a plurality of vertices and a plurality of edges. Each vertex of the plurality of vertices is associated with vertex properties of the respective vertex. A vertex-to-property mapping is generated for each vertex of the plurality of vertices. The mapping maps each vertex to a vertex-property signature of a plurality of vertex-property signatures. A plurality of edge words is generated. Each edge word corresponds to one or more edges that each begin at a first vertex having a particular vertex-property signature of the plurality of vertex property signatures and end at a second vertex having a particular vertex-property signature of the plurality of vertex property signatures. A plurality of sentences is generated. Each sentence comprises edge words directly connected along a path of a plurality of paths in the input graph. Using the plurality of sentences and the plurality of edge words, a document vectorization model is used to generate machine learning vectors that represent the input graph.
-
74.
公开(公告)号:US20210334249A1
公开(公告)日:2021-10-28
申请号:US17370418
申请日:2021-07-08
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/27 , G06F16/28 , G06F16/901
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.
-
公开(公告)号:US20210240705A1
公开(公告)日:2021-08-05
申请号: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
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.
-
公开(公告)号:US11074260B2
公开(公告)日:2021-07-27
申请号: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/00 , G06F16/2453 , G06F16/901 , G06F16/22 , H03M7/40 , 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.
-
77.
公开(公告)号:US11010694B2
公开(公告)日:2021-05-18
申请号:US15938988
申请日:2018-03-28
Applicant: Oracle International Corporation
Inventor: Kenny C. Gross , Andrew I. Vakhutinsky , DeJun Li , Bradley R. Williams , Sungpack Hong
Abstract: The disclosed embodiments relate to a system that facilitates deployment of utility repair crews to nodes in a utility network. During operation, the system determines a node criticality for each node in the utility network based on a network-reliability analysis, which considers interconnections among the nodes in the utility network. The system also determines a node failure probability for each node in the utility network based on historical weather data, historical node failure data and weather forecast information for the upcoming weather event. The system uses the determined node criticalities and the determined node failure probabilities to determine a deployment plan for deploying repair crews to nodes in the utility network in preparation for the upcoming weather event. The system then presents the deployment plan to a person who uses the deployment plan to deploy repair crews to be available to service nodes in the utility network.
-
公开(公告)号:US20210142008A1
公开(公告)日:2021-05-13
申请号:US17153078
申请日:2021-01-20
Applicant: Oracle International Corporation
Inventor: Rhicheek Patra , Davide Bartolini , Sungpack Hong , Hassan Chafi , Alberto Parravicini
IPC: G06F40/295 , G06N5/02
Abstract: According to an embodiment, a method includes converting a knowledge base into a graph. In this embodiment, the knowledge base contains a plurality of entities and specifies a plurality of relationships among the plurality of entities, and entities in the knowledge base correspond to vertices in the graph, and relationships between entities in the knowledge base correspond to edges between vertices in the graph. The method may also include extracting a plurality of vertex embeddings from the graph. An example vertex embedding of the plurality of vertex embeddings represents, for a particular vertex, a proximity of the particular vertex to other vertices of the graph. Further, the method may include performing, based at least in part on the plurality of vertex embeddings, entity linking between input text and the knowledge base.
-
公开(公告)号:US10942970B2
公开(公告)日:2021-03-09
申请号:US16159384
申请日:2018-10-12
Applicant: Oracle International Corporation
Inventor: Vlad Haprian , Oskar Van Rest , Sungpack Hong , Hassan Chafi
IPC: G06F7/00 , G06F16/00 , G06F16/901 , G06F16/903
Abstract: Techniques are described for generating and re-using reachability graphs for efficient execution of queries. In an embodiment, a query is received for execution on a data graph. Such a query may include one or more expressions for edges in the data graph, which when executed select one or more paths in the data graph to generate results for the query. The system uses a repository to store reachability graphs and may determine whether a reachability graph for an expression of the query for the data graph is stored in a repository. Such a reachability graph is generated by applying the expression on the data graph to qualify or disqualify the edges in the data graph to be included as part of edges of the reachability graph. For example, an edge in a reachability graph exists between two vertices when at least one edge of the data graph has qualified between two vertices of the data graph that correspond to the two vertices of the reachability graph. Based on determining that the reachability graph for the expression is stored in the repository, the system executes the query on the reachability graph without re-applying the expression on the data graph and generates the results for the query.
-
公开(公告)号:US20200257982A1
公开(公告)日:2020-08-13
申请号:US16270535
申请日:2019-02-07
Applicant: Oracle International Corporation
Inventor: Jinha Kim , Rhicheek Patra , Sungpack Hong , Damien Hilloulin , Davide Bartolini , Hassan Chafi
Abstract: Techniques are described herein for encoding categorical features of property graphs by vertex proximity. In an embodiment, an input graph is received. The input graph comprises a plurality of vertices, each vertex of said plurality of vertices is associated with vertex properties of said vertex. The vertex properties include at least one categorical feature value of one or more potential categorical feature values. For each of the one or more potential categorical feature values of each vertex, a numerical feature value is generated. The numerical feature value represents a proximity of the respective vertex to other vertices of the plurality of vertices that have a categorical feature value corresponding to the respective potential categorical feature value. Using the numerical feature values for each vertex, proximity encoding data is generated representing said input graph. The proximity encoding data is used to efficiently train machine learning models that produce results with enhanced accuracy.
-
-
-
-
-
-
-
-
-