• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
TechDays11 Geneva - Going Further with SharePoint 2010 Search
 

TechDays11 Geneva - Going Further with SharePoint 2010 Search

on

  • 1,474 views

 

Statistics

Views

Total Views
1,474
Views on SlideShare
1,474
Embed Views
0

Actions

Likes
0
Downloads
9
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • domaine
  • versions
  • La fonction «Search» est constituéd’un certain nombre de composants pouvant être déployés sur plusieurs serveurs permettant ainsi de gérer scalabilité et les performance du search. Ces composants sont le Query engin, l’engine d’Indexation, et le «Analyseur»(ou Crawler). Ils peuvent tourner sur un ou -n système selon la topologie de la ferme (aujourd’hui configurable a travers la Console Administration ou même avec PowerShell). SharePoint 2007 proposé déjà le partage des composants d’analyse (autrement dit les «Crawlers») a travers les WebFront End. Par contre le server d’indexation données, restait toujours une des cause de pénalisation des performance de votre ferme. Alors, une nouveauté dans Sharepoint 2010 (apparemment disponibles que dans SharePoint Server 2010 mais pas dans FAST!!), les composants d’Indexation peuvent être partitionnés pour éviter les problèmes de performance lié à la taille de ceux-ci. Pour construire les index, le crawler va balayer toutes les sources de données configurées au travers du connecteur approprié. Les connecteurs peuvent se connecter à toutes source de données, notamment les sites Sharepoint, des répertoires partagés, des site internet, des bases de données, et moyennant le développement de connecteurs custom toute forme de système.Query consists of components which can be scaled out among multiple servers to improve performance. When a search is performed by a user, the WFE which servesthe request uses the associated search service application proxy to connect to a server running the Query and Site Settings Service also known as the Query Processor.  It uses WCF for this communication. The QP will connect to the following components to gather results merges\\security trims and return results back to WFE:Property Store DB – holds metadata\\properties of indexed contentSearch Admin DB – holds Security Descriptors\\Configuration dataQuery Component - holds entire index or partition of an indexThe Query Processor will send request towards the Query Components that are active, but if all active Query Components are down, then Query Processor will submit requests to Query Components flagged as fail over.  Query components (marked as Engine in the photo) are responsible for serving search queries(runs under MSSearch.exe). A query component is mapped to only one Property Store DB. In previous builds of SharePoint, every query server stored the entire index.   While this achieved fault tolerance it didn’t help with performance.There is a direct correlation between the size of an index and query latency.  The size of an index can easily become a bottleneck for query performance.   For Example:Index contains 10 million documents =  Average of 2 seconds per queryIndex contains 20 million documents = Average of 4 seconds per queryThis problem has been solved in SharePoint 2010.   Index partition can contain the entire index or a portion of the index.  By creating additional query components, a new index partition is created and owns a portion of the index.  Index Partitioning (new in SharePoint 2010)By partitioning large indexes, query times are reduced and a solution to this type of bottleneck can be solved.   Partitioning an index is as simple as provisioning new Query Components from the Search Application Topology section in Central Administrator.For Example:If the entire index is 8 GB and contains 20 million documents:Holds 50%: 4GB of index\\10 million documents:  Query Server 1 - Index Partition 1    Holds 50%: 4GB of index\\10 million documents:  Query Server 2 - Index Partition 2Query Component and Property Store DBQuery server= Query Component.  A Query Server is a server that runs one or more Query Components. These servers hold a full or partial of the search index.  Query Servers are now the sole owner of storing the index on the file system.  The indexer crawls content and builds a temporary index and then propagates portions of the temporary index over to Query Server to be indexed. Query Servers contain a copy of the entire or partial index referred to as an Index Partition (new in SharePoint 2010).  Query components run under the context of an Index partition.   SharePoint 2010 uses now multiple databases only for the Search (e.g. Property Store DB and Crawl DB). Splitting into many leads to reduction in overall Database size and performance improvement
  • Avant même de lancer la première requête pour une recherche il faut tout d’abord (supposant que le planning de l’architecture de la recherche a été déjà bien finalisé et que il y a au moins un Search Service Application créée et configurer) rendre le contenu disponible. Ca signifie passer quelque étapes notamment:Création de Content Sources. Une “Content Source” représente le data store a crawler et indexer pour le mètre a disposition pour la recherche. Création d’un « Search Center »  (ou plusieurs) - un Search Center ce n’est que un Template de site comme les autres avec certain composants (comme des pages et web parts) préconfigurées. Au niveau de collection de site normalement il faut après le configurer dans «  Search Settings». Optionnel, il faut configurer Best Bets & Keywords pour rediriger les utilisateurs vers les site plus autoritaire.Création des search Scopes. Les search scopes permet de raffiner les résultats afin de améliorer pas seulement la performance serveur, en réduisant les résultats retournées, mais aussi l’experience utilisateur en lui proposant les resultats dans le contexte de sa requete. (Describehere how wedidapplythis for our Image search by using CONTENTCLASS)Les Search Scopes peuvent etredefinis au plusieurs niveaux, par consequenceells:SharedSearch Scopes – une fois definis seront disponible a travers toute la fermeSite Search Scopes – visible a l’usage que pour une collection de sitesContextualSearch Scopes – liée au endroit ou l’utilisateur se trouve sur le site au moment de lancement de la recherche – par exemple au niveau “This List” ou “This Site” – automatique, peuvent pas etre configuréPar defaut, les atributs (collones) de chaque CT sont automatiquement analysé (ou “crawlées”) etant possible des les utiliser soit dans les affineurs personnalisées ou pour encore filtrer les résultats soit dans ses web parts. Ces atributs seront grouppées en les mappant vers “ManagedProperties” qui seront que apres ca utilisable sur les sites et web parts.Optionellement ou peut faire de la fédération de contenu en definisant de locations federées mais ceci nous allons decouvrir en fin de session
  • The SharePoint platform includes many built-in Web Parts that you can include in your solution, and provides many more components that you can use in Web Parts that you developCore Search ExperienceSharePoint Server 2010 and Search Server 2010 Express include a new feature for search called Search Suggestions. Search suggestions are listing below the search box that suggests search terms while you are typing your search query. They have been around for a few years in sites like www.bing.com and are now integrated into SharePoint 2010. Suggestions are automatically built based on what search results are actually clicked on. It takes 6 clicks within a year for SharePoint to add a suggestion; if an administrator needs to add a suggestion manually this can be done using the SharePoint 2010 Management Shell (PowerShell).Improved Query Syntax.One of the most common complaints about SharePoint search in MOSS 2007 was the inability to use Wildcards and Boolean Operators when performing search queries.  Both of these capabilities were supported by the search API but required either custom code or 3rd Party Search Utilities to take advantage of this. The good news is that SharePoint 2010 now supports both Wildcards and Boolean Operators when performing search queries! Wildcards enables query as such share* which would yield results havingkeywords that started with “share” or Property based query syntax and return all results that started with John: Author:John*Boolean OperatorsSharePoint 2010 Search now also supports Boolean Operators.  This means that you can now use things like “AND”, “OR”, parenthesis, =, >, =  Here’s an example of the type of query you could run using the new syntax:(“SharePoint Search” OR “Bing”) AND (title:”Keyword syntax” OR title:”Query Syntax”).Boolean Operators have been around for a while but are usually only used by search power users. While wildcard searches allow users to do very broad searches, Boolean Operators allow users to do very specific searches so they can quickly find the results they are looking for that meet their search criteria.Out of the box refinement panel ( Panneau d’affinement)La page des résultats de la recherche inclut un panneau d’affinement, qui fournit permet aux utilisateurs de filtrer rapidement afin de mieux comprendre et localiser les résultats (par exemple selon tout type de contenu (document, tableur, présentation, page Web, etc.), emplacement de contenu (comme les sites SharePoint), créateur du contenu ou la date de dernière modification. L’utilisateur peut également filtrer par catégorie selon les propriétés managées ou les nœuds de taxonomie). Un résumé peut aussi indiquer qu’il existe essentiellement des documents Microsoft Word dans les 50 premiers résultats de la recherche, suivis d’un certain nombre de documents Microsoft Excel. D’ailleurs le Compteur de resultats c’est facilement rajouter a cote de chaque filtre identifié juste en spécifiant un paramètre dans le XML de configuration.When Extending there are 2 types:Value Mapping: This can be a set of values that are to be matched. For example we can have certain Continents that include a countries. Then we can create filters that contain multiple countries linked to continents. In the Refinement Panel a user can click on Europe and get a set of results that includes Germany, France, England and other European CountriesRange Value: A range value can be applied to metadata that are either Dates, Numerics or Strings. This allows you to create categorization that finds items that fall into a specific range. For example lets assume that we have projects with different budgets, we can create a range refiner that will find items that fall into these budget bounds for instance.
  • Améliorations apportées à la pertinence des résultats de recherche SharePoint Server 2010 apporte des améliorations à la pertinence et l’utilité des résultats de recherche, comme suit :Classement basé sur l’historique des résultats de la recherche Si un document dans un jeu de résultats de recherche a été consulté à partir d’une page de résultats de recherche plus souvent que d’autres documents, le document est promu dans le classement des résultats de la recherche.Pertinence basée sur des métadonnées inféréesAprès une analyse, les métadonnées de document sont analysées dans le cadre du processus d’indexation. Dans certains cas, le système de recherche peut également déduire des métadonnées à partir du contenu d’un document. Cela peut être utile lorsque les métadonnées explicites d’un document sont manquantes ou incorrectes. Par exemple, le modèle d’un document Microsoft PowerPoint peut ne pas spécifier un auteur, mais le système de recherche peut déduire l’auteur à partir d’une phrase dans le document comme « By John Doe ».
  • IT PRO: En s’appuyant juste sur la customisation XML (par exemple a rajouter des nouvelles colonnes dans les résultats de la requête a travers la configuration de Search Box Web Part ou rajouter un nouvelle catégorie dans le panneau d’affinement) ou XSLT (en changeant le façon dont les résultats de la recherche sont affiché), les professionnelles de l’information seront capables a faire des merveilles sans y devoir appeler des outils de développement. Le web part de résultat de la recherche fédéré sont aussi disponible dans la gallérie de web parts, catégorie Search Web Parts permettant d’y aller plus loin dans la customisation de votre centre de la recherche.Dev: Avec une meilleure intégration avec VS 2010 et nombreuse fonctionnalités rajouté ou améliorées SharePoint 2010 a quoi de faire jouir(??) les développeurs. Le même OM c’est maintenant utilisé avec SharePoint Search Server qu’avec FAST Server, avec accès total a tout la pipeline de fonctionnalités offerte par SharePoint.
  • Pas juste de faire “sexy” mais rendre util!
  • Connu sous le nom de BDC dans la version 2007, BCS pour Business Connectivity Services supporte maintenant l’indexation à destination des services de search. Les index de Sharepoint peuvent ainsi être enrichi à partir d’une définition et d’une simple configuration.Ca n’a été jamais plus facile a réaliser des connexions vers les basse de données et rapatrier ces données dans votre portail SharePoint, qu’a partir de SharePoint 2010 et SPD2010, et ca grâce aux services BCS. Totalement revues et améliorées, l’architecture des services BCS, permettent désormais une paletté des fonctionnalités asez large pour couvrirtoutes les besoins.Juste connecter votre portail a un system, par exemple basé sur SQL ou un même un service WCF c’est devenu une problématique des quelques minutes.Autre amélioration très importante c’est la capacité d’indexer les attachments et tenant compte aumeme temps de la securité. Pareil pour les documents stockée sur des systemes externesHooking up SharePoint to index content from a databaseisnow a no-brainer; point SPD to yourdatabase to automatically reverse engineer a BDC model, thendeploythat model to the indexer via the admin UI. To index more complex and dynamicrepositories, developerscannowalsobuild custom connectors in managed code (The old C++ Protocol Handler API isstillsupported).
  • Focus on External Content Types, ExternalLists, Searchexternal data (database, WS, etc.)Pareil qu'avecla mise en place du Search, la définition et la customisation d’un ECT désormais peut se faire soit à partir de Sharepoint 2010 Designer soit (dans un model basé sur une solution Visual Studio 2010). La plus part des fonctionnalités liée au création et édition des ECT, ou EL peut se faire directement avec SPD 2010. Même des relations entre les ECT ( connues comme Associations sont disponibles dans SPD2010, avec les restrictions specifiques).
  • Qu'est que c’est un connecteur d’indexation est constitué de: Un modèle définissant les informations, telles comme les métadonnées liée a la connexion et la structure des données accédées La partie exécutable de votre connecteur, c’est ce partie la qui assure le fonctionnement de votre connecteur. C’est elle aussi qui interagit avec les source de données externes.Connecteurs offertes Out of the BoxBase de donnée (SQL Serveur) - OLEDB, ODBC, etc.Web Services (WCF ou «ancien» SOAP based ou WSDL-based)Connector pour les assemblies .NETEvery indexing connector needsA BDC model file to express connection information and the structure of the backendA BDC Connector for code to execute when accessing the backendOut-of-box BDC ConnectorsDatabaseWCF (Web Services).NET (custom code)Accesses data through SharePoint web service (Windows authentication or by using WIF Security framework)Supports full crawl through enumeration of content and incremental crawl through change logBuilt-in support for security trimming (Windows and pluggable)
  • Ilfautexplique le contenu de slide
  • Data is stored across many repositoriesMultiple interfaces are complicated and takes timeSize, security, or cost make crawling infeasibleSearch already exists on the repositoryApproach:People want to search everything in one placeWhat aboutFederation based upon OpenSearchA lightweight standard used throughout the industry.Clients: Amazon A9®, Internet Explorer, Mozilla Firefox®, Windows 7, SharePoint 2010Providers: Bing, SharePoint 2010, any searchable RSS feed (…more at www.opensearch.org)Qu’est ce que le searchfederation ? Il s’agit d’intégrer les résultats de moteurs de recherche aux résultats de nos Query et ainsi offrir une expérience permettant d’intégrer les résultats de système public ou privé dédié tell que wikipedia, linkedin, facebook, ou bing
  • Enumeration des chosesmentioné
  • La conversation est initialisé par le “client” dans le contexte d’un portail SharePoint ce sont notamment a travers les Search web parts et les Searchtext boxes. En s’appuyant sur les paramètres spécifié par le “Query Template” (voir l’example {searchTerms}) le criteres de la recherche sont envoyé vers le serveur. Le résultat (étant donné que la configuration c’etais propre) revient dans un format RSS/XML qui apres est interepreté et transformé par les web part OOTB de SP.D’ailleurs dans les “collones” retourné dans le résultat de la requête on retrouve de contenu standard dans un RSS feed.

