Currently I am preparing a session for the next SharePoint Days “Hybrid Worlds” here in Munich. My first presentation topic is “Hybrid Search - everything you need to know!” with focus on the new Cloud Hybrid Search Service Application and here are some of the ideas I will present.
Currently I am aware of 6 feasible hybrid options:
One-way Inbound Hybrid
You combine SharePoint Online with SharePoint on-premises - when a user queries in the SharePoint Online Search Center, SPO connects to SharePoint on-premises and executes the same or a similar query there to get results. Both results can then be shown in the SharePoint Search Center.
The setup in this case is the most challenging here, at least from the requirements side. To establish a trust, you need to have valid public certificate and an internet connected SharePoint farm - most of my clients could not do that because of that. In order to do security trimming the user needs a cloud and on-premises identity - in other words you need to sync your Active Directory to Azure AD (e.g. with dirsync) to get results back.
The user experience is a little cumbersome in my eyes, because you don’t have a single, combined result set. Sorting and refining both works, but having two different rankings - or in other words: the two search systems shows the user the two best results - but there should be only one right?
One-way Outbound Hybrid
That is the inverse setup of the inbound hybrid. Here the search center is on-premises and the search query will be additionally sent to SharePoint Online.
The setup is almost the same as with the inbound hybrid - but you don’t need a reverse connection from SharePoint Online back to SharePoint On-Premises because each request is coming from SharePoint On-Premises.
As already mentioned, this is the inverse setup, so everything from inbound hybrid applies here too.
Two-Way (inbound+outbound) Hybrid
You cant decide where to put your Search Center? Well then you should configure inbound and outbound hybrid search - so both Search Centers can show the results from both on-premises and SharePoint online.
The challenge here is the setup efforts - but there are pretty good PowerShell scripts out there, please see the good reads section down below.
The experience is the same as for inbound or outbound depending in what Search Center you are in.
Cloud Hybrid Search Service Application
Starting September 7th there is a new preview option available for hybrid search - the Cloud Hybrid Search Service Application - and that is my option a really big driver for hybrid scenarios! Once you configured the setup, basically you establish trust and configure a PushTenantManager you can delete your on-premises search index. Once you crawl, everything will be processed and sent to the cloud index and SharePoint Online takes care of the rest.
In the following screenshot you can see my on-premises Cloud Search Service Application up and running - from a UI perspective there is no directly visible indication that this is a cloud hybrid search service - except the name that I provided of course.
What I really like here is the option to connect on-premises Content with SharePoint Online - you can even index SharePoint 2007 or SharePoint 2010 and bring it to your users. Fileshares - yes, that works too. Or imagine you have multiple farms in multiple countries - maybe even with weak network connections between them. Ever tried to remotely crawl a farm from Europe to Asia? Not the best experience, I can tell! But with the new cloud hybrid search service you can combine the index in the cloud - and get rid of some on-premises servers (less SharePoint Server licenses, less patching & maintenance, less hardware). Of course you need SharePoint Online licenses for your users tho - my went for E1 to get going.
To set everything up, you need SharePoint 2013 with at least August 2015 Cumulative Update or SharePoint 2016. Then its basically the same step as configuring outbound hybrid, you setup the trust between on-premises SharePoint and SharePoint Online - and connect the PushTenantManager. Sounds complicated, but there is a Configure Hybrid Cloud Search Service Application that covers all that - the documentation is really good, best I have seen so far for a Preview.
Currently it’s not recommended to configure it on a production environment - on my DEV box it worked on the first try.
As of now there are some limitations for the new cloud hybrid search service, the following is not supported:
- Entity Extraction does not work
- No Content Enrichment / External Web Callout
- Index more than 2 million items - you might get throttled or blocked. That will change once the cloud search service is out of preview.
- Index at a high right - you might get throttled.
- Custom Security Trimming
- Remove search results by url
If you don’t use those features yet and not legally bound to stick on-premises it might be an option for you.
The user experience is by far the best for this setup. The key point for me is that the user most of the time do not care if this content is from on-premises or SharePoint Online (or hidden in whatever information silo) - most of the times they even do not know it. Most importantly they get the most relevant result from all the available systems presented in the nice and customizable Search Center:
No UI clutter with a single result block - perfect for many many users. I like it, too.
If you want to give the user the option to show only on-premises content you could easily add a new search vertical and bind a result source to it. The query for that source is IsExternalContent:1 to show SharePoint Online external results.
Another good thing here is that the search results appear very fast once they are index on-premises. For me it was instant, I was really surprised here.
Delve and the Office Graph
Currently the results are not visualized in Delve as content cards - but that will hopefully change in the near future. For me that really increases the value of Delve because currently our own intranet is on-premises and hidden from Delve. The more data the search engine gets, the better Delve gets, right?
Cloud Hybrid Search Service Application + One-way outbound Hybrid
At first I thought about labeling this option as “the perfect migration hybrid” - but perfect really depends on your requirements, right?
So as a benefit of establishing the trust between SharePoint Online and SharePoint on-premises during the setup of the cloud hybrid search service application you additionally set for outbound hybrid search. In other words: You can change the result source to SharePoint Online results and you will additionally get the cloud results on-premise, too. You have OneDrive for Business content in the cloud? You want the results searchable on premises? With that you can migrate and test the new cloud index - does it meet your requirements? - before shutting down your on-premises infrastructure without affecting the users. That is a nice quick win in my eyes here. I think we will try that very soon with our own intranet, once its production-ready.
The On-Premises Hybrid
Last but not least and for the sake of completeness - there are 3rd party connectors available to crawl SharePoint Online and make the results available on-premises.
Benefits of all this
The hybrid options give you a great opportunity to solve search challenges - from information silos, license costs to network latency. To get away from all technical stuff - the important point is that its easy for the end-user to find the relevant information, no matter where it’s stored. It must be simple and clutter-less, provide you with the latest and best results. Hybrid could be a great step forward.
You read so far and wand more? The following links helped me get started!
- Why Hybrid Crawl in SharePoint is a cold hot potato (Mikael Svenson´s view regarding hybrid crawling)
- The Five C’s of Enterprise Search (Agnes Molnar about Enterprise Search challenges, some points can be solved with a hybrid setup)
- Configure the hybrid infrastructure (Technet starting point for inbound and outbound)
- The all new Cloud Search service application coming to SharePoint 2013 and SharePoint 2016 (Ignite Introduction with video about the hybrid cloud search service application)
- Office 365: SharePoint Hybrid Configuration Wizard - SharePoint Escalation Services Team Blog (You want a wizard to configure hybrid? Good stuff!)
- Cloud Hybrid Search Service Application - SharePoint Escalation Services Team Blog (The most complete introduction I found so far, PowerShell scripts and all nicely documented - really good!)