Automated Database Representation Selection for Abstract Datatypes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Determining a suitable database representation for abstract datatypes like XML, which can be stored in multiple forms, is challenging due to various factors affecting the decision, leading to inefficient query performance and a tedious, error-prone manual trial-and-error approach.

Innovation Solution

A method and apparatus that automatically determine a database representation by analyzing a logical description and sample queries, generating a script file to create appropriate base structures and indexes, and performing a cost analysis to select the optimal representation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If manual trial-and-error approach is used to determine database representation, then flexibility in exploration is maintained, but time consumption and error rate increase significantly

Engineering Contradiction:
Improveease of determining database representationVSAvoidtime for performance tuning
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system performs self-service by automatically analyzing query patterns and workload characteristics to determine the optimal database representation without requiring manual intervention. The database system itself generates the configuration based on observed usage patterns, eliminating the need for manual trial-and-error approach.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring query performance and workload characteristics, then using this information to automatically adjust and determine the optimal database representation. The feedback loop enables the system to learn from actual usage and improve configuration decisions over time.

Inventive Principle:
Principle #23Feedback

2Adaptability or versatility

If multiple database representations are supported for abstract datatype, then query performance can be optimized for different use cases, but complexity of determining suitable representation increases

Engineering Contradiction:
Improveadaptability to different use casesVSAvoidcomplexity of determining database representation
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system changes parameters by analyzing workload characteristics and query patterns to automatically determine which database representation parameters are optimal. Instead of requiring manual selection from multiple complex options, the system dynamically adjusts parameters based on observed usage patterns and performance requirements.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system introduces an intermediary layer that automatically analyzes query patterns and translates them into appropriate database representation choices. This intermediary component handles the complexity of selecting from multiple representations, shielding users from the complexity while maintaining adaptability to different use cases.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If inappropriate base structure or index choice is made, then implementation is simplified, but query performance suffers drastically

Engineering Contradiction:
Improveease of implementationVSAvoidquery performance
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The system performs preliminary action by proactively analyzing query patterns and determining the optimal base structure and index choices before actual query execution. This advance preparation ensures that the correct database representation is in place before performance-critical operations, eliminating the need for later optimization efforts.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7860899B2Automatically determining a database representation for an abstract datatype
Publication Date: 2010.12.28 ORACLE INT CORP
  • US7860899B2 patent drawing
  • US7860899B2 patent drawing
  • US7860899B2 patent drawing

AI summary

A method and apparatus for determining a database representation for an abstract datatype that may have more than one database representation. A user supplies a logical description that references the abstract datatype, along with one or more sample queries that reference the abstract datatype. For example, the user supplies a DDL statement to create a table using that abstract datatype as a column, without specifying any database representation for the abstract datatype. Also the user supplies a set of queries that reference the abstract datatype columns. Based on the user information, a database representation for the abstract datatype is determined. A script file containing code to create one or more base structures for the abstract datatype and to create zero or more indexes for the base structures is generated. The script file may be commented to explain to the user why a particular base structure or index was included in the script file.