Query Rewriting Module for Database Risk Calculation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In query submission environments, the increasing volume of data and diverse system deployments make it challenging to efficiently fetch data and troubleshoot queries, as existing approaches require frequent database tuning and can lead to unclear query execution processes.

Innovation Solution

The method involves comparing query aspects to rule sets to determine potential access paths, calculating risk scores based on entity information, and generating modified queries to optimize data retrieval while trimming irrelevant data, using the Rete algorithm for SQL and rule rewrites.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If database tuning processes are used to optimize query performance, then query execution efficiency is improved, but system complexity increases and troubleshooting becomes challenging

Engineering Contradiction:
Improvequery execution efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system automatically rewrites user queries using generated rules without requiring manual database tuning. The query rewriting module autonomously transforms queries to target specific data blocks, eliminating the need for developers to manually optimize queries for different database types.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

A query rewriting module acts as an intermediary between the user query and the database. This module translates user queries into optimized queries using generated rules, separating the optimization logic from both the user interface and the database engine.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of energy

If manual query optimization is performed to target specific data blocks, then I/O calls are reduced, but query development time and complexity increase

Engineering Contradiction:
ImproveI/O callsVSAvoidquery development time
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The system pre-generates optimization rules based on analysis of user queries and data block structures. These rules are created in advance and stored for reuse, eliminating the need to manually optimize each query individually.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates copies of query patterns and transforms them using generated rules. Instead of manually optimizing each unique query, the system identifies pattern similarities and applies corresponding rule transformations automatically.

Inventive Principle:
Principle #26Copying

3Loss of information

If comprehensive data retrieval is performed to ensure all related information is returned, then data completeness is improved, but query processing time and resource consumption increase

Engineering Contradiction:
Improvedata completenessVSAvoidquery processing time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The system extracts only the necessary data blocks required to answer the user query by applying generated rules. Instead of retrieving all possible related data, the rules identify and fetch only the specific data blocks needed, eliminating unnecessary data transfer.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9535955B1Modifying queries and rules for profile fetching and risk calculation
Publication Date: 2017.01.03 EMC IP HLDG CO LLC
  • US9535955B1 patent drawing
  • US9535955B1 patent drawing
  • US9535955B1 patent drawing

AI summary

Methods, apparatus and articles of manufacture for modifying queries and rules for profile fetching and risk calculation are provided herein. A method includes comparing at least one aspect of a query submitted to access a data store to rule sets associated with the data store to determine a potential access path within the data store for responding to the query, comparing information pertaining to an entity identified via the query to risk information pertaining to entities to determine a level of risk associated with the entity identified via the query, generating a modified version of the query based on information derived from the potential access path within the data store for responding to the query, and calculating a risk score associated with the modified version of the query based on the aspect of the query and the level of risk associated with the entity identified via the query.