Поиск в SharePointSearch in SharePoint

Информация о расширяемости стандартных блоков в Поиск в SharePoint и об их использовании в подходящих для вас вариантах использования. Поиск в SharePoint позволяет пользователям еще легче и быстрее находить необходимую информацию и облегчает настройку возможностей поиска для администраторов поиска. Кроме того, он предоставляет несколько наборов интерфейсов API для расширенной настройки и решений.Understand the extensibility building blocks in Search in SharePoint and how you can use these building blocks to suit your use cases. Search in SharePoint enables users to find relevant information more quickly and easily than ever before and makes it easy for Search administrators to customize the search experience. It also provides several API sets for more advanced customizations and solutions.

Перед тем как продолжить рекомендуем более детально ознакомиться с общими концепциями разработки SharePoint, которые представлены в следующих статьях:See the following articles for a good introduction to general SharePoint development concepts; you may find it helpful to review these before proceeding:

Общие сведения об архитектуре поискаSearch architecture overview

Поиск в SharePoint включает широкий ряд усовершенствований и новых функций. В этой версии Поиск в SharePoint реорганизован в единую корпоративную поисковую платформу. Архитектура поиска включает следующие области:Search in SharePoint includes a wide variety of improvements and new features. With this version, Search in SharePoint is re-architected to a single enterprise search platform. The search architecture consists of the following areas:

Эти области состоят из компонентов и баз данных, которые слаженно работают, чтобы выполнить операцию поиска. На рис. 1 представлен общий вид различных областей архитектуры поиска и внутренние компоненты и базы данных, чья слаженная работа направлена на выполнение операции поиска.These areas consist of components and databases that work cohesively to perform the search operation. Figure 1 provides an overall view of the different areas of search architecture, and the components and databases within that work cohesively to perform the search operation.

Рис. 1. Взаимодействие компонентов поискаFigure 1. Search component interaction

Взаимодействие компонентов поиска

Более подробное представление доступно в разделе "Поиск" на странице с техническими графиками и статье Обзор поиска в SharePoint.For a more detailed view, see Technical Diagrams -- Search and Overview of search in SharePoint.

Обход и обработка контентаCrawl and content processing

Архитектура обхода и обработки контента включает представленные ниже компоненты.The crawl and content processing architecture consists of the following:

Компонент обхода контентаCrawl component

Выполняет обход контента, собирает свойства для обхода и метаданные из обойденных элементов и отправляет их в компонент обработки контента.Crawls content sources to collect crawled properties and metadata from crawled items and sends this information to the content processing component.

База данных обходаCrawl database

Содержит информацию об обойденных элементах, например, последнее время обхода контента, идентификатор последнего обхода и тип обновления во время последнего обхода.Contains information about crawled items, such as last crawl time, the last crawl ID, and the type of update during the last crawl.

Компонент обработки контентаContent processing component

Обходит источники контента, чтобы собрать свойства для обхода и метаданные из обойденных компонентов, и отправляет эту информацию в компонент индексирования.Crawls content sources to collect crawled properties and metadata from crawled items and sends this information to the index component.

УказательIndex

Компонент индексирования получает от компонента обработки контента обработанные элементы и записывает их в индекс поиска. Кроме того, этот компонент обрабатывает входящие запросы, получает информацию от поисковых индексов и отправляет набор результатов обратно компоненту обработки контента.The index component receives the processed items from the content processing component and writes them to the search index. This component also handles incoming queries, retrieves information from the search index, and sends back the result set to the query processing component.

Обработка запросовQuery processing

Компонент обработки запросов анализирует и обрабатывает поисковые запросы и результаты. Затем обработанный запрос отправляется в компонент индексирования, который возвращает набор результатов поиска для данного запроса.The query processing component analyzes and processes search queries and results. The processed query is then submitted to the index component, which returns a set of search results for the query.

Администрирование поискаSearch administration

Администрирование поиска состоит из компонента администрирования поиска и соответствующей базы данных.Search administration is composed of the search administration component and its corresponding database.

