Dynamic Facet Selection for Scalable Product Search
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional faceted search engines face performance degradation as the number of facets increases, making them non-scalable for databases with thousands of attributes, as they rely on static lists of fields and facets predetermined before query time.
Innovation Solution
A dynamic attribute search engine system that includes a processing device, memory device, product database, and index, where attributes are stored as key-value pairs in a schemaless data structure, allowing for real-time updates and dynamic ingestion of new attributes, and a faceted searcher that selects relevant facets without prior determination, based on search queries and their matching scores.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional faceted search engines use static lists of fields and facets predetermined before query time, then the search structure is simple and easy to implement, but performance degrades as the number of facets increases and scalability is limited
Solution Approach 1:
The patent implements dynamic facet selection where the search system automatically determines which facets to apply based on the current query and context, rather than using predetermined static facet lists. This allows the system to adapt to different search scenarios and maintain performance even with large numbers of attributes by selectively applying only relevant facets.
Solution Approach 2:
The system changes the parameter of facet selection from static to dynamic by using machine learning models that analyze query characteristics and automatically select appropriate facets. This parameter change enables the system to handle varying numbers of facets efficiently without performance degradation.
2Adaptability or versatility
If the number of facets is increased to handle thousands of attributes, then the search coverage and comprehensiveness improve, but performance degradation occurs and scalability is reduced
Solution Approach 1:
The patent extracts only the most relevant facets from the large set of available attributes based on the current query context. Instead of processing all thousands of attributes uniformly, the system identifies and extracts the subset of facets that are most useful for the specific search, thereby maintaining performance while preserving search coverage.
Solution Approach 2:
The system applies partial action by selectively processing only the necessary facets rather than all available facets. This approach avoids the performance cost of processing excessive facets while still providing comprehensive search coverage for the relevant attributes.
3Adaptability or versatility
If static facet lists are used predetermined before query time, then the system complexity is reduced and implementation is easier, but the system cannot adapt to new attributes or changing search patterns
Solution Approach 1:
The patent implements self-service through automated machine learning models that autonomously analyze queries and select appropriate facets without manual configuration. The system serves itself by automatically adapting to new attributes and search patterns, eliminating the need for manual facet list updates while managing complexity through automation.
Solution Approach 2:
The system uses feedback from query analysis and performance metrics to continuously improve facet selection. Machine learning models learn from search patterns and user behavior to automatically adjust which facets are applied, enabling adaptability to new attributes while managing system complexity through data-driven decisions.
Data Source
AI summary
A dynamic attribute search engine system can be implemented to execute faceted searches using dynamic facets. In embodiments, a dynamic attribute search engine system includes one or more product databases, a data ingestor, an index, a query service, and a faceted searcher. The dynamic attribute search engine system is programmed to dynamically determine facets for a faceted search in response to dominant categories identified for each search query.

