Optimizing SharePoint Application Design -
External Data Sources
Ramona Maxwell’s study notes, ©2011 All rights reserved
-
External data is accessed through Business Connectivity Services (BCS). Setting up external data access is a multi-part
process that includes verifying the data source, setting up the connection, creating access, registering the new data store
within Sharepoint Server 2010's indexing system and testing the final output. Prerequisites to setting up SharePoint
Server 2010 (SP2010) to search for external data include access to Central Administration, having an existing site
collection or using SharePoint-80, having access to an installation of SQL Server and a database. The MSDN reference pages
by Bob McLellan suggest keeping each of the applications used in your construct open until the process is complete.
To begin to search for external content types, open Central Administration and navigate to Application Management and
then Web Applications. Under service connections you will need to set up both a search service and a Business Data
Connectivity (BDC) service. The search service has to be compatible with the application you're pulling data from. The BDC
needs a host site set up to hold its profile pages (one profile page for each external data type), without these SP2010
can't link to your search. Place this new site within the relavant site collection and give it a name descriptive of its
purpose but don't display it on the parent site's title bar.
Next configure the BDC service using the URL of your new site collection's host directory. Inside SP2010 Central
Administration navigate to Application Mangagement / Manage service applications and click Business Data under the Name
column. Here you will click Edit and then from the ribbon menu select Configure for the Profile Pages in order to set the
URL for the Profile Pages, allow SetMetadata under the Store permissions, add or verify accounts. Then select Edit,
Execute, Selectable in Clients and Set Permissions boxes and select Propagate Permissions... etc. Detailed explanation and
screenshots of these steps is found in on MSDN in Mr. McLellan's article titled "Configuring SharePoint Server 2010 Search
for External Content Types (Part 1 of 2)."
At this point you are almost to the goal of feeding your data to the search site. Create a new site using the Basic
Search Center template and under Site Actions click Edit in SharePoint Designer. As you create a connection to SQL Server
note the data must be normalized as the search service requires a unique field. Now within Designer click External Content
Types and under the New tab also click External Content Types. Click New and select a name for your external content, then
you will see a summary screen. Here you can select data content types, set permissions, modify field mapping and connect to
data sources in an external system - in the case of Mr. McLellan's example a SQL Server database. Once you connect to SQL
Server you will use the Data Source Explorer to navigate to the data items you wish your search to crawl. Right-click on
your choice and select NeW Read Item Operation to bring up the Read Item dialog box. This dialog box contains tabs for
operation properties as well as input and return parameters. Input will be the column you search on, under Operation
Properties you will select Map To Identifier, then specify what field in your search the item maps to. You can map multiple
data sources to the identifier. Don't forget to save and name it as well as title the page before finalizing your operation
by clicking Create Profile Page.
Back in SharePoint Central Administration you can now configure the search. Under Crawling click Content Sources and
select the search you just configured. Start a full crawl fo the content and allow time for it to finish before testing the
search from the Business Connectivity Services site you previously created. That's it for basic search setup, you can
further customize search operations within SharePoint Designer for instance by modifying the external content or fields.
If you are an administrator for the search service application there are several ways to optimize the crawler to keep
it from creeping through your search, such as editing the URL list directly, excluding complex URLs and setting a priority
order for the URLs searched. These are accessed from SharePoint Central Administration by clicking Service Applications and
then Crawling from the Quick Launch toolbar. Crawled properties (used in the sense of Monopoly rather than attributes) can
be become eligible for 'Refined' searches by becoming 'managed properties'. This process is a form of indexing, but think
of it as being able to cover multiple databases with one index since you can map fields from several data sources to one
managed property.
Return to www.sqlsolver.com