Bundling Database Statement Preparation and Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The preparation and execution of multiple SQL statements in database management systems result in significant communication overhead due to multiple roundtrips between the client application and the database, particularly impacting performance when data transport occurs over a network.

Innovation Solution

A method and system for bundling the preparation and execution of multiple database statements, allowing them to be processed in a single transaction, thereby reducing communication overhead by registering and processing statements with defined dependencies in a single roundtrip.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple database statements are prepared and executed separately, then each statement can be processed individually with proper error handling, but the number of roundtrips between client and database increases significantly

Engineering Contradiction:
Improveerror handling capabilityVSAvoidcommunication time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent combines multiple database statement preparations and executions into a single bundled transaction. The client application bundles multiple SQL statements with their dependencies into one transaction unit, and the database server processes all statements in that single transaction during one roundtrip, thereby reducing communication overhead while maintaining individual statement error handling through transaction rollback capabilities.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent performs preliminary bundling of multiple database statements at the client side before transmission. The client application prepares the bundle of statements, defines their dependencies, and sends them together in one request, eliminating the need for multiple separate roundtrips while ensuring all statements are processed atomically in the correct order.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If multiple roundtrips are used for statement preparation and execution, then communication protocols can be followed strictly, but overall system performance deteriorates due to network overhead

Engineering Contradiction:
Improveprotocol complianceVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent merges multiple protocol-compliant communication cycles into a single enhanced roundtrip. By bundling multiple statements with their metadata and dependency information into one transaction request, the system maintains protocol compliance while eliminating redundant communication overhead, thereby improving overall system performance.

Inventive Principle:
Principle #5Merging (Combining)

3Device complexity

If statements are processed individually, then dependency management is simpler, but the number of communication operations increases

Engineering Contradiction:
Improvedependency management complexityVSAvoidcommunication overhead
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent performs preliminary analysis and packaging of statement dependencies at the client side before transmission. The client application identifies dependencies between statements, orders them correctly, and includes this dependency information in the bundled transaction request. This preliminary organization allows the database server to process statements in the correct order without requiring complex runtime dependency resolution, thereby reducing communication overhead.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9098549B2Method for bundled preparation and execution of multiple database statements
Publication Date: 2015.08.04 SAP SE
  • US9098549B2 patent drawing
  • US9098549B2 patent drawing
  • US9098549B2 patent drawing

AI summary

A system and method for preparing and executing multiple database statements to minimize communication overhead between a client application and a database, the method is presented. Multiple database statements are registered for preparation and execution, the registering further including bundling of preparation operations for the multiple database statements and bundling of execution operations for multiple database statements. All of the bundled preparation operations and execution operations for the multiple database statements are executed in a single transaction between the client application and the database, and thereafter results of the preparation operations and the execution operations are accessible by a client application.