Unified Cursor Object for Multi-Database Pagination

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database querying methods face challenges in efficiently retrieving and paginating search results across multiple databases that use different pagination techniques, leading to issues with cursor management and user experience due to the need for complex query syntax and manual management of offsets and cursors.

Innovation Solution

The implementation of custom and combined cursor objects that track the position of search result subsets across multiple databases, allowing for arbitrary pagination and filtering of results without altering the underlying database systems, and a unified search interface to manage pagination across databases with different techniques.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If cursor-based pagination is used to retrieve search results from databases, then retrieval efficiency is improved, but cursor management complexity increases

Engineering Contradiction:
Improveretrieval efficiencyVSAvoidcursor management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary pagination service that sits between the client application and multiple databases. This service automatically manages cursor-based pagination by receiving search requests, executing searches across multiple databases with appropriate cursor parameters, filtering and combining results, and returning paginated results with new cursors to the client. This eliminates the need for the client application to manually manage cursors and offsets, resolving the contradiction by maintaining high retrieval efficiency while reducing management complexity through automation.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple databases with different pagination techniques are queried, then data source versatility is improved, but query complexity increases

Engineering Contradiction:
Improvedata source versatilityVSAvoidquery complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal pagination service that can handle multiple database systems with different pagination techniques (cursor-based, offset-based, keyset-based) through a single unified interface. The service detects the pagination capabilities of each database and automatically applies the appropriate technique, allowing client applications to query diverse data sources without needing to know or implement multiple pagination approaches, thus maintaining versatility while reducing query complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The pagination service acts as an intermediary layer that abstracts the complexity of different database pagination techniques. It receives uniform pagination requests from client applications, translates them into database-specific queries with appropriate cursors or offsets, and returns results in a consistent format. This mediator approach enables versatile multi-database querying while shielding clients from the underlying complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If manual management of offsets and cursors is required, then pagination control precision is improved, but ease of operation deteriorates

Engineering Contradiction:
Improvepagination control precisionVSAvoidease of operation
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The patent implements self-service pagination where the pagination service automatically manages all cursor and offset details without requiring manual intervention from client applications. The service maintains internal state between requests, automatically calculates appropriate offsets and cursors for each page, and handles result filtering and combining. This eliminates the operational burden of manual cursor management while maintaining precise pagination control through automated algorithms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20240220485A1Systems and methods for paginating search results retrieved from databases that support cursor-based pagination
Publication Date: 2024.07.04 ATLASSIAN PTY LTD
  • US20240220485A1 patent drawing
  • US20240220485A1 patent drawing
  • US20240220485A1 patent drawing

AI summary

Methods for paginating search results retrieved from a database that supports cursor-based pagination are disclosed. The method includes executing a first search on a first database. The first search is executed using a first search query and execution of the first search returns a first set of search results from the first database and a first opaque cursor. The method further includes processing at least a first subset of the first set of search results, selecting at least a second subset of the at least first subset of search results, and generating a first cursor object. The first cursor object including a Subitem value in accordance with all search results from the first set of search results being unprocessed. The Subitem value based on a number of results from the first set of search results processed in the at least first subset of search results.