-
公开(公告)号:US20230199026A1
公开(公告)日:2023-06-22
申请号:US17558342
申请日:2021-12-21
Applicant: Oracle International Corporation
Inventor: Valentin Venzin , Rhicheek Patra , Sungpack Hong , Hassan Chafi
CPC classification number: H04L63/1483 , H04L63/1425 , G06N20/00
Abstract: Herein are graph machine learning explainability (MLX) techniques for invalid traffic detection. In an embodiment, a computer generates a graph that contains: a) domain vertices that represent network domains that received requests and b) address vertices that respectively represent network addresses from which the requests originated. Based on the graph, domain embeddings are generated that respectively encode the domain vertices. Based on the domain embeddings, multidomain embeddings are generated that respectively encode the network addresses. The multidomain embeddings are organized into multiple clusters of multidomain embeddings. A particular cluster is detected as suspicious. In an embodiment, an unsupervised trained graph model generates the multidomain embeddings. Based on the clusters of multidomain embeddings, feature importances are unsupervised trained. Based on the feature importances, an explanation is automatically generated for why an object is or is not suspicious. The explained object may be a cluster or other batch of network addresses or a single network address.
-
公开(公告)号: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.
-
公开(公告)号:US11456946B2
公开(公告)日:2022-09-27
申请号:US16899185
申请日:2020-06-11
Applicant: Oracle International Corporation
Inventor: Petar Tonkovic , Vasileios Trigonakis , Tomas Faltin , Sungpack Hong , Hassan Chafi
IPC: H04L45/00 , G06F9/54 , G06F16/901 , H04L47/122
Abstract: 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.
-
公开(公告)号:US11379232B2
公开(公告)日:2022-07-05
申请号:US16399226
申请日:2019-04-30
Applicant: Oracle International Corporation
Inventor: Benjamin Schlegel , Harshard Kasture , Pit Fender , Matthias Brantner , Hassan Chafi
IPC: G06F9/30 , G06F9/38 , G06F16/901
Abstract: Techniques are provided for obtaining generic vectorized d-heaps for any data type for which horizontal aggregation SIMD instructions are not available, including primitive as well as complex data types. A generic vectorized d-heap comprises a prefix heap and a plurality of suffix heaps. Each suffix heap of the plurality of suffix heaps comprises a d-heap. A plurality of key values stored in the heap are split into key prefix values and key suffix values. Key prefix values are stored in the prefix heap and key suffix values are stored in the plurality of suffix heaps. Each entry in the prefix heap includes a key prefix value of the plurality of key values and a reference to the suffix heap of the plurality of suffix heaps that includes all key suffix values of the plurality of key values that share the respective key prefix value.
-
公开(公告)号:US20210373938A1
公开(公告)日:2021-12-02
申请号:US16883317
申请日:2020-05-26
Applicant: Oracle International Corporation
Inventor: Petr Koupy , Vasileios Trigonakis , Iraklis Psaroudakis , Jinsoo Lee , Sungpack Hong , Hassan Chafi
IPC: G06F9/48 , G06F9/448 , G06F9/38 , G06F11/07 , G06F16/901
Abstract: 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.
-
公开(公告)号:US11169804B2
公开(公告)日:2021-11-09
申请号:US16139226
申请日:2018-09-24
Applicant: Oracle International Corporation
Inventor: Benjamin Schlegel , Harshad Kasture , Pit Fender , Matthias Brantner , Hassan Chafi
Abstract: Techniques for maintaining d-heap property and speeding up retrieval operations, such as top or pop, by vectorizing the d-heap and utilizing horizontal aggregation SIMD instructions across the retrieval operations. A d-heap is vectorized by storing it in a contiguous memory array containing a beginning-most side and end-most side. Horizontal aggregation SIMD instructions are utilized to aggregate the values of the vectorized d-heap. Thus, the number of comparisons required in order to find the maximum or minimum key value within a single node of the d-heap is reduced resulting in faster retrieval operations.
-
公开(公告)号:US20210318886A1
公开(公告)日:2021-10-14
申请号:US16846773
申请日:2020-04-13
Applicant: Oracle International Corporation
Inventor: Benjamin Schlegel , Pit Fender , Matthias Brantner , Hassan Chafi
Abstract: Vectorized sorted-set intersection is performed using conflict-detection single instruction, multiple data (SIMD) instructions. A first ordered subset of values of a first ordered set of distinct values and a second ordered subset of values of a second ordered set of distinct values is loaded into a register. A first value in the register that matches another value in the register (i.e., common values) is identified by performing an SIMD instruction. The first value is then stored in a result set representing a merge-sort result set between the first ordered set of distinct values and the second ordered set of distinct values.
-
公开(公告)号:US20210294603A1
公开(公告)日:2021-09-23
申请号:US16822009
申请日:2020-03-18
Applicant: Oracle International Corporation
Inventor: Harshad Kasture , Matthias Brantner , Hassan Chafi , Benjamin Schlegel , Pit Fender
Abstract: Techniques are provided for lazy push optimization, allowing for constant time push operations. A d-heap is used as the underlying data structure for indexing values being inserted. The d-heap is vectorized by storing values in a contiguous memory array. Heapify operations are delayed until a retrieve operation occurs, improving insert performance of vectorized d-heaps that use horizontal aggregation SIMD instructions at the cost of slightly lower retrieve performance.
-
公开(公告)号:US20210232402A1
公开(公告)日:2021-07-29
申请号:US17227167
申请日:2021-04-09
Applicant: ORACLE INTERNATIONAL CORPORATION
Inventor: Benjamin Schlegel , Pit Fender , Harshad Kasture , Matthias Brantner , Hassan Chafi
Abstract: Techniques are provided for vectorizing Heapsort. A K-heap is used as the underlying data structure for indexing values being sorted. The K-heap is vectorized by storing values in a contiguous memory array containing a beginning-most side and end-most side. The vectorized Heapsort utilizes horizontal aggregation SIMD instructions for comparisons, shuffling, and moving data. Thus, the number of comparisons required in order to find the maximum or minimum key value within a single node of the K-heap is reduced resulting in faster retrieval operations.
-
50.
公开(公告)号:US10990594B2
公开(公告)日:2021-04-27
申请号:US15971664
申请日:2018-05-04
Applicant: Oracle International Corporation
Inventor: Anantha Kiran Kandukuri , Laurent Daynes , Hassan Chafi
IPC: G06F8/70 , G06F16/23 , G06F16/2453 , G06F16/2455
Abstract: Database techniques are provided that use state machines to manage polyglot subroutine bindings for database commands. In an embodiment, a computer receives a database command that contains call sites (CSs). Each CS is associated with a user defined logic (UDL). The computer associates an initial operational state with each of the CSs. During a first invocation of a particular CS, the CS becomes initialized and transitions to an optimized state that is configured for streamlined invocation of the UDL. The UDL is invoked to contribute data to a partial result for the database command. Eventually, command execution stalls and causes the CS to transition to an unready state, which entails releasing shared resources. Later execution resumes and during another invocation of the CS, resources are reacquired, the CS is made ready and transitioned back to the optimized state. The CS may again be repeatedly invoked while revisiting the optimized state.
-
-
-
-
-
-
-
-
-