All about SharePoint best practice... ask me how
Search Deployment Guidance - Part 3 with notes from the SharePoint UG session [ Posted on: 29-May-2008 ]

In the previous two posts in this series I showed some ideas and thoughts on how to approach your SharePoint Search deployment. This third post is a wrap up as well as some external resources including training videos previously published on the Search TechCenter site on TechNet.

Read the previous two posts in this series.

SharePoint Search Deployment Guidance (Part 1)

SharePoint Search Deployment Guidance (Part 2)

In my last post I mentioned about the Search indexing component in MOSS. This Search Architecture white paper available from Microsoft (MS Word) provides details on how the Indexing Architecture works. In summary the two core core components of a Search solution are as follows.

Indexing Engine

The indexing component is capable of crawling and indexing a variety of content sources. It uses protocol handlers to connect and traverse the source systems and restive the system level meta-data. When it identifies content it will invoke known iFilters to read those content. (Example: SharePoint for Search requires the PDF iFilter to retrieve PDF content).

The indexing engine maintains a file-based index, which contains the indexed content and also maintains managed properties also known as the property store or search schema with scope definitions in the search and configuration databases managed by SQL Server.

Query Engine

Queries are initiated when a user enters a search term and the term is passed by the query server to the query engine. The query engine then searches the full-text index for items that contain the searched-for terms. The end user results are supplemented with keywords, best-bets, and managed properties from the search configuration database, managed by SQL Server. Queries are initiated through the Search object model or the Search Web service on Web servers. So as a developer you can also create your own Search implementation using the object model.

The following articles are available for Developers.

Visual How-to guides and screen casts.

Search Architecture

In a server deployment you should also understand the different components that make up your Search solution. Depending on the number of content sources and the size of your organisations the server roles within your Search solution may have significant impact on how you architect a solution to provide a robust search implementation.

The following are server roles that you need to take into consideration.

  • Indexing Server - The indexer role provides the indexing services, such as crawling content, managing crawl schedules, and defining crawl rules.
  • Query Server - The query server role runs queries over the full-text index. Query servers are managed at the farm level in your deployment.
  • Web Server - The Web server role responds to search queries for users and applications. The Web server collects query terms from the user and contacts the query and database server to create a result set.
  • Database server - The database server role performs search-specific actions that apply at configuration, indexing, and query time the database server also stores data that is retrieved from the crawl processes. Specifically, when managed property values and access control lists are retrieved from content sources, their values are stored in the search database.

Within these you can consolidate all of these on a single server but the recommendation is to have these separated or combined to at least two or more servers. For example you can have one server for Index and Query. (Query role is the server that takes the search requests and has a copy of the propagated index). But in a high availability scenario you should always look to splitting these roles. If you physically separate the query server role from the indexer onto one or more servers, then the full-text index is propagated from the indexer to all query servers your farm.

More guidance on this is available on Joel Oleson's blog. SharePoint Farm Topology for Search Index and Query.

Planning for high availability - SharePoint TechNet Article

Search Community Toolkit and Faceted Search

searchcomv2 Through community driven development to enhance the Search user experience the following utilities are available through the CodePlex Search Community Toolkit site. One of the most talked about solutions is the Faceted Search solution ( http://www.codeplex.com/FacetedSearch) which provides facet based category search for your standard SharePoint deployment. It should be noted though that you should test these out as part of your deployment well before you implement these.

For administrators who are managing a SharePoint deployment tools such as the Search Crawl log exporter (http://www.codeplex.com/ExportCrawlLog) provides the ability to move and monitor crawl logs to find summary information about crawls.

The Search relevancy tool adds the capability to set higher relevancy for specific results in your organisation. This is handy and the tool will allow you to change the weighting and normalization of Managed properties and some of the system level relevancy settings. (http://www.codeplex.com/searchrelevancy)

With the inclusion of these Search solutions you can also take ownership of the source and build and customise to your requirements.

Search Videos from Microsoft

If you want to learn in-depth about Search the following video training series is available for download.

The following 14 recorded presentations are based on training modules from three-day, in-person training sessions. The presentations provide details about key enterprise search capabilities in Microsoft Office SharePoint Server 2007. Additionally, the presentations provide guidance about how to combine SharePoint products and technologies in order to build, implement, and manage enterprise search solutions.

Slides from the User Group Presentation

The presentation "Making the Most of Search in SharePoint (Zip 1MB)" which used for the UG is available for download as a PDF file.

Posted by Chandima Kulathilake | 0 Comments | Bookmark with:        
Tags: Administration, Deployment, Development, SharePoint 2007, Planning, User Group