KonaSearch solves the difficulty of having millions of records with information embedded in attached files, distributed across several orgs, or hidden in systems other than Salesforce. It provides a single universal search application natively within Salesforce that searches across multiple orgs in multiple languages as well as external data sources (e.g., Sharepoint, Google Drive).
The technology behind KonaSearch is in production today, providing search for some of the largest Fortune 500 companies for their public portals, intranets, knowledge discovery, and other search-intensive practices.
Kona brings this enterprise technology to the Salesforce users, finely tuned for their search needs, and entirely in the cloud. Although Kona is easy to install and run, like any good Salesforce app, it also provides a considerable amount of advanced capabilities.
Full Search Language
Search queries are more than a collection of searchable words. If you have used the “Advanced Search” dialog provided by Google search, you realize queries can be more powerful when you are able to qualify them. The dialog is one approach. Another is entering qualifying terms in the search box along with the words, like a language. This is KonaSearch.
Field:search | Name:Smith OR City:Boston
A field-specific search finds objects that have “Smith” in the Name field or “Boston” in the City field. KonaSearch by default searches across all fields, but if you want it to search just one field, it can. For example, you can search for a word in a company name.
KonaSearch has indexed UK, U.S., and Swiss postal data, mapping postal codes to geographic coordinates to let users restrict matches to within a specific radius of a location, such as matching job candidates to the location of open jobs.
Native Dates and Numbers
KonaSearch recognizes dates as dates and numbers as numbers
ProductX created:[2011-01-01 TO 2011-03-31]
Finds all objects created in Q1 of 2011 that mention “ProductX.”Treating dates as dates rather than text means you can search within ranges (such as less than and greater than), and still include it with the rest of the search terms.
Finds all objects with more than 200 employees (as defined by the Employees field). Treating numbers as numbers rather than text means you can search within ranges (such as less than or greater than. It means 3 comes before 12, not after.
Finds objects with “HIPAA” and “regulations,” but gives twice the relevancy for “HIPAA.”Not often used but can be handy if you want to emphasize one of several terms in a search.
Nested Boolean Logic
AND, OR, |, -, () : Acme AND (Einstein OR Lightning) -partner
Finds objects that mention “Acme” and either “Einstein” or “Lightning,” but not “partner.” You may not realize this, but every time you enter more than one word in a search query, you are actually writing a search query with qualifying terms — the space is an AND — as in “White AND House.” Using the minus sign is an easy way to remove noise from your results.
Finds “Powers” but not “Powerson.”
Finds “Powers” and “Powerson.”
The multi-character wildcard ‘*’ and single-character wildcard ‘?’ can be used in the middle or at the end of a word. This is great when you can only remember part of a name.
You can even use Salesforce constants in your query, like
Search Refinement Tools
The search language is powerful, but entering long Boolean expressions in the main search box can be difficult and time consuming, especially if the search involves filtering on specific fields. Kona offers a more graphical approach through facets and filters.
The search box is a good user interface for finding things, but for text analysis techniques like entity extraction, key-phrase extraction, and sentiment analysis, a better model is the facet. That’s a fancy term for lists of similar-topic words that can be clicked on to narrow a set of search results. The “facet” is the topic, and you can have more than one about the same set of results. Only values that have at least one result are shown. Example: I search for Product X, and from the results I’m automatically told there are 200 customers in West Region, 150 in Central Region, and 300 in East Region. If I click on Central Region, I see only its 150 results about Product X. KonaSearch creates facets automatically for Object Type and Owner.
A filter is a control on your search page that searches a specific field. Depending on the field’s type, the control can be a text box, a list of items, radio buttons, a checkbox, or a hierarchy tree. It could be a set of text boxes to define a date range, number range, or distance from a ZIP code. (Kona supports distance search.)
User Forgiveness Features
KonaSearch provides a forgiving environment by analyzing both the query and the content it’s searching, and offering to adjust the query to arrive at the best match between the two. Through techniques like spell correction, phrase detection, and synonym expansion, KonaSearch gives you only the most relevant results. It lets you avoid drilling into empty facets by showing per-facet result counts up front.
KonaSearch offers to complete your query by figuring out what you are likely trying to type in. Suggestions are drawn from all the relevant words in the searched content, so selecting one of the choices means you will always have at least one result.
KonaSearch will ask you to adjust your query if it finds a word in the searched content that is spelled differently, but seems to have more results than the word you’re currently typing in. This works for any text, from basic words to names.
Lemmatization is a fancy term for finding results that are grammatical variations of the word you’re searching for. This is more than “is it singular or plural (is there an “s” at the end of the word)?” For instance, KonaSearch will find “knives” for “knife.”
KonaSearch expands your query by also searching for synonyms of the important words. Sometimes the “synonym” is actually an acronym or a term that is specific to your company, like a product name. That’s OK because you can add your own terms to the dictionary.
KonaSearch automatically interprets a query with more than one word as a phrase of words and lists them first. It also searches the words separately, finding any result that has all the words in the query in any order. If there are still no results, KonaSearch will return results that have some of the words.
KonaSearch applies a relevance-based sorting to its search results that is similar to public web search portals like Google search, but they’re designed specifically for Salesforce and CRM content.