Unified Query Result Merging for Multi-Repository Package Search

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software development tools face inefficiencies when searching for software packages across multiple repositories, as users must manually query each repository, leading to a laborious, error-prone, and time-consuming process, especially when dealing with large numbers of services, and merging query results from different services is challenging due to internal ordering and lack of global knowledge.

Innovation Solution

A multi-service query processor that transmits a query to multiple services, receives and merges query result sets using a comparer function generated by applying a ranking algorithm, maintaining the internal order of each service's results, and displaying them in a unified list, allowing users to interact with the merged results and filter them.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a user manually queries each repository individually, then the user can obtain query results from each repository, but the process becomes laborious, error-prone, and time-consuming

Engineering Contradiction:
Improvequery efficiencyVSAvoidtime to query multiple repositories
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent combines multiple independent repository queries into a single unified query operation. The system transmits a query to multiple package repositories simultaneously and merges the results into a single unified result set, eliminating the need for users to manually query each repository separately and significantly reducing the time and effort required.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The query merging system provides universal functionality by handling queries across multiple different package repositories through a single interface. It automatically manages the complexity of interacting with multiple repositories, making the system adaptable to various repository types and query scenarios without requiring separate manual operations for each.

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

2Ease of operation

If query results from multiple services are merged, then a unified result set is presented to the user, but maintaining the internal order of each service's results while applying global ranking is challenging

Engineering Contradiction:
Improveuser experienceVSAvoidcomplexity of merging and ranking algorithms
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system introduces an intermediary ranking algorithm that acts as a mediator between individual service results and the final unified output. This intermediary layer receives results from multiple services, applies consistent ranking criteria, and produces a globally ranked unified result set while preserving the internal ordering constraints of each service, thus simplifying the user interface without oversimplifying the underlying complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the ranking parameters by applying a consistent ranking algorithm across all service results. Instead of relying on each service's internal ranking, the system re-ranks all results using unified criteria, transforming the ordering parameter from service-specific to globally consistent, which improves ease of operation while managing the complexity through systematic parameter transformation.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If multiple independent package repositories are integrated, then the system provides comprehensive package discovery, but merging query results without a standardized global ranking system is difficult

Engineering Contradiction:
Improveintegration of multiple repositoriesVSAvoidconsistency of query results
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system ensures reliability and consistency by changing the ranking parameter from service-specific internal orders to a unified global ranking. The ranking algorithm applies consistent criteria across all repository results, transforming heterogeneous service outputs into a homogeneous, reliably ranked unified result set that maintains adaptability to multiple repositories.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies homogeneity by standardizing the output format and ranking criteria across all repository results. Despite integrating diverse independent repositories, the system produces a homogeneous unified result set with consistent ordering, making the integrated system reliable and predictable while maintaining versatility in handling multiple repository types.

Inventive Principle:
Principle #33Homogeneity

Data Source

PatentUS11475081B2Combining catalog search results from multiple package repositories
Publication Date: 2022.10.18 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11475081B2 patent drawing
  • US11475081B2 patent drawing
  • US11475081B2 patent drawing

AI summary

Methods, systems, apparatuses, and computer program products are provided for merging the query results received for a query provided to multiple services. In one aspect, a query is transmitted to a plurality of search services. A plurality of query result sets is received from the search services in response to the query. A comparer function is generated by applying a ranking algorithm to the received query result sets that orders the query results of the query result sets without regard to a received order of the query results in the query result sets. The query result sets are merged into a merged query result set using the comparer function. In an aspect, the query result sets are merged in a manner that maintains an internal order of each received query result set in the merged query result set.