osp311. © copyright ba insight page 3 about the speaker: jeff fried

51
Building Search-Driven Applications with Microsoft FAST Search Server 2010 for SharePoint Jeff Fried CTO & VP Engineering BA Insight OSP311

Upload: emily-casey

Post on 10-Jan-2016

215 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Building Search-Driven Applications with Microsoft FAST Search Server 2010 for SharePointJeff FriedCTO & VP EngineeringBA Insight

OSP311

Page 2: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried
Page 3: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

 

© Copyright BA Insight Page 3

About The Speaker: Jeff Fried

CTO, BA InsightPreviously VP Advanced Solutions for FAST, then Microsoft technical product manager for FAST and SharePoint 2010 Search

AuthorProfessional Microsoft SearchProfessional SharePoint 2010 Development

Blog:http://www.ba-insight.net/Blogs/Sharepoint-Search-Expert/default.aspx

Twitter:http://twitter.com/jefffried

Based in Boston, MA, USA

Page 4: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Outline

Search-Based Applications are found everywhere

FAST Search for SharePoint and SharePoint 2010 provide a great platform and ecosystem

Custom and Packaged Search Applications are possible in ways they never were before

Page 5: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Case Study: Pharma R&D

R&D researched where it was spending its time, and discovered

56% of R&D time (human capital and budget) spent:

Duplicating existing research

It blew them away, until they reviewed why…

Page 6: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Top 3 reasons for 56% effort duplication:

1) Research done in separate groups• Seemingly unrelated research projects• Later in lifecycle (mfg, reg/test)

2) Data not accessible• Isolated content source• Restricted / limited access• Source not searchable• Special knowledge required

3) Data not linked• Various names/changes leave data disconnected• People not connected to data (experts)• Data managed in many unconnected systems

Page 7: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Case Study: Pharma R&D

1. Documentum Image2. SharePoint Doc3. Regulatory Record4. MEDLINE article

Multiple Sources One Search

Search: amgen 655

Relationships Discovered:Antibodies: mAbReceptors: DR5, IGF-1RLabs: Oncology 1People: David Chang

Page 8: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Recognizing Search Driven ApplicationsThey are everywhere

“How do I support theunique search needs of teams

and work that impact our business?”

To do so, you need a search platform that has• A deep understanding of your

information• Flexible relevance to meet

diverse needs• A customizable UX to increase

user efficiency

Sales: 360o Customer Insight

Services: Knowledge Browser

Marketing: Competitive Intelligence

Research & Development:Innovation Portal

Support:Call Center Advisor

Operations:Systems/Logistics Portal

Legal, HR, IT, Finance, ……

Page 9: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried
Page 10: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried
Page 11: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried
Page 12: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried
Page 13: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Search-Based Applications

Research Portal Unified View Customer Service Compliance

Analyst’s workbenchManagement AdviserInnovation Center

Voice of the CustomerLogistics CenterConsolidated Dashboard

Call CenterOnline ServiceSales Dashboard

Fraud CenterE-DiscoveryInfo Governance

Search Based Applications are found in every industry and every functionTraditionally, search vendors describe these as possibilities using their platforms;

but implementation costs have been >$1M

Packaged apps are now possible, leveraging the SharePoint ecosystem

Page 14: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

demo

Search Driven Application

Contoso Consulting Demo

Page 15: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

How would you create this?Content Crawling: bring in data from lots of places

OOB connectors to SharePoint (reports, account documents), shared files; CMS systems across multiple divisions of contoso

Crawl web intelligently for background content

Content processing: creating metadata

Names of projects, offerings, key concepts, clients, external experts

Industry terms & taxonomy (from external sources)

Synonyms for key concepts

OOB web parts configured for style

Federation, People Search, Search actions, Scopes

Custom Relevance Profile

Custom web parts for visual navigation Tab-like selectors, sliders, maps, and taxonomy-aware refiners

Build PowerPoint on the Fly Custom development using the OpenXML SDK

SharePoint workflows for act-on-selected-items

Page 16: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Federa

tion O

penSearc

hContent

Processor CrawlerIndexerQuery Processor

Search Center

Content

User Profiles

Fo

rma

tC

on

ve

rsio

n

La

ng

ua

ge

Det

ec

tio

n

En

tity

Ext

rac

tio

n

Le

mm

ati

zati

on

Ma

pp

er

Content Processing Pipeline

People

Searc

h

Index Partition

MetadataCreation

RelevanceControl

UserContext

IndexingConnectivity

User Experience

Federation

FAST Search for SharePointDesigned for Customization

Page 17: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

FAST Search for SharePoint UI OOB

Built on SharePoint Search CenterOpen Web Parts, Federation, query suggestions, related queries, Did you mean?

Visual results Thumbnails for Word and PowerPointVisual Best BetsPreview in browser

Deep Federation

Thumbnails

Previews

Sorting

Page 18: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

What can I do with a Managed Property?Metadata quality is critical to a good search experience

Precise hit counts in deep refiners are computed across

the whole result set.

And many more…

Concepts

Products

Companies

File Formats ,

Metadata is also used for relevancy tuning, multi-level sorting and advanced search

Enables deep refinementMakes search conversational, guiding users to navigate and refine, while summarizing the results that are found

Enables precision relevancyManaged properties are also used for relevancy tuning & ranking, multi-level sorting, advanced (or fielded) search

Page 19: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

PowerShell

$crawledProps = Get-FASTSearchMetadataCrawledProperty -Name “crawled1”

$mp = New-FASTSearchMetadataManagedProperty -Name “managed1” -type $dataType

New-FASTSearchMetadataCrawledPropertyMapping -ManagedProperty $mp -CrawledProperty $crawled

Page 20: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

TechNet Script Repository

Page 21: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Introducing the Processing Pipeline

Sequential stages perform specific tasks while ingesting contentBreaks down content to the smallest addressable chunks to build meaningUnderstands file encoding, data formats, and written languages Supports 400+ file formats, 80+ languages

Process your content to make it searchableNormalizes content so that a consistent relevancy model can be appliedIdentifies structured and unstructured metadata in your contentMaps document metadata to SharePoint Crawled Properties

A systematic approach to interpreting your content

Map Crawled Properties

Maps all of the metadata that was discovered by the various pipeline stages Web Link Analysis Analyzes documents for hyperlinks extracting anchor text which reinforces the authority ranking of a document.

Document Vector Creates a unique representation of a document that reflects important terms and frequency of occurrence. Used to find similar documents.

Date and Time Normalization

Converts dates and times to a standard representation, to handle locale specific representations. For example, knows that 14-Mar-10 is equivalent March 14, 2010.

Entity Extraction Finds terms in the content and maps them to predefined categories. Out of the box support for People, Companies and Locations, but can be extended to any category.

Lemmatization Finds the root of a word for a given language. For English it maps run, runs, running and ran back to a single lemma. Understands language specific grammar and context.

Tokenization Apply the language specific rules for identifying words, concepts, idioms and phrases. Also applies custom word breakers found in part numbers or telephone numbers.

Language Encoding and Detection

Identifies the native written language and locale specific encoding so that the proper dictionaries can be used by the tokenization and lemmatization stages

Format Conversion Extracts plain text from multiple file formats, encodings, and applications

Page 22: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Extending Pipeline capabilities

Configure Optional Processing StepsXML Properties mapperOffensive Content FilterVerbatim (wholeword) extractor

Use a dictionary for custom extraction

Pipeline ExtensibilityCalls external applications for custom item processing

Field CollapsingEntity Extraction

Straightforward way to add custom text analysis functionality

Add Custom ProcessingPipeline Extensibility is a specially defined stage that takes a set of crawled properties, as flat text as input and maps output to another crawled property

Sandboxed executionExecutable arguments and temporary files are automatically handled with timeouts.Runs just before the Crawled Property Mapper, providing accessibility within SharePoint

Page 23: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

DEMO: Pipeline Extensibility

ConfigurationLogging and generating test dataDebuggingUseful included FAST tools

ExtensibilityMapperStandard

processing

Let’s make easier

Page 24: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Pipeline Extensibility example

PurposeCreate a new property based on value of an existing propertyEnable searching for a value being empty

