Transparent RDBMS Offload via Polymorphic UDF Binding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current relational database management systems (RDBMS) face challenges in offloading relational tables to external engines, as existing solutions require extensive changes to the query optimizer and SQL, and do not support structured query language (SQL) for creating or referencing relational tables in offload engines, leading to poor performance and architectural disruptions.

Innovation Solution

The approach involves delegating data access from an RDBMS to an external offload engine by reformulating tasks using standard SQL operators, allowing user-defined functions (UDFs) and types to provide metadata for offloaded tables, enabling transparent acceleration and workload distribution without invasive changes to the RDBMS, and utilizing polymorphic UDFs for reuse and dynamic datatype discovery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If relational tables are offloaded to external engines, then performance and scalability are improved, but extensive changes to query optimizer and SQL are required

Engineering Contradiction:
Improvequery execution performanceVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary layer that translates standard SQL operations into operations suitable for external offload engines. This intermediary mechanism allows relational tables to be offloaded without requiring extensive changes to the core query optimizer or SQL language, thus improving performance while avoiding excessive system complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the database system into core RDBMS functions and offloadable operations. By dividing the system architecture into manageable segments where specific table operations can be independently offloaded to external engines, the system achieves performance improvement without requiring complete architectural restructuring

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If SQL is extended to support relational tables in offload engines, then functionality is improved, but compatibility with existing RDBMS implementations is lost

Engineering Contradiction:
ImproveSQL functionalityVSAvoidinterface standard compatibility
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements a universal interface layer that maintains compatibility with existing RDBMS SQL implementations while enabling extended functionality for offloaded relational tables. This universal approach allows the system to work with both traditional in-memory tables and offloaded tables using the same SQL interface, preserving compatibility while enhancing adaptability

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Ease of operation

If catalog materialization is required before query execution, then object resolution is simplified, but memory demand and startup time increase

Engineering Contradiction:
Improveobject resolutionVSAvoidmemory consumption
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent implements dynamic catalog materialization where metadata is materialized on-demand rather than statically before query execution. This dynamic approach allows the system to maintain simplified object resolution while reducing memory consumption by only materializing catalog entries when actually needed for query processing

Inventive Principle:
Principle #15Dynamics

4Ease of operation

If data is materialized in RDBMS before offloading, then data access is simplified, but network traffic and memory demand increase

Engineering Contradiction:
Improvedata accessVSAvoidnetwork traffic
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The patent performs preliminary filtering and preparation of data access operations within the RDBMS before offloading to external engines. This preliminary action simplifies the data access process by pre-processing queries and only transferring necessary data over the network, thereby reducing network traffic while maintaining ease of operation

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12050602B2Non-disruptive dynamic ad-hoc database catalog services
Publication Date: 2024.07.30 ORACLE INT CORP
  • US12050602B2 patent drawing
  • US12050602B2 patent drawing
  • US12050602B2 patent drawing

AI summary

Approaches herein transparently delegate data access from a relational database management system (RDBMS) onto an offload engine (OE). The RDBMS receives a database statement referencing a user defined function (UDF). In an execution plan, the RDBMS replaces the UDF reference with an invocation of a relational operator in the OE. Execution invokes the relational operator in the OE to obtain a result based on data in the OE. Thus, the UDF is bound to the OE, and almost all of the RDBMS avoids specially handling the UDF. The UDF may be a table function that offloads a relational table for processing. User defined objects such as functions and types provide metadata about the table. Multiple tables can be offloaded and processed together, such that some or all offloaded tables are not materialized in the RDBMS. Offloaded tables may participate in standard relational algebra such as in a database statement.