Recommendation Engine for Database Data Enrichment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software developers face challenges in discovering and utilizing augmenting data sources, as the abundance of available data sources makes it difficult to determine which ones to use effectively for enriching database queries.

Innovation Solution

A recommendation engine performs static and dynamic analysis of database data and policies to suggest data enrichments, allowing developers to select relevant data sources for integration into database query responses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If developers manually discover and evaluate data sources, then they can ensure quality and relevance, but the time and effort required increases significantly

Engineering Contradiction:
Improvedata source qualityVSAvoiddiscovery time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs self-service by automatically analyzing database schemas, query patterns, and data characteristics to generate enrichment recommendations without requiring manual developer intervention for each data source evaluation

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system uses feedback from query performance data and usage patterns to continuously refine and improve enrichment recommendations, learning from actual developer interactions and system performance metrics

Inventive Principle:
Principle #23Feedback

2Reliability

If more data sources are integrated to enrich database queries, then the quality and completeness of query responses improves, but the system complexity increases

Engineering Contradiction:
Improvequery response qualityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the complex task of data source integration into manageable components: schema analysis, query pattern recognition, enrichment recommendation generation, and performance optimization, allowing developers to tackle each aspect separately

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intermediary recommendation engine that acts as a mediator between the database and external data sources, automatically analyzing compatibility and generating integration recommendations rather than requiring direct manual integration

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If developers thoroughly evaluate each data source before integration, then the relevance and applicability of enrichments improves, but the development cycle time increases

Engineering Contradiction:
Improveenrichment relevanceVSAvoiddevelopment speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by pre-analyzing database schemas and query patterns to identify potential enrichment opportunities before actual integration, preparing recommendations in advance to accelerate the development process

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11093490B2Recommending data enrichments
Publication Date: 2021.08.17 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11093490B2 patent drawing
  • US11093490B2 patent drawing
  • US11093490B2 patent drawing

AI summary

In accordance with one aspect of the present disclosure, a request to provide recommendations of data enrichments for a database is received at a recommendation engine. The recommendation engine may perform static and dynamic analysis of data associated with the database and may further refine recommendations based on policies. The recommendation engine may then provide the recommendations, if any, of data enrichments to allow a software developer, for example, to indicate whether the data enrichments are to be used.