spsvb developer intro to sharepoint search

26
Developers Introduction to SharePoint Search SharePoint Saturday Virginia Beach Mike Oryszak January 8 th , 2011

Upload: mike-oryszak

Post on 17-Nov-2014

2.267 views

Category:

Technology


3 download

DESCRIPTION

SharePoint Saturday Virginia Beach, VA - 1/8/2011Developer Introduction to Search.

TRANSCRIPT

Page 1: Spsvb   Developer Intro to SharePoint Search

Developers Introductionto SharePoint Search

SharePoint Saturday Virginia BeachMike Oryszak

January 8th, 2011

Page 2: Spsvb   Developer Intro to SharePoint Search

• Practice Manager with Intellinet• Microsoft SharePoint Server MVP• Dev and Architect with MS stack since 1996• Working with SharePoint since 2002• Raleigh-Durham, NC Area since 1998

About Me

Page 3: Spsvb   Developer Intro to SharePoint Search

• Search Overview– Review of features and Concepts

• Search Site and Web Parts– Review components of Search and Results pages– Customize Search and Result pages

• Overview of Search API• Possible Solutions

Session Overview

Page 4: Spsvb   Developer Intro to SharePoint Search

SEARCH OVERVIEWDevelopers Introduction to SharePoint Search

Page 5: Spsvb   Developer Intro to SharePoint Search

• Crawling– A scheduled activity that indexes the content, meta-data

and security.

• Index– Processed info– Extremely fast compared to querying source content

Search Overview

Page 6: Spsvb   Developer Intro to SharePoint Search

• Managed Properties– Can be used to query against a specific attribute– 100+ by default, more can be added

– Examples:• Author• ContentType• CreatedBy• LastModifiedTime• DocId• FirstName

Search OverviewManaged Properties

Page 7: Spsvb   Developer Intro to SharePoint Search

• Content Classes– Searches based on Object Type– Great for filtering down the potential resultset

– Examples:• SPSPeople • STS_Site • STS_Web• STS_list_[doccumentlibrary] *• STS_listitem_[documentlibrary] *

* Note name in brackets can be replaced with template name

Search OverviewContent Classes

Page 8: Spsvb   Developer Intro to SharePoint Search

• Query Formatting– Limit – 255 characters– Content Classes - ContentClass:Value– Managed Properties - Property:Value– Logical Operators - AND, OR, NOT, +, -– Relational Operators - <, >, <=, >=, <>– Filename – filename:”name”– File Type – filetype:value– Wildcards – Property:Partial Value

Example: “ContentClass:STS_Web AND Blog” Would return all Webs that have “Blog” in the meta-data.

Search OverviewQuery Formatting

Page 9: Spsvb   Developer Intro to SharePoint Search

• People Search– Queries the attributes in the User Profile store– Used to find individual not content– Similar to content search, but not tied to a specific site

Search OverviewPeople Search

Page 10: Spsvb   Developer Intro to SharePoint Search

SEARCH SITE AND WEB PARTSDevelopers Introduction to SharePoint Search

Page 11: Spsvb   Developer Intro to SharePoint Search

Search Site and Web Parts

Page 12: Spsvb   Developer Intro to SharePoint Search

• All Web Parts from the Search and Results Page are available

• Including:– Paging– Results– Related Queries– Best Bets– Statistics– Summary

Search Site and Web PartsOut of the Box Web Parts

Page 13: Spsvb   Developer Intro to SharePoint Search

• Search Results– XSLT for both Content and People can be fully

customized– Queries can be preset to create dynamically generated

content on sites

Search Site and Web PartsOut of the Box Web Parts

Page 14: Spsvb   Developer Intro to SharePoint Search

• Demo!

Search Site and Web PartsOut of the Box Web Parts

Page 15: Spsvb   Developer Intro to SharePoint Search

SEARCH APIDevelopers Introduction to SharePoint Search

Page 16: Spsvb   Developer Intro to SharePoint Search

• Server– Microsoft.Office.Server.Search.Query

• Foundation– Microsoft.SharePoint.Search.Query

Search APINamespaces

Page 17: Spsvb   Developer Intro to SharePoint Search

• KeywordQuery – Simplified Queries• Property:Value – similar to standard search in UI

Search APIKeywordQuery

Page 18: Spsvb   Developer Intro to SharePoint Search

• FullTextSqlQuery - Supports rich, SQL-like queries• SELECT <columns>

FROM <content source>WHERE <conditions>ORDER BY <columns>

• Conditions– FREETEXT()– CONTAINS()

Search APIFullTextSqlQuery

Page 19: Spsvb   Developer Intro to SharePoint Search

• Example SELECT LastName, FirstName, JobTitle, Title, accountname FROM SCOPE() WHERE (\"scope\" = 'People')

AND CONTAINS(JobTitle, 'Manager') AND NOT CONTAINS(Department, '1099')

– Selects specific fields from people where JobTitle = Manager but does not include ‘1099’ because they are a contractor

Search APIFullTextSqlQuery

Page 20: Spsvb   Developer Intro to SharePoint Search

• Demo!

Search APISearch API Demo

Page 21: Spsvb   Developer Intro to SharePoint Search

USES FOR SEARCHDevelopers Introduction to SharePoint Search

Page 22: Spsvb   Developer Intro to SharePoint Search

• Rich Content Interactions– Interacting with Very Large Lists & Libraries– Listing Department members

• Content Without Site Boundaries– Cross-site navigation with security trimming– Aggregating content

Uses for Search

Page 23: Spsvb   Developer Intro to SharePoint Search

WRAP-UPDevelopers Introduction to SharePoint Search

Page 24: Spsvb   Developer Intro to SharePoint Search

• MSDN SharePoint 2010 Resource Center– http://msdn.microsoft.com/en-us/sharepoint/bb964529.aspx

• Content Classes in SharePoint Search– http://nextconnect.blogspot.com/2010/04/content-classes-in-

sharepoint-search.html

• My Search Blog Posts– http://nextconnect.blogspot.com/search/label/Search

Additional Resources

Page 25: Spsvb   Developer Intro to SharePoint Search

Questions?

Page 26: Spsvb   Developer Intro to SharePoint Search

Contact Info

• Blog - http://nextconnect.blogspot.com• Twitter - @Next_Connect• Email – [email protected]• LinkedIn - http://www.linkedin.com/in/michaeloryszak