Компонент администрирования поискаSearch administration component

Запускает системные процессы поиска, а также добавляет и инициализирует новые экземпляры компонентов поиска.Runs the system processes for search, and adds and initializes new instances of search components.

База данных администрирования поискаSearch administration database

Сохраняет данные конфигурации поиска.Stores search configuration data.

АналитикаAnalytics

Структура аналитики состоит из компонента обработки аналитики, базы данных отчетности аналитики и базу данных ссылок.The analytics architecture consists of the analytics processing component, analytics reporting database, and link database.

Компонент обработки аналитикиAnalytics processing component

Выполняет анализ поиска и использования.Performs search analytics and usage analytics.

База данных ссылокLink database

Хранит информацию, извлеченную компонентом обработки контента, и информацию по поисковым переходам.Stores information extracted by the content processing component and search click information.

База данных отчетности аналитикиAnalytics reporting database

Хранит результаты использования аналитики.Stores the results of usage analytics.

Хранилище событийEvent store

Хранит события использования, которые захвачены на внешнем интерфейсе.Stores usage events that are captured on the front-end.

Точки расширения поискаSearch extensibility points

Архитектура Поиск в SharePoint предоставляет несколько точек расширения для поддержки сценариев настройки. В этом разделе описаны эти точки и показано, где можно найти дополнительную информацию о разработке для этих сценариев.The Search in SharePoint architecture provides several extensibility points to support customization scenarios. In this section, we'll describe these points and show you where you can find more information about developing for these scenarios.

Инфраструктура компонентовConnector framework

Компонент обхода обходит контент, вызывая соединителей или обработчиков протоколов, которые взаимодействуют с источниками контента, чтобы получить данные. Поиск в SharePoint включает инфраструктуру компонентов, которую можно использовать для настройки и создания соединителей для обхода новых источников контента. Более подробную информацию об архитектуре инфраструктуры компонентов и способах ее расширения можно узнать в статье Инфраструктура соединителей поиска в SharePoint.The crawl component crawls content by invoking connectors or protocol handlers that interact with content sources to retrieve data. Search in SharePoint includes a connector framework that you can use to customize and build connectors to crawl new content sources. For detailed information about the connector framework architecture and how to extend it, see Search connector framework in SharePoint.

Настройка обработки контентаCustom content processing

В компоненте обработки контента вы можете использовать выноски веб-службы обогащения контента, чтобы изменить управляемые свойства обходимых элементов перед тем, как они будут добавлены в индекс поиска. Эта выноска веб-службы обращается к любой созданной вами внешней веб-службе обогащения содержимого. Более подробную информацию можно узнать в статье Нестандартная обработка контента с использованием выноски веб-службы "Обогащение контента". С пошаговой реализацией веб-службы обогащения контента можно ознакомиться в статье Как: используйте вызов повышения качества контента веб-службы для SharePoint Server. Также полезна будет запись блога Настройка поиска SharePoint с помощью веб-службы обогащения содержимого.Within the content processing component, you can use the Content Enrichment web service callout to modify the managed properties of crawled items before they are added to the search index. This web service callout calls out to any external content enrichment web service that you create. For more information, see Custom content processing with the Content Enrichment web service callout. For a step-by-step implementation of a content enrichment web service, see How to: Use the Content Enrichment web service callout for SharePoint Server. The blog post Customize the SharePoint search experience with a Content Enrichment web service is also a good resource

Интерфейсы API запросаQuery APIs

Поиск в SharePoint предусматривает несколько интерфейсов API запроса, которые предоставляют множество способов доступа к результатам поиска, чтобы вы могли вернуть различные типы пользовательских решений.Search in SharePoint provides several query APIs, giving you lots of ways to access search results, so that you can return search results in a variety of custom solution types.

В таблице 1 показаны интерфейсы API, которые вы можете использовать для программирования Поиск в SharePoint, и их расположение.Table 1 shows the APIs that you can use to program Search in SharePoint and where to find them.

