Montag, 20. Mai 2013

Building Search Driven Solution with SharePoint 2013 Part II


Part I is about Search Driven in on-premise environments
Part II will show the options and differences with O365 SharePoint Online

In Part I I wrote about the options and scenarios with Search and Search Driven Apps in SharePoint 2013 on-premise. Now let’s see which option we have using the online version of new SharePoint 2013.

There are two big differences in SharePoint Online:

1.       We did not have the new Webpart Family “Search Driven Content”.

So in fact we only can use the common Search Result Webpart and its options within the Query Builder to create dynamic search solutions

2.       In SharePoint Online we are not able to configure own content sources ore manipulate the settings like Crawler scheduling etc.

Missing "content source" option in SharePoint Online and its impact


Because of the option “content sources” is not available in SharePoint Online we have to look for alternatives to bring in own content in our SharePoint Online environment. Another point is the index freshness which cannot be manipulated setting up Crawler scheduling ore manually decide to configure continuous crawling option.

Index freshness

Also in the official technet documentation is not a clear statement continuous crawling is set up by default for SharePoint Online or not. My own experience say: “Yes, it is”. I get search result in the index within 2min – 4min. This is really fast and for me in the most scenarios ok.

Own content

To bring in own content in you SharePoint Online Search you have to use “Result Sources” To set up those 3th Party Result Sources you can use “Site Setting” to configure them in the context of a Site Collection ore SharePoint Admin Center to do it global.
The dialog for setting up a Result Source shows the option for bring in own content:
·         Local SharePoint
·         Remote SharePoint
·         OpenSearch 1.0/1.1
·         Exchange
 
For all options you have to configure a security context to access the result source. Using Remote SharePoint you can use SSO or path thru authentication. Using Open Search we have the option to use Anonymous, Basic Authentication, Digest Authentication, NTLM, Form Authentication or Cookie Authentication. Using Remote SharePoint to call an on-premise SharePoint Search you have to set up a Search Federation based on an Identity Federation.
In all cases we had to configure a Remote Address and we can configure a Query Transformation (as described in Part I) to filter ore manipulate the query which is send to the remote system.
In my demo tenant I simply use some open search based systems.
 
Source
Source Url
Twitter
http://search.twitter.com/search.atom?q={searchTerms}
Facebook
http://search.live.com/results.aspx?q={searchTerms}+site%3afacebook.com&format=rss
YouTube
https://gdata.youtube.com/feeds/api/videos?q={searchterms}
(These can of cause also be remote endpoints for your LOB systems or other on-premise sources)

Setting up those systems as a “Result Source” get me the option to use them in my SharePoint Online system to build Search Driven experiences.



Search Driven experiences and solutions in SharePoint Online

Easiest way to use the new result source and within them remote content is using them in the result Webpart. In this example you can see an overview site in my SharePoint Online that aggregate News from configured social media sources based on Result Webparts:
For example filling the atwork area for Twitter news I configured the Result Webpart with those setting:
·         Setting up the “Select a query” with the “Twitter” Result Source
·         Fill in a query that focus to the desired results
Using the configured result sources within Query Rules (as described in Part I) we can build focused search experience like this social media search page:
Search Driven Solution can of cause also build based on SharePoint Online content. Here you see an example based on content placed in SharePoint Online lists ad libraries:
And of course you can mix results coming from remote sources and results coming from your SharePoint Online source.
This Webcast shows the described samples in action: