Push-Model Index Updating for Search Engines

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Search engines face inefficiencies in updating search indexes to reflect changes in data objects, leading to inaccurate search results when data objects are deleted, modified, or inserted, as they often require scanning entire datasets, which is time-consuming and resource-intensive, and may prevent users from submitting queries during index creation or update processes.

Innovation Solution

A push-model based index updating method where a transaction monitor generates and transmits update index messages to a search engine, including identifiers and data content information, allowing the index update module to update the search index without accessing the data objects, thus maintaining index accuracy and user query availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the search engine scans the entire dataset to update the search index, then the index accuracy is improved, but the time required for updating increases and user queries cannot be submitted during the update process

Engineering Contradiction:
Improveindex accuracyVSAvoidupdate time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by generating update index messages in advance when data objects are modified or inserted. These messages are transmitted to the search engine before a full index scan is required, allowing the index to be updated incrementally without stopping user queries. The transaction monitor captures changes as they occur and prepares update messages proactively.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The index updating process is segmented into individual update index messages, each corresponding to a specific data object change. Instead of scanning the entire dataset as a single operation, the system divides the update into discrete units (individual message transmissions) that can be processed independently and concurrently with user queries.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If the search engine scans the entire dataset to update the search index, then the index accuracy is improved, but the computing power required increases

Engineering Contradiction:
Improveindex accuracyVSAvoidcomputing power
Core Design Contradiction:
Measurement precisionVSPower

Solution Approach 1:

The system extracts only the necessary information for index updates from the data objects. Instead of scanning and processing entire datasets, the transaction monitor extracts specific change information (data object identifiers and modification indicators) and transmits only these essential elements to the search engine via update index messages, significantly reducing computing power requirements.

Inventive Principle:
Principle #2Taking out (Extraction)

3Measurement precision

If the search engine accesses data objects during index updates, then the index accuracy is improved, but the system complexity increases

Engineering Contradiction:
Improveindex accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The transaction monitor serves as an intermediary between data objects and the search engine. It captures modifications to data objects and translates them into standardized update index messages, which are then transmitted to the search engine. This intermediary layer simplifies the system by providing a uniform interface and eliminating the need for the search engine to directly access or interpret various data object formats.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9418154B2Push-model based index updating
Publication Date: 2016.08.16 ORACLE INT CORP
  • US9418154B2 patent drawing
  • US9418154B2 patent drawing
  • US9418154B2 patent drawing

AI summary

A method and apparatus for push-model based index updating. In one embodiment of the method, a first transaction generated for modifying or inserting a first data object into a memory. A first message is generated in response to generating the first transaction, wherein the first message comprises information related to an identifier of the first data object, wherein the first message comprises information that indicates that the first data object was or will be modified or inserted into the memory, and wherein the first message comprises a copy of some or all of the data contents of the first data object; transmitting the first message to a computer system that implements a search engine.