Search System Architecture Using Adapter for Hot-Swapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing search systems in enterprises are inflexible and require costly downtime for configuration changes, are tightly integrated with specific search engines, and lack support for multiple data sources and incremental indexing, leading to inefficient and user-unfriendly search experiences.

Innovation Solution

A flexible and configurable search system architecture that allows multiple search engines to be plugged in with minimal disruption, supports incremental indexing, and enables searching across various data sources without downtime, using a push-model indexing approach and a generic UI for result rendering.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the search engine is tightly integrated into the architecture stack, then the system provides stable and reliable search functionality, but any modification or replacement of the search engine requires shutting down the server, causing downtime and affecting user productivity

Engineering Contradiction:
Improvesearch functionality stabilityVSAvoidserver downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system is divided into distinct layers: the search user interface layer and the search engine layer. The search adapter acts as an intermediary that connects these layers, allowing the search engine to be replaced or modified without affecting the user interface or requiring server shutdown. This segmentation enables independent modification of each layer.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The search adapter serves as an intermediary component between the search user interface and the search engine. It provides a standardized interface that allows different search engines to be plugged in without modifying the user interface or core system architecture. This mediator enables hot-swapping of search engines without server downtime.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the search architecture is tightly integrated with a specific search engine, then the system achieves optimized performance for that engine, but the system lacks flexibility to adopt new search engines or modify search capabilities

Engineering Contradiction:
Improvesearch performanceVSAvoidsearch engine flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The search adapter provides a universal interface that can work with multiple different search engines. Instead of creating a separate integration for each search engine, the adapter serves as a multi-functional component that can connect to various search engines through standardized protocols, enabling the system to leverage different search engines as needed.

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

Solution Approach 2:

The system architecture is designed to be dynamic, allowing the search engine component to be changed at runtime without requiring system shutdown or recompilation. The search adapter enables hot-swapping of search engines, making the system adaptable to new search technologies while maintaining optimized performance through proper integration.

Inventive Principle:
Principle #15Dynamics

3Manufacturing precision

If the search system requires full indexing for any configuration changes, then the system maintains data accuracy, but the indexing process becomes inefficient and cannot be performed incrementally

Engineering Contradiction:
Improvesearch result accuracyVSAvoidindexing efficiency
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

Instead of requiring complete re-indexing for any configuration changes, the system implements incremental indexing that only processes the specific portions of data that have changed. This partial action approach maintains search result accuracy by ensuring changed data is properly indexed, while avoiding the excessive overhead of full re-indexing operations.

Inventive Principle:
Principle #16Partial or excessive action

4Adaptability or versatility

If the search system supports multiple data sources from different vendors, then the system achieves comprehensive data coverage, but the system complexity increases and requires multiple search engines

Engineering Contradiction:
Improvedata source compatibilityVSAvoidsystem architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The search adapter serves as a universal interface that can connect to multiple data sources from different vendors through standardized protocols. Instead of requiring separate integration code for each vendor or data source type, the adapter provides multi-functional capabilities that handle various data source connections uniformly, reducing system complexity while maintaining broad compatibility.

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

Data Source

PatentUS9454609B2Data source-independent search system architecture
Publication Date: 2016.09.27 ORACLE INT CORP
  • US9454609B2 patent drawing
  • US9454609B2 patent drawing
  • US9454609B2 patent drawing

AI summary

A search system architecture is disclosed. The search system architecture includes a search server, which in turn includes a search services module and a search engine adapter. The search services module and the search engine adapter are communicatively coupled to one another. The search services module is configured to communicate with a user interface. The search engine adapter is configured to communicate with a search engine.