Non-Relational Database Query Joining via Volatile Memory Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database search queries often require information from multiple non-relational database indexes, where field names differ across indexes, making it challenging to join search results efficiently, especially when non-volatile memory is a premium resource.

Innovation Solution

A system and method that perform non-relational database queries on multiple indexes, storing results in volatile memory to conserve non-volatile memory, and generating a joined dataset with a common field to facilitate efficient data retrieval and display.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If search results from multiple non-relational database indexes are joined and stored in non-volatile memory, then data retrieval efficiency is improved, but memory resource consumption increases

Engineering Contradiction:
Improvedata retrieval efficiencyVSAvoidmemory resource consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent segments the storage location for joined datasets by using volatile memory as a temporary storage layer between non-volatile database indexes and the query processing system. This segmentation allows the system to retrieve data efficiently from non-volatile storage without permanently consuming non-volatile memory resources, as the joined results are held in volatile memory during processing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Volatile memory serves as an intermediary between non-volatile database indexes and the query processing system. The joined search results are first generated and stored in this intermediate volatile memory layer, allowing efficient access during query processing while preventing direct consumption of non-volatile memory resources. This intermediary layer resolves the contradiction by providing fast access without permanent storage.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If field names are standardized across multiple database indexes, then data joining complexity is reduced, but system adaptability to different data models decreases

Engineering Contradiction:
Improvedata joining complexityVSAvoidsystem adaptability to different data models
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent applies local quality by allowing each database index to maintain its own field naming conventions and data model characteristics locally, while the joining process dynamically maps these local variations to a unified query interface. The system adapts to local field name differences at the point of joining rather than enforcing global standardization, thus reducing complexity without sacrificing adaptability.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically changes the mapping parameters between different database indexes during the joining process. Instead of fixing field name correspondences in advance, the joining mechanism adapts parameter mappings based on the specific indexes being joined, allowing the system to handle diverse data models while maintaining a consistent query interface.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11775526B1Systems and methods for joining non-relational database search results over multiple database indexes
Publication Date: 2023.10.03 UNITED SERVICES AUTOMOBILE ASSOCIATION (USAA)
  • US11775526B1 patent drawing
  • US11775526B1 patent drawing
  • US11775526B1 patent drawing

AI summary

The presently disclosed systems and methods receive a search request for information provided in a first field of a first index of a non-relational database cluster and a second field of a second index of the non-relational database cluster. A first database query is performed on the first index based on the first field, and the first database query results may be stored in volatile memory. A second database query is performed on the second index based on the second field, and the second database query results may be stored in the volatile memory. A joined dataset of the first database query results and the second database query results having a joined field corresponding to the first field and the second field is then be generated. The joined dataset is displayed in a user interface.