ROWID Elimination Rewrite for Offload Engine Memory Pressure

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern RDBMS query optimizers introduce ROWIDs for query unnesting, which are not efficiently processed by offload engines due to memory pressure and hardware acceleration limitations, making query execution infeasible.

Innovation Solution

The ROWID Elimination Rewrite technique substitutes or removes ROWIDs with alternative columns, such as primary keys, to reduce memory pressure and enable query execution in offload engines, specifically applicable to TPC-H Benchmark queries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If query unnesting rewrite techniques are applied using ROWIDs, then query execution speed is improved, but memory pressure increases and offload engine compatibility deteriorates

Engineering Contradiction:
Improvequery execution speedVSAvoidoffload engine compatibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent changes the data type parameter from ROWID (10 bytes) to alternative column identifiers (typically 4-8 bytes), reducing memory footprint while maintaining the query unnesting functionality. This parameter change enables offload engine compatibility without sacrificing execution speed improvements.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent replaces the expensive ROWID data structure with cheaper alternative column identifiers that consume less memory. These alternative identifiers serve the same functional purpose but with reduced resource requirements, making them suitable for offload engine environments with constrained memory resources.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

2Productivity

If ROWIDs are introduced for query unnesting, then query optimization is improved, but memory footprint increases

Engineering Contradiction:
Improvequery optimizationVSAvoidmemory footprint
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent changes the size parameter of the identifier from 10 bytes (ROWID) to smaller alternative identifiers (4-8 bytes), directly reducing memory footprint while preserving query optimization capabilities through alternative unnesting techniques.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent uses alternative column identifiers that copy the essential identification functionality of ROWIDs without duplicating their memory-intensive structure. The alternative identifiers serve as functional copies that achieve the same query unnesting purpose with reduced memory consumption.

Inventive Principle:
Principle #26Copying

3Productivity

If ROWID pseudo-columns are used in rewritten queries, then query execution plan quality is improved, but hardware acceleration support deteriorates

Engineering Contradiction:
Improvequery execution plan qualityVSAvoidhardware acceleration support
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

The patent replaces ROWID pseudo-columns with simpler alternative column identifiers that are more amenable to hardware acceleration. The alternative identifiers have simpler data structures that can be more efficiently processed by hardware-accelerated offload engines, maintaining execution plan quality while enabling hardware support.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Solution Approach 2:

The patent changes the data structure parameter from complex ROWID format to simpler alternative identifier formats, making the data more suitable for hardware acceleration. This parameter change enables offload engines to apply hardware-accelerated operations while preserving query execution plan quality.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11797520B2ROWID elimination rewrite
Publication Date: 2023.10.24 ORACLE INT CORP
  • US11797520B2 patent drawing
  • US11797520B2 patent drawing
  • US11797520B2 patent drawing

AI summary

Techniques described herein propose a ROWID Elimination Rewrite that uses functional dependencies to substitute and/or eliminate ROWID pseudo-columns referenced in a query in order to reduce memory pressure and speed up processing.