Database Driver Gate for Archive Storage Query Routing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The expanding volume of data poses challenges in organizing and managing data effectively, leading to inefficient data migration, increased server workload, and delayed user responses due to the need for frequent updates in application logic and complex control logic, which affects user experience and productivity.

Innovation Solution

The implementation of a database driver gate that interfaces between the application logic layer and database drivers, a size prediction module to estimate query results, and a dedicated reporting server to expedite data searching and processing, allowing for efficient handling of database queries and data reports without updating the application logic layer, reducing server overload, and improving response times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Area of stationary object

If data is migrated from primary storage to secondary storage to reduce space on primary devices, then storage space on primary devices is improved, but server workload and data management complexity increase

Engineering Contradiction:
Improvestorage space on primary devicesVSAvoiddata management complexity
Core Design Contradiction:
Area of stationary objectVSDevice complexity

Solution Approach 1:

The patent introduces a database driver gate as an intermediary layer between the application logic layer and database drivers. This gate automatically handles data queries across both primary and secondary storage systems, eliminating the need for applications to directly manage storage complexity. The driver gate translates queries into appropriate access patterns for different storage tiers, thereby reducing data management complexity while enabling efficient use of both primary and secondary storage spaces.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the database access layer into separate database drivers for primary and secondary storage systems, with a driver gate coordinating between them. This segmentation allows each storage system to be optimized independently while the driver gate provides unified access. The segmentation enables independent optimization of primary storage for performance and secondary storage for cost-effectiveness, reducing overall system complexity through modular architecture.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If application logic layer is updated to reflect changing data organization, then data access accuracy is improved, but update time and development effort increase

Engineering Contradiction:
Improvedata access accuracyVSAvoidupdate time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The database driver gate serves as a stable intermediary that encapsulates changes in data organization. When data migration patterns change or storage policies are updated, only the driver gate needs to be updated, not the application logic layer. This intermediary absorbs the complexity of changing storage configurations while presenting a consistent interface to applications, thereby maintaining data access accuracy without requiring frequent application updates.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a virtual copy of the data access interface through the driver gate, which translates between different storage representations. Instead of applications directly interacting with changing storage structures, they interact with a stable virtual layer that copies and translates data access requests into appropriate storage operations. This copying approach isolates applications from storage changes, reducing update time while maintaining access accuracy.

Inventive Principle:
Principle #26Copying

3Productivity

If server processes queries against expanding volume of data, then data processing capability is improved, but response time increases

Engineering Contradiction:
Improvedata processing capabilityVSAvoidresponse time
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent segments data storage into primary storage for frequently accessed data and secondary storage for archival data. The database driver gate segments query processing by automatically determining which storage tier to access based on data characteristics and access patterns. This segmentation enables the server to process only the necessary data volume for each query, maintaining fast response times even as total data volume expands.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary data organization and classification into primary and secondary storage systems based on access patterns and data characteristics. By pre-organizing data before queries arrive, the system can quickly determine which data needs to be accessed and from where, reducing query processing time. The driver gate performs preliminary analysis of query requirements and routes them to appropriate storage systems in advance, improving response times as data volume grows.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11281642B2Handling user queries against production and archive storage systems, such as for enterprise customers having large and/or numerous files
Publication Date: 2022.03.22 COMMVAULT SYSTEMS INC
  • US11281642B2 patent drawing
  • US11281642B2 patent drawing
  • US11281642B2 patent drawing

AI summary

This application discloses a system for processing requests for data in production and archive/backup databases. The system stores a mapping of data in production and archive databases to multiple different data storage locations, including a production system storing at least one production database and an archive system storing at least one archive database. The system receives a data request from an application component, which manages or receives data from a user interface and has received the data request directly from the user interface. The system translates the data request to one or more database queries based on the mapping. The system causes to execute the database queries against data on the production or archive system. The system returns a result of executing the one or more database queries to the application component, where the application component returns the result to the user via the user interface.