Work File Change Detection in Database Query Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional database systems face inefficiencies and resource constraints when processing queries, particularly in large databases, due to the need for temporary work files that can exceed memory limits and require substantial resources, leading to repeated processing of identical queries.

Innovation Solution

The system employs a method to save and reuse temporary work files associated with fingerprints or hashes, allowing subsequent queries to leverage existing results instead of re-processing data, and tracks transaction IDs to ensure data integrity and freshness.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If temporary work files are created to process queries in large databases, then query processing capability is improved, but memory usage increases and may exceed memory limits

Engineering Contradiction:
Improvequery processing capabilityVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent segments the database processing into multiple work files that can be managed separately. Instead of loading entire datasets into memory, the system divides data into manageable segments (work files) that can be processed sequentially or in parallel, reducing peak memory usage while maintaining query processing capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of storage by utilizing disk-based work files as an extension of memory. This transforms the problem from a two-dimensional memory constraint to a multi-dimensional storage hierarchy involving both memory and disk, allowing queries to be processed using work files that reside on disk rather than requiring all data to be in memory simultaneously.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Ease of operation

If identical queries are processed multiple times from multiple users, then each user receives their requested information, but system resources are wasted through repeated processing

Engineering Contradiction:
Improvequery fulfillmentVSAvoidsystem resources
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The patent implements preliminary action by pre-processing queries and storing their results in work files. When a query is executed, if the same query is detected in the work file cache, the pre-computed results are returned directly without re-processing. This eliminates redundant computation while ensuring each user receives their requested information, as the cached results can be served to multiple users who submit identical queries.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If work files are reused to reduce processing time, then query efficiency is improved, but data integrity may be compromised if underlying data changes

Engineering Contradiction:
Improvequery efficiencyVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback mechanisms to monitor changes in the underlying database data. When data changes are detected, the system invalidates or updates the corresponding cached work files to ensure they reflect the current state of the database. This feedback loop maintains data integrity while preserving the efficiency benefits of work file reuse, as queries always return accurate results based on the most current data.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10031944B1Work file change detection
Publication Date: 2018.07.24 EMC IP HLDG CO LLC
  • US10031944B1 patent drawing
  • US10031944B1 patent drawing
  • US10031944B1 patent drawing

AI summary

A method, article of manufacture, and apparatus for processing information are disclosed. In some embodiments, this includes receiving a query plan, identifying a first work file based on the query plan, determining a first work file transaction ID associated with the first work file, determining a data transaction ID, comparing the first work file transaction ID and the data transaction ID, creating a second work file based on the query plan if the data transaction ID is greater than the first work file transaction ID, and storing the second work file in a storage device. In some embodiments, the second work file may be associated with a second work file transaction ID.