-
公开(公告)号:US11720562B2
公开(公告)日:2023-08-08
申请号:US17889712
申请日:2022-08-17
Applicant: Oracle International Corporation
Inventor: Pit Fender , Alexander Ulrich , Laurent Daynes , Matthias Brantner , Bastian Hossbach , Benjamin Schlegel , Hassan Chafi
IPC: G06F16/24 , G06F16/2453 , G06F16/2455 , G06F8/41
CPC classification number: G06F16/24542 , G06F8/427 , G06F8/4443 , G06F16/2455
Abstract: The present invention relates to execution optimization of database queries. Herein are techniques for optimal execution based on query interpretation by translation to a domain specific language (DSL), with optimizations such as partial evaluation, abstract syntax tree (AST) rewriting, just in time (JIT) compilation, dynamic profiling, speculative logic, and Futamura projection. In an embodiment, a database management system (DBMS) that is hosted on a computer generates a query tree that represents a database query that contains an expression that is represented by a subtree of the query tree. The DBMS generates a sequence of DSL instructions that represents the subtree. The sequence of DSL instructions is executed to evaluate the expression during execution of the database query. In an embodiment, an AST is generated from the sequence of DSL instructions. In an embodiment, the DSL AST is optimally rewritten based on a runtime feedback loop that includes dynamic profiling information.
-
公开(公告)号:US12216649B2
公开(公告)日:2025-02-04
申请号:US18589052
申请日:2024-02-27
Applicant: Oracle International Corporation
Inventor: Altin Alickaj , Alexander Ulrich , Lukas Stadler
IPC: G06F16/22 , G06F16/21 , G06F16/242
Abstract: In a computer embodiment, in a polyglot database management system (DBMS) that contains a guest language runtime environment, a database buffer is configured that the guest language runtime environment does not manage. In the polyglot DBMS, logic that is defined in a guest language is invoked to retrieve, into the database buffer, a value stored in a database in the polyglot DBMS. Compiling the logic causes semantic analyzing the logic to detect that usage of the retrieved value cannot occur after the retrieved value is overwritten in the database buffer. When detecting that such usage of the retrieved value cannot occur, the logic is executed without, after the retrieved value is overwritten in the database buffer, retaining a copy of the retrieved value in a memory region that the guest language runtime environment manages.
-
公开(公告)号:US12164574B2
公开(公告)日:2024-12-10
申请号:US18070791
申请日:2022-11-29
Applicant: Oracle International Corporation
Inventor: Giacomo Fabris , Aleksei Kashuba , Alexander Ulrich
IPC: G06F16/00 , G06F9/448 , G06F16/903
Abstract: Techniques are described for generating an encoded-string automaton for a regex pattern from a decoded-string automaton of the regex pattern. In an embodiment, the process obtains a decoded-string automaton of the regex pattern and applies unique decoded string value(s) from the dictionary of the encoding. When applied at a selected state in the decoded-string automaton, the application may yield a transition to at least one target state in the decoded-string automaton for a unique dictionary value. Such a transition generates a transition in the encoded-string automaton from an encoded state corresponding to the selected state in the decoded-string automaton to a target state in the encoded-string automaton corresponding to the target state in the decoded-string automaton. The generated transition in the encoded-string automaton is conditioned on the token of the unique decoded string value in the dictionary.
-
公开(公告)号:US20250045334A1
公开(公告)日:2025-02-06
申请号:US18924658
申请日:2024-10-23
Applicant: Oracle International Corporation
Inventor: Giacomo Fabris , Aleksei Kashuba , Alexander Ulrich
IPC: G06F16/903 , G06F9/448
Abstract: Techniques are described for generating an encoded-string automaton for a regex pattern from a decoded-string automaton of the regex pattern. In an embodiment, the process obtains a decoded-string automaton of the regex pattern and applies unique decoded string value(s) from the dictionary of the encoding. When applied at a selected state in the decoded-string automaton, the application may yield a transition to at least one target state in the decoded-string automaton for a unique dictionary value. Such a transition generates a transition in the encoded-string automaton from an encoded state corresponding to the selected state in the decoded-string automaton to a target state in the encoded-string automaton corresponding to the target state in the decoded-string automaton. The generated transition in the encoded-string automaton is conditioned on the token of the unique decoded string value in the dictionary.
-
公开(公告)号:US11269874B2
公开(公告)日:2022-03-08
申请号:US16823632
申请日:2020-03-19
Applicant: Oracle International Corporation
Inventor: Pit Fender , Benjamin Schlegel , Alexander Ulrich
IPC: G06F16/245 , G06F16/2453
Abstract: The present invention relates to data manipulation language (DML) acceleration. Herein are database techniques to use value range analysis and range-limited execution operators when a value is excluded. In an embodiment, a computer receives a data access request that specifies an expression that includes operator(s), including a particular operator that has argument(s) that has only three possible values. Before detecting the actual value of a particular argument, the computer detects that a particular value of the three possible values is excluded for the particular argument. Responsively, an implementation of the particular operator that never accepts the particular value for the particular argument is selected. Applying the expression to fulfil the data access request entails invoking the selected implementation of the particular operator.
-
公开(公告)号:US20250147741A1
公开(公告)日:2025-05-08
申请号:US18630432
申请日:2024-04-09
Applicant: Oracle International Corporation
Inventor: Aaron Tacke , Altin Alickaj , Giacomo Fabris , Alexander Ulrich
Abstract: The present disclosure relates to improving the performance of evaluating path expressions on hierarchical data objects represented by binary encoded documents. An abstract syntax tree (AST) representing a path expression may be generated, wherein the AST comprises one or more syntax nodes implementing one or more respective execution steps of an evaluation of the path expression, and the path expression is included in a query to a database management system (DBMS). The AST may be modified based at least in part on profiling information and compiled into machine code. Using the machine code, the path expression may be executed on a binary-encoded hierarchical document.
-
公开(公告)号:US20240273091A1
公开(公告)日:2024-08-15
申请号:US18589052
申请日:2024-02-27
Applicant: Oracle International Corporation
Inventor: Altin Alickaj , Alexander Ulrich , Lukas Stadler
IPC: G06F16/242 , G06F16/21 , G06F16/22
CPC classification number: G06F16/2443 , G06F16/217 , G06F16/2219
Abstract: In a computer embodiment, in a polyglot database management system (DBMS) that contains a guest language runtime environment, a database buffer is configured that the guest language runtime environment does not manage. In the polyglot DBMS, logic that is defined in a guest language is invoked to retrieve, into the database buffer, a value stored in a database in the polyglot DBMS. Compiling the logic causes semantic analyzing the logic to detect that usage of the retrieved value cannot occur after the retrieved value is overwritten in the database buffer. When detecting that such usage of the retrieved value cannot occur, the logic is executed without, after the retrieved value is overwritten in the database buffer, retaining a copy of the retrieved value in a memory region that the guest language runtime environment manages.
-
公开(公告)号:US11947531B1
公开(公告)日:2024-04-02
申请号:US18109781
申请日:2023-02-14
Applicant: Oracle International Corporation
Inventor: Altin Alickaj , Alexander Ulrich , Lukas Stadler
IPC: G06F16/22 , G06F16/21 , G06F16/242
CPC classification number: G06F16/2443 , G06F16/217 , G06F16/2219
Abstract: In a computer embodiment, in a polyglot database management system (DBMS) that contains a guest language runtime environment, a database buffer is configured that the guest language runtime environment does not manage. In the polyglot DBMS, logic that is defined in a guest language is invoked to retrieve, into the database buffer, a value stored in a database in the polyglot DBMS. Compiling the logic causes semantic analyzing the logic to detect that usage of the retrieved value cannot occur after the retrieved value is overwritten in the database buffer. When detecting that such usage of the retrieved value cannot occur, the logic is executed without, after the retrieved value is overwritten in the database buffer, retaining a copy of the retrieved value in a memory region that the guest language runtime environment manages.
-
公开(公告)号:US11360976B2
公开(公告)日:2022-06-14
申请号:US16117367
申请日:2018-08-30
Applicant: Oracle International Corporation
Inventor: Matthias Brantner , Laurent Daynes , Pit Fender , Benjamin Schlegel , Anantha Kiran Kandukuri , Hassan Chafi , Eric Sedlar , Juergen Christ , Lucas Braun , Bastian Hossbach , Alexander Ulrich , Harshad Kasture
IPC: G06F16/2453 , G06F16/2455
Abstract: Herein are computerized techniques for deploying JavaScript and TypeScript stored procedures and user-defined functions into a database management system (DBMS). In an embodiment, a computer generates a SQL call specification for each subroutine of one or more subroutines encoded in a scripting language. The generating is based on a signature declaration of the subroutine. Each subroutine comprises a definition of a stored procedure or a user-defined function. The computer packages the definition and the SQL call specification of each subroutine into a single bundle file. The definition and the SQL call specification of each subroutine are deployed into a DBMS from the single bundle file. Eventually, the SQL call specification of at least one subroutine is invoked to execute the definition of the subroutine in the DBMS.
-
公开(公告)号:US11294894B2
公开(公告)日:2022-04-05
申请号:US16556760
申请日:2019-08-30
Applicant: Oracle International Corporation
Inventor: Pit Fender , Harshad Kasture , Alexander Ulrich , Benjamin Schlegel , Matthias Brantner , Hassan Chafi
IPC: G06F16/24 , G06F16/242 , G06F16/25 , G06F8/30
Abstract: Herein are techniques that extend a software system to embed new guest programing languages (GPLs) that interoperate in a transparent, modular, and configurable way. In embodiments, a computer inserts an implementation of a GPL into a deployment of the system. A command registers the GPL, define subroutines for the GPL, generates a guest virtual environment, and adds a binding of a dependency to a guest module. In an embodiment, a native programing language invokes a guest programing language to cause importing intra- or inter-language dependencies. An embodiment defines a guest object that is implemented in a first GPL and accessed from a second GPL. In an embodiment, dependencies are retrieved from a virtual file system having several alternative implementation mechanisms that include: an archive file or an actual file system, and a memory buffer or a column of a database table.
-
-
-
-
-
-
-
-
-