ImplementationGet value of ows_ContentType using Linq for XMLSet new property mycontentcheck to either

hascontenttypenocontenttype

Page 25: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Tune RelevancyImprove accuracy and control with Rank Profiles

Quality Also known as static rank, consists of multiple managed properties including site, URL depth (preference for shorter URLs), and relative importance of links to this document.

Authority Rank given when the query word falls in the link or anchor text.

Query Authority Rank given when the query word falls within items that have been selected in previously executed queries.

Freshness Rank given for new content, based on last modified parameter.

Proximity Rank given depending on where query terms fall and how close they are to each other within a document

Context Rank given depending on where a query term falls. If the query term falls within a managed property, it is given an additional boost.

Field Boosts Any managed property can be used for an additional boost.

Rank Profiles are exposed by modifying the sorting web part.

Rank Profiles are made by combining multiple ranking elementsCreate custom ranking algorithms to combine multiple ranking properties

Rank Profiles created in PowerShell

Page 26: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

demo

FAST Search for SharePoint

Platform Capabilities

Page 27: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Microsoft SharePoint 2010The Business Collaboration Platform for the Enterprise and the Internet

Deliver the Best Productivity Experience

Cut Costs with a Unified Infrastructure

Rapidly Respond to Business Needs

Communities

Search

Sites

Composites

ContentInsights

Page 28: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

SharePoint as an Application Platform

Differentiated applications

Rich tools and platform

services

Manageable applications

Thriving ecosystem

Page 29: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Application LifecycleDeveloper Machine

Development

TestingF

5 D

eplo

y

Team Foundation Server

Check In

Staging

Automated Testing

Warm-Blooded User Testing

TFS Build Server

SharePoint Projects

SP2010 DLL’s

Build

Run Tests?

Fix Bugs (repeat as necessary)

NightlyBuildorContinuous Integration

Deploy Using PowerShell

Open/Close Bugs

WSP

Page 30: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Customizing Search

Configure Extend Create

Intranet SearchPeople Search

Site Search

Research PortalCase Management

Save Results to Excel file…..

IP Portfolio mgmtIntel/SurveillanceDrug Discovery

….

Page 31: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

“Out of the Box” Search ExperienceA powerful baseline for customization

Refinement summarizes and narrows resultsQuery federation brings together results(FAST) Previews provide rich interactionQuery Suggestions guide user keywords(FAST) User Context provides a personal experience

Page 32: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Top Customization Scenarios

Modify the OOB End User Experience Add new Refinement category Show results from federated location Modify the look and feel of OOB end user

experience Enable sorting by custom metadata Add visual Best Bet for upcoming sales

event Configure different ranking for HR vs.

Engineering department

Create a new Search Verticals

Create new visual elements

Query & Result Pipeline Plug-ins

Query & Indexing Shims

Create new Search Driven Applications

Create new customer search experience Indexing content Define content for search Design search experience

Create new Audio/Video/Image search experience

Show Location refinement on Chart/Maps Show tags in tag cloud Enable export results to Spread Sheet Summarize Financial Information from

customers in Graphs Expand query terms based on synonyms

defined in Term Store Augment customer results with project

information Show popular customers/people inline with

search results Show people results from other sources

Show email results from personal mailbox on Exchange Server through the EWS

Index content from custom repositories like Documentum

Create content processing plug-ins to create new metadata

create a new customer page that shows: Customer Contact Details Customer Project Details Customer Contacts Internal Experts Customer related documents

Page 33: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Search 2010 ArchitectureThe platform for Search Customization

SearchWeb Parts

SharePoint Search Index

OpenSearch /Custom Source

SharePoint Indexer

Federation OM Web Service, RSS

FASTSearch Index

FAST Indexer

What’s New in 2010?Primary Search Web Parts now UnsealedFederation now a key Public OM layer

All Web Parts built on federationQuery alteration, custom Runtimes, blending results from multiple sources

Web Service / RSS Enhancements

FAST Search / SharePoint Search:Shared Web Parts, RSS, Web ServiceShared Federation OMIndex and Crawling SeparateFAST unique Content Processing Pipeline

SearchWeb Parts

