Searching Business Data with MOSS 2007 Enterprise Search

Report
Searching Business Data with
MOSS 2007 Enterprise Search
Presenter: Corey Roth
Enterprise Consultant
Stonebridge
Blog: www.dotnetmafia.com
Corey Roth







Consultant for Stonebridge
Worked in Consumer Electronics, Travel, Advertising,
and Energy industries
Currently doing MOSS development specializing in
Enterprise Search
OSU Graduate
Microsoft Award for Customer Excellence (ACE)
Winner
E-mail: [email protected]
Blog: www.dotnetmafia.com
Why Enterprise Search?





Allows indexing surfacing of business data from
multiple systems with little or no code.
Through Business Data Connector (BDC) can index
non-SharePoint applications
BDC can index data in SQL Server, via Web
Services, and other database providers
Can also be used to index Active Directory (People
Search)
Designed to search text – Other data types can work
but there are limitations
Business Data Connector
Abstraction Layer between MOSS and
Business Applications



Provides support for displaying and
searching data from databases and web
services
Designed for Readonly access
Inserts/Updates/Deletes are possible but
there are limitations
Security


Security is required for the following
accounts
Domain Accounts are recommended




Content Access – Defined in Search Settings;
Needs read access to database table; Needs BDC
Execute permission
Shared Service Provider Account – Used for
profile pages; Needs BDC Execute/Select in
Clients permission
Administrators – Specify an account with full
control or you will run into issues
End Users – Need BDC Execute/Select in Clients
permission
Steps
1.
2.
3.
4.
5.
6.
7.
Create MetaData Model for Business
Application
Import MetaData
Create Content Source
Crawl Business Data
Create Managed Properties and map them to
Crawled Properties
Crawl Business Data (Again)
Create Search Scope
BDC Metadata Model




XML file which maps entities from databases
or web services to the BDC
Defines default actions when a search result
is clicked
Requires a unique id in the data source
Three types of methods



Get – Returns all records from a table or view
Details - Returns details for a specific record
IDEnumerator – Used by Enterprise Search to
determine rows to index
BDC Metadata Model




Version Number – Increment every time you import
during development
LobSystemInstance element
 AuthenticationMode – ReverToSelf
AccessControlList element – Specifies Security (can
also do through SSP)
Action element – Sets a default action
BDC Tools




Tools can be useful for generating XML
MetaData schema
Office SharePoint Server SDK
BDC Meta Man
Many Others Available Now
Start Small



Crawls over entire tables can take a long
time
Avoid crawling full tables when testing
Modify Schema file to crawl partial tables

i.e.: SELECT TOP 50…
Demo
Content Sources



Content Sources can map to one or more
BDC Application Definition
Used to start and stop content crawls
Typically map one application definition to
one content source
Crawling



Uses IDEnumerator method to get list of
rows to import.
Calls SpecificFinder method for each Id
returned by IDEnumerator
Stored columns from table or web service as
crawled properties
Demo
Managed Properties




Out of the box, a search will do a full-text
search on all text properties
Can be used to create advanced search
pages
After first crawl, all text properties are
available as crawled properties
Map crawled properties to managed
properties for more specific searches
Demo
Scopes




Scopes are used to specify different types of
content to search (i.e.: Products, People,
Sales, etc.)
Scopes can be defined by Content Source or
Managed Property
Typically map to a Content Source to make it
easier to test application definitions
Can be displayed in drop down lists in
conjunction with the SearchBox web part
Search Center




Out of the box site and web parts for
searching and displaying results
Can be created using the Site Settings menu
on the root web site by enabled certain
features
Supports keyword search only (no wildcard)
For wildcard search consider a Search
Center Replacement such as Ontolica
Keyword Syntax





Used to Search by Managed Properties
Can Specify Scopes (Scope:”MyScope”)
Can be passed via URL to CoreResultsWebPart (k
Query String parameter)
AND implied between each keyword (i.e.:
Color:”Red” Size:”M” is the same Color=“Red” AND
Size=“M”)
OR implied when multiple keywords of the same
managed property used (i.e.: Color:”Red”
Color:”Blue” translates to Color=“Red” OR
Color=“Blue”)
Search Center
Features Required

Site Collection Features



Office SharePoint Server Enterprise Site Collection
features – BDC Web Parts
Office SharePoint Server Search Web Parts – Enterprise
Search Web Parts
Site Features (Root)

Office SharePoint Server Publishing – Adds Create Site
menu item and publishing features
Search Center
Web Parts





SearchBox
CoreResultsWebPart
BestBets
Paging
AdvancedSearch
Search Center
Customization




CoreResultsWebPart displays search results
Columns property – XML specifying
Managed Properties
XSL – Transform the HTML output of the
search results
Column names are specified in lower case in
XSL (i.e.: Color will be color)
Deployment and Migration


MOSS has no built in way to move
Enterprise Search settings!
SharePoint Shared Services Provider
Creation (SSSPPC) can help (see blog
for more info)
References
Office SharePoint Server SDK
http://msdn2.microsoft.com/en-us/library/ms550992.aspx
Faceted Search Web Parts
http://www.codeplex.com/FacetedSearch
SharePoint Shared Services Provider Creation
http://www.codeplex.com/SSSPPC
BDC Meta Man
http://www.bdcmetaman.com
Ontolica
http://www.ontolica.com
Questions?
Thanks
Corey Roth
[email protected]
www.dotnetmafia.com

similar documents