Таблица 1. Поисковые интерфейсы APITable 1. Search APIs

Имя APIAPI name Библиотека или схема классов и путьClass library or schema and path
Клиентская объектная модель .NET (CSOM).NET client object model (CSOM)
Microsoft.SharePoint.Client.Search.dllMicrosoft.SharePoint.Client.Search.dll
%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\ISAPI%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\ISAPI
Silverlight CSOMSilverlight CSOM
Microsoft.SharePoint.Client.Search.Silverlight.dllMicrosoft.SharePoint.Client.Search.Silverlight.dll
%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\LAYOUTS\ClientBin%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\LAYOUTS\ClientBin
JavaScript CSOMJavaScript CSOM
SP.search.jsSP.search.js
%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\LAYOUTS%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\TEMPLATE\LAYOUTS
Конечные точки службы передачи репрезентативного состояния (REST)Representational State Transfer (REST) service endpoints
http://server/_api/search/query
http://server/_api/search/suggest
Объектная модель сервераServer object model
Microsoft.Office.Server.Search.dllMicrosoft.Office.Server.Search.dll
%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\ISAPI%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\ISAPI

Дополнительные сведения см. в статье Использование API поисковых запросов в SharePoint.For more information, see Using the SharePoint search Query APIs.

АналитикаAnalytics

Для определения и обработки контента, который пользователи считают наиболее полезным и релевантным, компонент обработки аналитики анализирует как сам контент, так и способ взаимодействия с ним пользователей.To help identify and surface the content that users consider to be the most useful and relevant, the analytics processing component analyzes both the content itself, and also the way that users interact with it. Данный анализ выполняется согласно заданиям таймера, которые отвечают за выполнение анализа задач жизненного цикла, таких как запуск, остановка, приостановка и возобновление анализа при необходимости.These analyses are done by timer jobs that are responsible for performing analysis lifecycle tasks such as starting, stopping, pausing, and resuming an analysis job when requested. Этими заданиями таймера можно управлять через пространство имен Microsoft.Office.Server.Search.Analytics.You can manipulate these timer jobs through the Microsoft.Office.Server.Search.Analytics namespace. Подробные сведения об аналитике в SharePoint см. в статье Обзор обработки аналитических данных в SharePoint.For in-depth information about analytics in SharePoint, see Overview of analytics processing in SharePoint.

Специальные модели ранжированияCustom ranking models

Результаты поиска можно упорядочить разными способами, например по значению ранга.Search results can be ordered in various ways, one of which is by rank score. Значения ранга вычисляются поисковой системой с использованием моделей ранжирования.Rank scores are calculated by the search engine using ranking models. По умолчанию SharePoint предоставляет четырнадцать моделей ранжирования.SharePoint provides fourteen ranking models by default. Но если вас не устраивает то, как упорядочены результаты поиска, вы можете использовать специальные модели ранжирования.However, if you are not satisfied with the way your search results are ordered, you can use a custom ranking model. Дополнительные сведения о процессе создания специальной модели ранжирования и ее настройке см. в статье Настройка моделей ранжирования для улучшения релевантности в SharePoint.To learn more about the process of creating a custom ranking model and tuning it, see Customizing ranking models to improve relevance in SharePoint.

Специальная фильтрация по ролям безопасностиCustom security trimming

При поиске в SharePoint выполняется фильтрация результатов поиска по ролям безопасности, которая основана на удостоверении пользователя, отправившего запрос, и времени запроса, при этом используются данные безопасности, полученные от компонента обхода контента.Search in SharePoint performs security trimming of search results that are based on the identity of the user submitting the query, at query time, by using security information obtained from the crawl component. Однако в некоторых случаях вам может потребоваться реализовать специальную фильтрацию по ролям безопасности.However, in some cases, you may need to implement custom security trimming. Для выполнения этой задачи в SharePoint доступны два интерфейса: ISecurityTrimmerPre и ISecurityTrimmerPost.SharePoint provides two interfaces to accomplish this task: ISecurityTrimmerPre and ISecurityTrimmerPost .

