Search Index Sub-Index Segmentation for Query Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
As the amount of customer data increases and query complexity grows, existing methods struggle to manage query latency effectively, often requiring costly resource upgrades that do not provide sufficient granularity to balance cost and performance, leading to suboptimal user experience and increased expenses for customers.
Innovation Solution
Dynamic adjustment of resources and indexes, including dividing search indexes into sub-indexes for concurrent processing, to reduce latency while minimizing resource costs, along with automatic index configuration generation based on data analysis to optimize search performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If additional resources are used to reduce query latency, then query performance is improved, but cost increases
Solution Approach 1:
The patent divides the search index into multiple sub-indices that can be processed concurrently. This segmentation allows the system to reduce query latency by processing multiple index segments in parallel rather than sequentially, thereby improving query speed without requiring a linear increase in resource cost. The index is divided into manageable chunks that can be distributed across available resources for simultaneous processing.
Solution Approach 2:
The system dynamically adjusts the number and size of sub-indices based on query characteristics and available resources. The patent implements dynamic resource allocation where the system can create, modify, or remove sub-indices as needed to optimize query performance. This dynamic adjustment allows the system to balance latency reduction with cost efficiency by only creating additional sub-indices when necessary.
2Productivity
If more resources are allocated to process queries, then query processing speed increases, but the system complexity increases
Solution Approach 1:
The search index is segmented into multiple sub-indices that can be processed independently and concurrently. This segmentation enables the system to handle increased query volumes by distributing the processing workload across multiple simpler units rather than requiring a single complex system. Each sub-index can be managed and processed independently, reducing overall system complexity while increasing productivity.
Solution Approach 2:
The patent creates a universal framework for managing sub-indices that can be applied across different query types and data sets. The same sub-index management mechanisms work for various search scenarios, reducing the need for specialized complex systems for different functions. This multi-functionality simplifies the system architecture while maintaining high query processing capability.
3Loss of time
If the index is divided into sub-indices for concurrent processing, then query latency is reduced, but the index management complexity increases
Solution Approach 1:
The index is divided into sub-indices that can be processed concurrently to reduce query execution time. The patent implements automated mechanisms for managing these sub-indices, including automatic creation, splitting, and merging, which reduces the manual management complexity that would otherwise result from having multiple index components.
Solution Approach 2:
The system performs self-service management of sub-indices through automated processes. The patent describes mechanisms where the system automatically monitors query performance and resource utilization, then dynamically creates or adjusts sub-indices without manual intervention. This automation reduces the operational complexity of managing multiple indices while maintaining the performance benefits of concurrent processing.
Data Source
AI summary
The processing of search queries for a customer using a set of resource can balance performance with cost, in order to ensure that the processing satisfies customer performance requirements while attempting to minimize the cost to the customer for obtaining that performance. In addition to dynamically updating the allocation of resources used to process the requests, such as to change the number or sizes of allocated resources, the number of indexes to be searched can be updated as well. For example, a search index can be divided into two sub-indexes against which queries can be executed concurrently in order to reduce the latency by about a half. Adjustments to the indexes and resources can be balanced to minimize cost while retaining performance, which can include rejoining sub-indexes or reducing the number of resource as appropriate.


