Wednesday, March 16, 2016

Oracle Endeca x.x - Search query processing order in MDEX

This section summarizes how the MDEX Engine processes record search queries. The process outlined here assumes that other features (such as ... thumbnail 1 summary
This section summarizes how the MDEX Engine processes record search queries.
The process outlined here assumes that other features (such as spelling correction and thesaurus) are being used.

The MDEX Engine uses the following high-level steps to process record search queries:

1. Record filtering
2. Endeca Query Language (EQL) filtering
3. Auto-correction (spelling correction and automatic phrasing)
4. Thesaurus expansion
5. Stemming
6. Primitive term and phrase lookup
7. Did you mean
8. Range filtering
9. Navigation filtering
10. Business rules and keyword redirects
11. Relevance ranking

Step 1: Record filtering
If a record filter is specified, whether for security, custom catalogs, or any other reason, the MDEX Engine applies it before any search processing.The result is that the search query is performed as if the data set only contained records allowed by the record filter.

Step 2: Endeca Query Language filters
The Endeca Query Language (EQL) contains a rich syntax that allows an application to build dynamic,complex filters that define arbitrary subsets of the total record set and restrict search and navigation results to those subsets. If used, this feature is applied after record filtering.

Step 3: Auto-correction (spelling correction and automatic phrasing)
If spelling correction and automatic phrasing are enabled and triggered, the MDEX Engine implements them as part of the record search processing.If the spelling correction feature is enabled and triggered, the MDEX Engine creates spelling suggestions by enumerating (for each query term) a set of alternatives, and considering some of the combinations of term alternatives as whole-query alternatives.

Step 4: Thesaurus expansion
The tokenized query, as well as each query alternative generated by spelling suggestion, is expanded by the MDEX Engine based on thesaurus matches. This topic describes the behavior of the thesaurus expansion feature.
Thesaurus expansion replaces each expanded query term with an OR of alternatives.
For example, if the thesaurus expands pentium to intel and laptop to notebook, then the query pentium laptop will be expanded to: (pentium OR intel) AND (laptop OR notebook) assuming the match mode is MatchAll.

Step 5: Stemming
Query terms, unless they are delimited with quotation marks to be treated as exact phrases, are expanded by the MDEX Engine using stemming.

Step 6: Primitive term and phrase lookup
Primitive term and phrase lookup is the lowest level of search processing performed by the MDEX Engine.

Step 7: Did You Mean
The MDEX Engine performs the "Did You Mean" processing as part of the record search processing."Did You Mean?" processing is analogous to the spelling correction and automatic phrasing processing, only that the results are not included, but rather the spelling suggestions and automatic phrases themselves are returned.

Step 8: Range filtering
Range filter functionality allows a user, at request time, to specify an arbitrary, dynamic range of values that are then used to limit the records returned from a navigation query. Because this step comes after "Did you mean?" processing, it reports the number of records before filtering.

Step 9: Navigation filtering
The MDEX Engine performs all filtering based on the navigation state after the search processing.This order is important because it ensures that the spelling suggestions remain consistent as the navigation state changes.

Step 10: Business rules and keyword redirects
Dynamic business rules employ a trigger and target mechanism to promote contextually relevant records to application users as they search and navigate within a data set. Keyword redirects are similar to dynamic business rules also use trigger and target values. However, keyword redirects are used to redirect a user's search to a Web page (that is, a URL). These features are applied after navigation filtering.

Step 11: Relevance ranking
Relevance ranking is the last step in the MDEX Engine processing for the record search. Each of the navigation-filtered search results is assigned a relevance score, and the results are sorted in descending order of relevance.

Click here to get more topics related to Endeca basic concepts.

No comments

Post a Comment

Text Widget