TechDays11 Geneva - Going Further with SharePoint 2010 Search TechDays11 Geneva - Going Further with SharePoint 2010 Search Presentation Transcript

  • Marius Constantinescu Valerie Alonso
    Technical ArchitectLead Consultant
    blue-infinity (Switzerland) S.A.
    Aller plus loin avec le Search
  • branding.technology.integration
    in brief
    • + 250 employees
    • headquartered in Geneva
    • founded in 1995
    • international culture
    • multi-national clients
    • integrated solutions
  • Agenda
    Concepts
    End-user Enhancements
    Search Extensibility
    Query federation
  • Microsoft SharePoint 2010
    Ribbon UI
    SharePoint Workspace
    SharePoint Mobile
    Office Client and Office Web App Integration
    Standards Support
    Business Connectivity Services
    External Lists
    Workflow
    SharePoint 2010 Designer
    Visual Studio
    InfoPath Form Services
    API Enhancements
    REST/ATOM/RSS
    Tagging, Tag Cloud, Ratings
    Social Bookmarking
    Blogs and Wikis
    My Sites
    Activity Feeds
    Profiles and Expertise
    Org Browser
    Sites
    Composites
    PerformancePoint Services
    Excel Services
    Chart Web Part
    Visio Services
    Web Analytics
    SQL Server Integration
    PowerPivot
    Communities
    Insights
    Enterprise Content Types
    Metadata and Navigation
    Document Sets
    Multi-stage Disposition
    Audio and Video Content Types
    Remote Blob Storage
    List Enhancements
    Social Relevance
    Phonetic Search
    Navigation
    FAST Integration
    Enhanced Pipeline
    Content
    Search
  • Products for Every Customer Need
    Quick, easy, powerful search (for free!)
    Complete intranet search
    High-end search delivered through SharePoint
    Basic search
    Intranet-wide search
    People and expertise search
    Visual experiences, extreme adaptability and advanced content processing
  • Do More With Search
    Across a Spectrum of Customization and Development
  • Logical search architecture
    Concepts
    Federated Source
    • Search Center Entry pointfor users to issue queries and interact with results
    • Query Servers- Accept query requests from users and return results
    • Query Federation - Return external results from non-SharePoint Indexes
    • Indexing - Extract information from items to enable efficient matching
    • Index Partition - Subset of the overall index
    • Crawling - Traverse URL space to record items in search catalog
    Indexing Connectors - Know how to process different content sources
    Content Sources - Host the content we want to return in main results
  • Making Content Searchable
    Create Content Sources
    SharePoint Site, Internet Sites, Line of Business, File Shares
    Configure search scopes
    Narrow down search results
    Choose between Site or Contextual Search Scopes
    Enable Sites, Lists and/or Libraries to be searched
    Promote Crawled properties to Managed properties
    Properties coming from Content Types (same for External Content Types) are crawled
    Managed properties can be used in search results and refiners
    Create and configure a search center
    Benefit from Query Federation
    Query across remote server & external indexes, get results as structured XML (mainly RSS)
    Based on either SharePoint Index (other farms) or using the OpenSearch 1.0/1.1 Standard
  • End-User Enhancements
    One-stop Search Center
    Large variety of search web parts
    Keywords and Best bets
    Top answers (Display format for the federated search location’s results.),
    Advanced search -promote managed properties
    Query federation brings together results from all over - native support for OpenSearch
    Core search experience
    Improved did you mean suggestions when mistyping
    New pre- and post-query related query suggestions
    “View in browser” link (for most office docs) – req. Office Web Apps
    Improved query syntax , including
    Prefix matching( aka wildcard), as in Author:Jo* )
    Boolean query syntax for free-text query or property based query (“SharePoint Search” OR “Bing”) AND (title:”Keyword syntax” OR title:”Query Syntax”)
    Out-of-box refinement
    Refine over key results properties
    Automatic metadata, taxonomy and social tags based results refinement
    Easy to extend over custom properties (Value or Range Mapping)
  • End-User Enhancements
    Improved relevance ranking
    New ingredients: URL fuzzy matching, social tags, results click through, implicit phrase matching, extracted metadata, etc.
    Improved low-noise snippets in summaries
    Enhanced multi-lingual support
    Automatic detection of language of many document types and part of documents
    Compound word handling - e.g., Innovationszyklen” and ”innovation“, “zyklen”
    Improved ranking of documents in multilingual collections
    New form factors
    Mobile search from Smartphone browsers
    Desktop search integration in Windows 7
  • End-User Enhancements
    Change web part properties – no code
    Customize XSLT - mainly in “Results” web parts (Core, Federated, etc.)
    Modify XML
    Search Box, Refinement panel – control metadata available for refinement
    Advanced search – control metadata available for advanced search queries
    Extend OOB web parts programmatically
    Almost OOB web parts are un-sealed (except for AdvancedSearchBoxHighConfidenceWebPart, PeopleCoreResultsWebPart, SearchPagingWebPart, SearchStatsWebPart, SearchSummaryWebPart)
    Extend web parts to change default behavior
    E.g. Extend core results web part to show result previews, change results sorting order
    Extend Search Center with vertical experiences
    All web parts communicate through public interface (SharedQueryManager object)
  • demo
    Enhancing Search center
    Challenges in branding a search center
    A real image ONLY search experience
  • Search Extensibility via BCS
    • Enable “No Code” connectivity to external data sources & built-in support for BCS in SharePoint 2010 Designer
    • Provide C.R.U.D. operations support – both Read & Write
    • Offline capabilities and SharePoint Workspace
    • Integration with Office 2010 Programs (Word, Outlook)
    • Enable indexing and search across external data
    • Support more complex & dynamic repositories via custom models
  • BCS what you can do
  • Connector Architecture
    Search page points to Profile Page or custom page to show search result
    Search user queries
    Search results page – results based on metadata
    Search Engine/Index
    BDC Profile Pages or External Lists
    Server BDC Runtime
    Execution call routing through BDC
    Connector using BDC model file
    Fetch data from repository
    Databases
    .NET
    BDC Connector
    WCF
    Custom BDC Connector
    Protocol Handlers
  • Search external data with BCS
    Demo
  • Search Extensibility - Federation
    Easily Connect to Assets that live Outside of SharePoint
    OpenSearch Federation
    Easy to Connect
    Exchange Server
    Files
    SharePoint
    Web
    Databases
    Lotus Notes
    Documentum
    Index-based Federation
  • Search Extensibility - Federation
    Query Federation
    Bring external search results into the SharePoint experience
    New : Open Search standard (1.0 & 1.1) support
    Exposed through UI (via Federation Results web parts)and Public federation Object Model for developers
    Use “Federation Locations” in Central Admin to define connections to new sources
  • Know the difference
    Choose Indexing when:
    No way to search repository
    Common relevance ranking
    Extract full text and metadata
    Scope to arbitrary subset
    Source performance / reliability is insufficient
    Lock on Federation when:
    You need a quick, powerful way to bring together results
    Data distributed across multiple repositories
    Search already exists
    Crawling is not feasible…
    Cost or difficulty
    Geo-distribution
    Proprietary / Legal restrictions on source
  • OpenSearch federation works
    HTTP
    request
    Search Provider
    Search Client
    RSS/Atom Results
    HTTP request with query in the URL:
    http://www.site.com/srchrss.aspx?q={searchTerms}
    Internet Search Results
    http://search.live.com/results.aspx?q={searchTerms}&count={itemsPerPage}&first={startItem}&mkt={language}&format=rss&FORM=SHAREF
    RSS / Atom results:
    RSS results with <title>, <link>, <description>
    Best sources also include: <pubdate>, <author>, <category>, <media:thumbnail>
    Optionally include custom metadata: <recordid>, <projectname>, <contactnumber>
  • Demo
    Federated search
    Create a new Federated source
    Custom refiner
    Blended search results
  • Further Considerations
    Ranking up to the provider
    Refinement – use custom runtime
    Query Syntax – use custom web part or runtime
    Plan out Synchronous vs. Asynchronous
    Deploying to Windows 7 via Group Policy
    Security
  • Federation Design Patterns
    Federation based search vertical
    Core Results – A complete results experience
    Lightweight preview of results
    Show ~three results to preview a source
    Instant answer across multiple sources
    An exact match or quick factoid
    Custom application using Federation OM
    Query alteration, refinement, multiple sources
  • Further Considerations
    Ranking up to the provider
    Refinement – use custom runtime
    Query Syntax – use custom web part or runtime
    Plan out Synchronous vs. Asynchronous
    Deploying to Windows 7 via Group Policy
    Security
  • Federation Design Patterns
    Federation based search vertical
    Use the OOTB Core Results Web Part–complete seamless experience
    Lightweight preview of results
    Can results to preview a source
    Instant answer across multiple sources
    An exact match or quick factoid
    Custom application using Federation OM
    Query alteration, refinement, multiple sources
  • Other federation capabilities
    Federation Administration UI
    Management of federated locations.
    Triggers
    Query format determines when to send query.
    Site Restrictions
    Restrict access of federated locations to certain sites.
    Federation Gallery
    Collection of federated locations created by Microsoft or Partners.
  • Q&A
  • © 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.