extending the microsoft search server
DESCRIPTION
Enhance your search experience. We provide an overview of Microsoft Search Stack and getting the most out of your Microsoft Search Server Express. You can do more than you think!TRANSCRIPT
DevTeach Toronto 2010By: Bob Brown and James Schwartz, Imason Inc.
Extending Microsoft Search Server
Who are these two goofy guys anyway?
We’re Architects!
5
What will I learn today?• Overview of the Microsoft
Search Stack
• Getting the most out of Microsoft Search Server Express you can do more than you think!
• Enhancing the search experience
Let’s start with the Microsoft Search stack...
Perhaps you enjoy fishing?
Microsoft Search Server Express (MSSx)
• Free and easy!
• No redundancy or scaling out capabilities
• Scales to approximately 300,000 items with SQL Server Express (also free) or approx 10 million items with SQL Server
• ...BUT still lots of opportunity we’ll get to this!
Microsoft Search Server (MSS)
• Same features as MSSx
• Can scale out for redundancy or to increase performance
• Scales to from 10 million items to 100 million depending on the topology
• Increased performance and capacity
• Not free!
Microsoft SharePoint Server 2010• You’ve already made the investment
in SharePoint, take advantage of its search capabilities!
• Includes all the search features available in MSS
• Includes Additional search capabilities over MSS Integration with social networking
features like People Search and My Sites
Managed taxonomy – eg. User generated tags
FAST Search for SharePoint 2010
• Large upfront investment Enterprise CAL required
• Includes all search features in SharePoint Search 2010
• Sophisticated content processing and property extraction
• Richer search experience
FAST Search for SharePoint 2010
Consider using FAST Search if you:
• Require great scalability and performance.
• Require an enriched enterprise search experience with the ability to customize and tune relevancy and navigation.
• Have to crawl different types of internal and external content sources, including large-scale Web content.
• Want to use sophisticated content processing such as property extraction
Top 10 Reasons to use FAST Search
1. Content Processing Pipeline
2. Meta-data Extraction
3. Structured Data Search,
4. “Deep” Refinement (with precise counts)
5. Visual Search
6. Advanced Linguistics
7. Visual Best Bets
8. Extensive Development Platform
9. Context Based Search (custom based search experience based on user or
profile)
10. Extensive Scaling
11. Performance capabilities
Why would I suggest MSSx to my boss?
Maybe your boss is poor...
... or just frugal
Sure it has its
limitations...
...but it can do more than you think
What if we already have MOSS 2007?
MSSx Technical Capabilities
SQLSQL
Search Platform
Data Sources
FileShareFileShare
WebSiteWebSite
Content SourcesContent Sources
Search Center
SharePointSharePoint
Web request (GET)
Web request (GET)
ExchangePublicFolder
ExchangePublicFolder
Search Center Results
Demo 1: Searching Customers & Products with MSSx
SQLSQL
Search Platform
Data Sources
FileShareFileShare
WebSiteWebSite
Content SourcesContent Sources
Search CenterSearch Center
SharePointSharePoint
Web request (GET)
Web request (GET)
ExchangePublicFolder
ExchangePublicFolder
CustomData
Source
CustomData
Source
XMLXML
Microsoft Search ServerMicrosoft Search Server
XML Crawling ProxyXML Crawling Proxy
ASP.NET Web Application
Details ASPX pageDetails ASPX page Crawler IndexCrawler Index
QueryQuery
Adventure-Works
Database
XML OutputXML Output
DatabaseRecords
DatabaseRecords crawls
Listing ASPX pageListing ASPX page
Search Results PageSearch Results Page
Search Applications
Search Applications
queries
How we did it...
CustomersCustomers
ProductsProducts
EmployeesEmployees
XML iFilterXML iFilter
Out of the box XML iFilter will identify one-level deep nodes as crawled properties
new crawled propertySharePoint:customer/address(Text)
new crawled propertySharePoint:customer/address(Text)
The XML iFilter: the key ingredient
nodes two levels deep and lower are searchable, but cannot be defined as crawled properties
name and location
nodes will not be able to be mapped to managed properties unless moved to child of root
name and location
nodes will not be able to be mapped to managed properties unless moved to child of root
Demo 2: Setting up Employees from scratch
Microsoft Search ServerMicrosoft Search Server
XML Crawling ProxyXML Crawling Proxy
ASP.NET Web Application
Details ASPX pageDetails ASPX page Crawler IndexCrawler Index
QueryQuery
Adventure-Works
Database
XML OutputXML Output
DatabaseRecords
DatabaseRecords crawls
Listing ASPX pageListing ASPX page
Search Results PageSearch Results Page
Search Applications
Search Applications
queries
Recapping...
CustomersCustomers
ProductsProducts
EmployeesEmployees
XML iFilterXML iFilter
SQLSQL
Search PlatformSearch Center
Search as a service
Web ServicesWeb Services
XML Crawling ProxyXML Crawling Proxy
Any Data Source
Any Data Source
file share or web sitefile share or web site
Custom applicationCustom application
Gotchas
• XML iFilter and Windows 2008 SP2 and R2 Workaround: replace the iFilter
• 16 MB limit on crawled pages Workaround: split up the pages
• Property node value limits, 255 character limit Workaround: use XML attribute values
Questions? Comments? Insults?
Helpful Links
• Microsoft Search Server Express Download: 2008:
http://www.microsoft.com/enterprisesearch/en/us/search-server-express.aspx
2010 Beta 2: http://www.microsoft.com/downloads/details.aspx?FamilyID=dfd0cfac-f52c-4c02-a972-0e4f1c4e7977&displaylang=en
• Codeplex Search Community Toolkit http://sct.codeplex.com (look for Search Service Tool, Relevancy Tool,
ASP.Net Server Controls)
Thanks for Attending!
[email protected]@imason.com