Database Validation Module for SQL Resource Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Relational databases face challenges in efficiently managing and validating SQL instructions to prevent resource overutilization, leading to performance issues and potential unauthorized access.

Innovation Solution

A database system with a validation module that includes parser-based and plan validators to analyze SQL instructions, checking for resource-intensive operations and inconsistencies, and generates validation indications to prevent performance issues and unauthorized access by filtering instructions before they reach the database engine.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If access limitations are implemented to prevent resource overutilization, then database system resource usage is controlled, but the complexity of the system increases and legitimate access may be hindered

Engineering Contradiction:
Improvedatabase system resource usageVSAvoidsystem complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The validation module performs preliminary analysis of SQL instructions before they are executed by the database engine. By checking for resource-intensive operations and potential security issues in advance, the system can prevent harmful queries without requiring complex runtime controls or access limitations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The validation module acts as an intermediary component between the SQL interface and the database engine. It receives SQL instructions, validates them against security and performance criteria, and either allows or blocks execution. This mediator approach provides fine-grained control without requiring broad access limitations that would increase system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If comprehensive validation of SQL instructions is performed, then security and performance are improved, but processing time increases

Engineering Contradiction:
Improvesecurity and performanceVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The validation module performs partial validation by focusing only on specific high-risk patterns and resource-intensive operations rather than analyzing every aspect of each SQL instruction. This selective approach provides sufficient security and performance protection while minimizing the time overhead associated with comprehensive validation.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system changes the parameter of validation depth by adjusting which types of SQL operations are validated based on risk levels. Common, low-risk operations receive minimal validation, while suspicious or resource-intensive operations undergo more thorough analysis, optimizing the balance between security and processing time.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10545962B2Relational database instruction validation
Publication Date: 2020.01.28 SALESFORCE INC
  • US10545962B2 patent drawing
  • US10545962B2 patent drawing
  • US10545962B2 patent drawing

AI summary

In an example, a database system may be configured to validate relational database instructions using a plurality of validators. In some examples, validation may be pre-production for relational database instructions based on simulated user inputs and/or file, such as plan files (e.g., PL/SQL (procedural language/structured query language) files). In some examples, validation may be in production for relational database instructions based on system views of a database engine.