Multi-Database Search Pagination With Combined Cursor Objects
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for querying and retrieving data from multiple databases impose a significant cognitive burden on users due to the need to manage separate queries and result sets, and managing pagination cursors across databases with different technologies is problematic, especially when combining results.
Innovation Solution
A search engine that receives a single input query, processes it to generate native queries for multiple databases, combines results, and uses custom pagination cursors to manage pagination across databases with different techniques, ensuring cohesive display and arbitrary result subsets.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If separate queries are executed for each database to retrieve search results, then comprehensive search coverage across multiple databases is achieved, but user cognitive burden increases due to managing multiple queries and result sets
Solution Approach 1:
The patent combines multiple separate database queries and their result sets into a single unified search interface. The system executes queries against multiple databases simultaneously or sequentially, then merges the results into one consolidated result set that is presented to the user through a single interface, eliminating the need for users to manage multiple separate queries.
Solution Approach 2:
The search system is designed with universal functionality to handle multiple database types and query formats through a single interface. It provides a unified search mechanism that can adapt to different database schemas, data types, and query requirements while maintaining a consistent user experience across all database operations.
2Manufacturing precision
If pagination cursors are managed separately for each database, then accurate pagination control is maintained, but system complexity increases due to coordinating multiple cursor states
Solution Approach 1:
The patent merges multiple database-specific pagination cursors into a single unified cursor state. Instead of tracking separate cursor positions for each database, the system consolidates pagination state information into one unified cursor that manages the combined result set from all databases, simplifying the coordination of multiple cursor states while maintaining accurate pagination control.
3Ease of operation
If results from multiple databases are combined into a single result set, then unified search interface is provided, but difficulty in managing and displaying results from different database technologies increases
Solution Approach 1:
The system introduces an intermediary layer between the multiple databases and the user interface. This intermediary component standardizes and normalizes results from different database technologies into a common format, handling the complexities of diverse data structures, types, and schemas. The intermediary processes and adapts the results, making them uniform and easier to manage and display through the unified interface.
4Adaptability or versatility
If custom pagination cursors are implemented to manage arbitrary result subsets, then flexible pagination is achieved, but cursor processing complexity increases
Solution Approach 1:
The custom pagination cursor system is designed to be self-managing, automatically tracking its own state and position within the combined result set. The cursor self-updates its position information as results are consumed or skipped, and automatically manages the complexity of tracking arbitrary subsets of results from multiple databases without requiring external coordination or complex processing logic.
Data Source
AI summary
Methods for paginating search results retrieved from multiple databases are disclosed. Method includes receiving a search request; executing, based on the search request, a first search on a first database to return a first result set and a second search on a second database to return a second result set. The method also includes selecting a first subset from the first result set, generating a first cursor object based on a number of search results selected in the first subset, selecting a second subset from the second result set, and generating a second cursor object based on a number of search results selected in the second subset. Further, the method combines the first and second subsets into a first page of search results, combines the first and second cursor objects into a combined cursor object; and returns the first page of search results and combined cursor object to the client application.


