How It Works
Smart Search retrieves the appropriate data from the database and stores it in an index file using an easily searchable format. When website visitors submit a search expression, the index is scanned instead of the raw data and the results are returned. The index is automatically updated whenever the corresponding website content changes.
Because searches are performed on index files suited for this purpose, results are returned significantly faster than when using serial searches directly through the database. This also ensures that searching is scalable, even for very large volumes of data.
You have full control over the content of every search index. You can specify which pages (documents) from your website should be included in an index and which should be ignored.
Additionally, the search functionality can be limited for visitors, according to assigned permissions. This ensures that data from secured website sections are not displayed to unauthorized users in search results.
Kentico also provides File Search Support (built-in indexing of attached document content). It means that you can search within files and attachments such as .PDF, .doc, .xls, etc.
Kentico’s predictive search displays results immediately as visitors type search expressions. Visitors to your website can see results before submitting the search. This allows them to find out easily if the entered keywords are relevant and also enables quick navigation to results without needing to go through a dedicated search page.
Smart and Typo-tolerant Search
The Smart search module returns results to visitors for words that are only approximate matches. Typo-tolerant searching allows visitors to obtain correct results even if there are misspelled words in the search expression.
Support of Stemming
Stemming is the removal of suffixes from words. If you create your search indexes using stemming analyzers (all the basic analyzers have their stemming variants in v8), the search matches words that have the same basic meaning, but different inflection. For example, when a user is searching for the word "conditional", the search will also hit documents containing the word "conditions" as the two terms share the same stem.
Kentico allows visitors to search for synonyms of words defined in the search query. Search requests that use the "Any word or synonyms" search mode allow visitors to find a wider set of results based on synonyms. The synonym search works by expanding all words in the search expression into a list of synonyms. For example, when searching for the words "search assistance", the synonym search expands the expression to: "search explore hunt hunting look lookup research seek assistance aid assist help".
The search solution offers several customization options. You can select which object data fields should be searchable, and define the exact format and layout of search results. Smart search runs on the Lucene .NET library, which allows integration with other external indexing or search services.
Kentico also allows you to use a custom-written search provider, or to integrate a third-party search engine.