Интерфейс предварительной фильтрации (ISecurityTrimmerPre) выполняет оценку до обработки запроса, при этом прежде чем поисковый запрос будет сопоставлен с индексом поиска, в него добавляются данные безопасности.The pre-trimmer interface ( ISecurityTrimmerPre) carries out pre-query evaluation, where the search query is rewritten to add security information before the search query is matched to the search index. Интерфейс последующей фильтрации (ISecurityTrimmerPost) выполняет оценку после обработки запроса, при которой некоторые результаты поиска убираются, после чего пользователю возвращаются остальные.In contrast, the post-trimmer interface ( ISecurityTrimmerPost) carries out post-query evaluation, where the search results are pruned before they are returned to the user. Дополнительные сведения об этих двух интерфейсах см. в статье Специальная фильтрация по ролям безопасности, настраиваемая для поиска в SharePoint.For more information about the two interfaces, see Custom security trimming for Search in SharePoint. Пошаговые инструкции по реализации интерфейса триммера безопасности см. в статье Применение специального триммера безопасности к результатам поиска SharePoint Server.For step-by-step information on how to implement a security trimmer interface, see How to: Use a custom security trimmer for SharePoint Server search results.

Веб-часть "Поиск контента"Content Search web part

Веб-часть "Поиск контента" — это веб-часть, которая может отображать динамический контент, которого был просканирован и добавлен в индекс поиска.The Content Search web part is a web part that can display dynamic content that was previously crawled and added to the search index. Каждый экземпляр веб-части связан с поисковым запросом, и в нем отображаются результаты конкретного поискового запроса.Each instance of the web part is associated with a search query and shows the results for that particular search query. Когда пользователи переходят на страницу, содержащую веб-часть "Поиск контента", запрос выполняется автоматически, возвращая результаты из индекса поиска.When users browse to a page that contains a Content Search web part, a search query is automatically issued, and the corresponding search results are returned from the search index. Вы можете использовать веб-часть "Поиск контента", если хотите показывать контент, полученный в результате выполнения автоматически созданных поисковых запросов.You can use the Content Search web part whenever you want to display content that is populated by automatically generated search queries. В некоторых случаях вам может потребоваться расширить веб-часть "Поиск контента", доступную в пространстве имен Microsoft.Office.Server.Search.WebControls под именем ContentBySearchWebPart.In some cases, you may want to extend the Content Search web part, which is exposed through the Microsoft.Office.Server.Search.WebControls namespace as ContentBySearchWebPart . Чтобы, как расширить веб-часть ContentBySearchWebPart, чтобы она распознавала настраиваемые свойства, просмотрите раздел Сегментация пользователей в SharePoint.To learn about how to extend the ContentBySearchWebPart so that the web part understands custom properties, see User segmentation in SharePoint.

Мобильные приложения, ориентированные на поиск, для которых используются интерфейсы REST, обеспечивающие навигацию и ведение журнала событийSearch-driven mobile apps using the Navigation and Event Logging REST interfaces

В SharePoint доступны два новых интерфейса REST — интерфейсы навигации и ведения журнала событий.SharePoint provides two new REST interfaces: Navigation and Event Logging. Вы можете использовать их для создания мобильных приложений, ориентированных на поиск, для мобильных устройств, например телефонов и планшетов, работающих под управлением операционной системы, отличной от Windows.You can use them to create search-driven mobile apps for mobile devices, such as phones and tablets, that run on operating systems other than Windows. Эта функция позволяет отображать на мобильном устройстве каталог продукции не через мобильный канал, а другим способом.This feature lets you display the product catalog on a mobile device in an alternate way, instead of using a mobile channel. Подробный пример создания такого приложения описан в статье Создание мобильных приложений, ориентированных на поиск, для которых используются интерфейсы REST, обеспечивающие навигацию и ведение журнала событий.See How to: Build search-driven mobile apps with the Navigation and Event Logging REST interfaces for a detailed example of how to create such an app.

В этой статьеIn this section

См. такжеSee also