Federation / Query OM Web Service, RSS

Content Processing

Page 34: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried
Page 35: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Example: Legal Application

Attorneys spend too much time looking for information and assessing the relevancy of search results

• Must download entire document and conduct manual review to determine relevancy

• No way to internally search documents & items

• Excessive burden to network resources for geo-distributed offices

• No way to quickly review, annotate , compile, and reuse relevant information

Page 36: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Longitude Search

Packaged Application

demo

Page 37: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried
Page 38: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Search: Find and Explore

Penicillin

LSD

Uranus

Viagra

Safety glass

Infrared radiation

Microwave ovens

Inkjet printers

Corn Flakes

Chocolate chip cookies

Page 39: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Research Portal example

Similar Patterns across IndustriesComponent-based

Example Mockup

Dictionaries/Taxonomies3rd party contentWorkflowUI (Complete)File types (preview/assembly)App IntegrationConnectorsFederationContent CorrelationMobileMultiMedia ClassificationApp IntegrationUI (Web Parts & Templates)WorkflowAnalytics/BIAgent/AlertingExpertise Build/FindAssociative SearchAssemblyPreviewCore Connectors

Vertical / 

MicroVertical

 Components                                                                       

(also available seperately)

Search Platform

SharePoint                                       (Content, UI, Workflow, BI, Social, …)

Page 40: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Multiple Search Centers

Page 41: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

The Search Platform Concept Content Integration to enable applications

Legacy Data RDBMS, Sharepoint, Salesforce

Portals RSS Feeds,Data Streams

DMS, CMS, FilesApplications Email Rich Media XML Internet

FAST Search PlatformSharePoint 2010

Information Integration

Site Search; Transactions;

Media Content

Intranet Search; Knowledge Management; CRM; Fraud Detection; Risk & Compliance

Longitude Connectors

Customer Facing Apps Enterprise-Facing AppsSOA-enabled

Services

Page 42: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Search-Based Applications

Research Portal Unified View Customer Service Compliance

Analyst’s workbenchManagement AdviserInnovation Center

Voice of the CustomerLogistics CenterConsolidated Dashboard

Call CenterOnline ServiceSales Dashboard

Fraud CenterE-DiscoveryInfo Governance

Search Based Applications are found in every industry and every functionTraditionally, search vendors describe these as possibilities using their platforms;

but implementation costs have been >$1M

Packaged apps are now possible, leveraging the SharePoint ecosystem

Page 43: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried
Page 44: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Tips for successful FAST projects

Start early with OOB experienceStand up FAST, show it to users

Keep an active staging systemFull scale, with production contentSearch exposes/’audits’ security issues!

Grow incrementally & continuallyAdditional content sourcesDesign and feature changes and additionsContent grooming / gardeningUse regular rhythm to debug/tune

Don’t be afraid to customizeBuy what you can, build what you can’t

Establish success early, build onMany search apps will emerge

Page 45: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Outline

Search-Based Applications are found everywhere

FAST Search for SharePoint and SharePoint 2010 provide a great platform and ecosystem

Custom and Packaged Search Applications are possible in ways they never were before

Page 47: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

DEV Track Resources

http://www.microsoft.com/visualstudio http://www.microsoft.com/visualstudio/en-us/lightswitch http://www.microsoft.com/expression/http://blogs.msdn.com/b/somasegar/http://blogs.msdn.com/b/bharry/http://www.microsoft.com/sqlserver/en/us/default.aspxhttp://www.facebook.com/visualstudio

Page 48: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Resources

www.microsoft.com/teched

Sessions On-Demand & Community Microsoft Certification & Training Resources

Resources for IT Professionals Resources for Developers

www.microsoft.com/learning

http://microsoft.com/technet http://microsoft.com/msdn

Learning

http://northamerica.msteched.com

Connect. Share. Discuss.

Page 49: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Complete an evaluation on CommNet and enter to win!

Page 50: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

Scan the Tag to evaluate this session now on myTech•Ed Mobile

Page 51: OSP311. © Copyright BA Insight Page 3 About The Speaker: Jeff Fried

© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to

be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS

PRESENTATION.