O, Canada! O, Coveo!

June 10, 2013 | Ed Kapuscinski

looking through binoculars

I recently had the opportunity to head to the Québec City headquarters of one of our partners, Coveo, for some training on their product. Coveo offers a product, Coveo Enterprise Search, which is an ascendent leader in enterprise search, with a focus on advanced company-wide search of many content repositories, service and support knowledge access and web search. It was that last application of their technology that I went to learn more about, specifically how it can be used alongside Sitecore to provide an integrated site search tool that can span multiple different web properties.

Coveo has been offering a connector to integrate their product with Sitecore for many years, but has recently stepped up their push to be the main search option for Sitecore customers. This has meant ramping up their efforts to build their own partner network, of which TBG is proudly a member.

My journey was to take me to participate in a training class specifically offered for Sitecore partners, folks who would generally be implementing Coveo alongside a Sitecore implementation. This was really good, because as I learned more about during the class, Coveo can be used in a number of ways, and a full on training class that covered all aspects of the product would take far more than a week.

Coveo’s product operates by using connectors to access a large number of different types of data repositories like CRM systems (like Salesforce), document repositories (like SharePoint), and databases (like, well, anything you can stash in SQL Server). Coveo has one of these connectors for Sitecore, which makes it an ideal choice for providing a site search on a Sitecore site.

The Sitecore connector indexes the content in a Sitecore instance and uses the metadata provided by the Sitecore API to expose important things like authorship and, most importantly, security to the search index.

By exposing security information to the index, Coveo can provide a site search on a site with complex user permission models (like many association sites have) that extends the same permissions into the search. This means that a user will only be shown content that they have access to by virtue of their role memberships and the content’s permissions set in Sitecore. This should be news to anyone’s ears if they’ve ever had to implement a Lucene-based site search on a site with varying levels of content access rights.

Coveo can also index content by spidering a website. This spidering can occur even if the site requires authentication using various authentication schemes.

These capabilities mean that the tool addresses one of the most common site search requirements, and one that often requires going well beyond extending Sitecore’s existing Lucene based capabilities: the need to provide search results from both a Sitecore site and some non-Sitecore sites in a unified interface.

Coveo’s pre-built interface then makes segmenting the results, and drilling down to find what you’re looking for very easy without custom development. This interface can be integrated easily with a Sitecore site, since it’s all ASP.NET, and can be displayed on pages using the Coveo provided controls.

Backing the interface up is an architecture that lets you separate the presentation layer from the core indexing layer. The core indexing layer itself is also massively scaleable, with the ability to split it into multiple instance, each of which can then contain either a full version of the index, or slices of it. This architecture lends itself very well to scaling into many different scenarios depending on the real needs of the implementation.

The training course was great to supplement our existing knowledge, and taught us real world applications. It was also a wonderful opportunity to meet the great folks at Coveo, including many of the company’s leaders, who shared their vision of the product and their experiences with it.

I also got to eat a lot of great food along the way (Poutine overdose is real, people) and learned that Québec City is one of the oldest cities in North America, founded in 1608, only 382 years before ye olde World Wide Web was born. Unfortunately I just missed the Ice Hotel and got there too early for the beautiful spring weather that was already beginning back in the US. I will be back, Canada! But I better study up on my French…

About the Author

Ed Kapuscinski

I am the Manager of Development Standards at TBG.

Leave A Reply

comments powered by Disqus