-
1.
公开(公告)号:US20240126764A1
公开(公告)日:2024-04-18
申请号:US17965687
申请日:2022-10-13
Applicant: Oracle International Corporation
Inventor: VLAD IOAN HAPRIAN , LEI SHENG , LAURENT DAYNES , ZHEN HUA LIU , HUGO KAPP , MARCO ARNABOLDI , ANDREW WITKOWSKI , SUNGPACK HONG , HASSAN CHAFI
IPC: G06F16/2455 , G06F16/242
CPC classification number: G06F16/24566 , G06F16/2433
Abstract: Techniques support graph pattern matching queries inside a relational database management system (RDBMS) that supports SQL execution. The techniques compile a graph pattern matching query that includes a bounded recursive pattern query into a SQL query that can then be executed by the relational engine. As a result, techniques enable execution of graph pattern matching queries that include bounded recursive patterns on top of the relational engine by avoiding any change in the existing SQL engine.
-
2.
公开(公告)号:US20190065552A1
公开(公告)日:2019-02-28
申请号: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: G06F17/30
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.
-
公开(公告)号:US20210064619A1
公开(公告)日:2021-03-04
申请号:US16555974
申请日:2019-08-29
Applicant: Oracle International Corporation
Inventor: PIT FENDER , ALEXANDER ULRICH , LAURENT DAYNES , MATTHIAS BRANTNER , BASTIAN HOSSBACH , BENJAMIN SCHLEGEL , HASSAN CHAFI
IPC: G06F16/2453 , G06F16/2455 , G06F8/41
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.
-
4.
公开(公告)号:US20190340284A1
公开(公告)日:2019-11-07
申请号:US15971664
申请日:2018-05-04
Applicant: Oracle International Corporation
Inventor: ANANTHA KIRAN KANDUKURI , LAURENT DAYNES , HASSAN CHAFI
IPC: G06F17/30
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.
-
-
-