To optimize performance of wildcard search, use the following recommendations.
Account for increased time needed for indexing. In general, if wildcard search is enabled in the MDEX Engine (even if it is not used by the users), it increases the time and disk space required for indexing. Therefore, consider first the business requirements for your Oracle Commerce application to decide whether you need to use wildcard search.
Note
To optimize performance, the MDEX Engine performs wildcard indexing for words that are shorter than 1024 characters. Words that are longer than 1024 characters are not indexed for wildcard search.
Do not use "low information" queries. For optimal performance, Oracle recommends using wildcard search queries with at least 2-3 non-wildcarded characters in them, such as
abc*
andab*de
, and avoiding wildcard searches with one non-wildcarded character, such asa*
. Wildcard queries with extremely low information, such asa*
, require a significant amount of time to process. Queries that contain only wildcards, or only wildcards and punctuation or spaces, such as*.
or* *
, are rejected by the MDEX Engine.Analyze the format of your typical wildcard query cases. This lets you be aware of performance implications associated with one specific wildcard search pattern.
For example, it is useful to know that if search queries contain only wildcards and punctuation, such as
*.*
, the MDEX Engine rejects them for performance reasons and returns no results.Do you have queries that contain punctuation syntax in between strings of text, such as
ab*c.def*
?For strings with punctuation, the MDEX Engine generates lists of words that match each of the punctuation-separated wildcard expressions. Only in this case, the MDEX Engine uses the
--wildcard_max <count>
setting to optimize its performance.Increasing the
--wildcard_max <count>
improves the completeness of results returned by wildcard search for strings with punctuation, but negatively affects performance. Thus you may want to find the number that provides a reasonable trade-off. For more detailed information on this type of tuning, see the MDEX Engine Performance Tuning Guide.
Note
You enable wildcard search in Developer Studio.