Инфраструктура компонентов поиска в SharePoint

Узнайте о соединителях индексирования SharePoint, об инфраструктуре компонентов и о создании настраиваемых соединителей индексирования BCS для поиска во внешних системах.

Создание контента, доступного для поиска в SharePoint

Функция поиска в SharePoint предоставляет два подхода к обработке запросов для возвращения результатов поиска: федеративный поиск и обход содержимого.

Федеративном поиске В этом подходе результаты поиска возвращаются для контента, обход которого не выполнен с сервера поиска. Запрос перенаправляется к внешнему репозиторию контента, где он обрабатывается поисковой системы, репозитория. Поисковый механизм репозитория затем возвращает результаты на поисковый сервер. Сервер поиска форматирует и отображает результаты из внешнего хранилища для отображения на странице результатов поиска. Такой подход имеет следующие преимущества:

  • Для индекса содержимого не требуется дополнительной мощности, поскольку функция поиска в SharePoint не выполняет обход содержимого.

  • Вы можете воспользоваться преимуществами существующих поисковый механизм репозитория. Например можно создать федерацию для поиска в Интернете для поиска в Интернете.

  • Можно оптимизировать поисковую систему репозитория контента специально для хранящегося в нем набора контента, что позволит значительно повысить производительность этого набора.

  • Можно получить доступ к репозиториям, которые защищены от обхода контента, но может осуществляться поисковых запросов.

Обход контента В этот подход результаты возвращаются из индекса контента приложения службы поиска по запросу пользователя. Индекс контента содержит контент, для которого выполняется обход приложением-службой поиска и включает в себя текстовое содержимое и метаданные для каждого элемента контента. Такой подход позволяет:

  • Сортировка результатов по релевантности.

  • Управление частотой обновления индекса контента.

  • Определение метаданных для обхода.

  • Выполнение одной операции резервного копирования для контента, для которого выполнен обход.

Обход содержимого с помощью соединителей индексирования в SharePoint

Программа-обходчик использует соединители индексации для доступа к контенту для обхода. Соединитель indexing connector — компонент, который знает о подключении к источнику контента, что для обхода и как его обход. В более ранних версиях SharePoint эти были известны как обработчиков протоколов и компонентов, которые основаны на выполнение неуправляемого кода C++ пользовательских интерфейсов.

Поиск в SharePoint включает инфраструктуру соединителей, появившуюся в SharePoint Server 2010 и построенную на основе Microsoft Business Connectivity Services (BCS). Эта инфраструктура обеспечивает простой подход к разработке соединителей индексирования. В инфраструктуре соединителей программа-обходчик использует соединители индексирования на основе BCS для обхода внешнего содержимого. SharePoint использует как соединители индексирования на основе обработчиков протоколов, так и соединители индексирования BCS для обхода содержимого.

На рис. 1 показан общий обзор работы соединителей индексирования в SharePoint.

Соединители индексирования в SharePoint

Обзор службы BCS для поиска в SharePoint

BCS является защиту средства и инфраструктуру, которая необходима для подключения к внешним системам с SharePoint. На рисунке 2 показано высокоуровневое представление архитектуры BCS с соответствующих областей поиска с выделением.

Рис. 2. Архитектура BCS, включая поиск

Архитектура BCS

BCS устанавливает подключение к внешним данным, на основе определения внешнего типа контента в хранилище метаданных. Хранилище метаданных содержит следующие сведения для внешнего типа контента:

  • Сведения о подключении Описывается, как подключиться к внешней системе.

  • Сведения о сущности Описывает структуру внешних данных.

  • Операции Описываются методы, используемые для доступа к внешним данным. В случае баз данных и веб-служб, это, методы, поддерживаемые внешней системы: инструкции SQL для базы данных соединители и веб-методы для веб-служб. Для .NET и настраиваемые соединители индексации BCS это методов, реализованных в сборке соединителя, компонентом библиотеки DLL, создайте для соединителя индексации.

Эти сведения указана в файле модели BDC внешнего типа контента. Дополнительные сведения о моделях BDC и их содержимом см. в разделе Инфраструктура моделей BDC.

Дополнительные сведения об архитектуре и функциональных возможностях BCS см. в разделах Обзор служб Business Connectivity Services и Механика использования служб business Connectivity Services.

Использование инфраструктуры компонентов

Для обхода внешних данных, необходимо добавить один из типов источников контента, которые поддерживают подключение к внешним данным. В таблице 1 перечислены этих типов источников контента.

Таблица 1. Типы источников контента, поддерживающие соединители индексирования BCS

Тип источника содержимого Описание
Бизнес-данные
Использование этого источника контента для базы данных и веб-соединители индексации службы BCS.
Настраиваемый репозиторий
Использование этого источника контента для .NET и настраиваемые соединители индексации BCS.

Платформа соединителей позволяет создавать BCS индексирования соединителей для подключения к внешнего контента, который следует выполнить обход и включить в индекс контента. Соединитель индексации BCS используется программой-обходчиком для взаимодействия с внешнего источника данных. Во время обхода контента программа-обходчик вызывает соединителя индексации BCS для извлечения данных из внешней системы и передать его программы-обходчика. Соединитель индексации BCS также анализирует доступа поняты URL-адреса, поиска и идентификаторы, понятны BCS при их передаче между BCS и поиска во время обхода контента.

Соединители индексации BCS состоят из следующих:

Файл модели BDC Файл, который содержит структуру данных и, который предоставляет данные для подключения к внешней системе.

Соединитель Компонент, содержащий код, который подключается к внешней системе и анализ доступа идентификаторы URL-адреса и BCS.

Для BCS индексирования соединители на основе типов контента источника строки бизнес-данных поиска включает встроенные соединители, необходимо создать только файл модели BDC.

Для соединителей индексации BCS на основе типов настраиваемый репозиторий источника контента необходимо разработать настраиваемый компонент в дополнение к файлу модели BDC для подключения к внешним данным.

На рисунке 3 показана высокоуровневая архитектура инфраструктуры компонентов поиска.

Рис. 3. Архитектура инфраструктуры компонентов поиска

Архитектура инфраструктуры компонентов поиска

Соединители индексирования BCS

SharePoint поддерживает следующие типы соединителей индексирования BCS:

  • Соединитель баз данных SharePoint включает заранее заданный соединитель BCS, поддерживающий подключение к базам данных, чтобы можно было создать соединитель индексирования BCS без написания программного кода. Достаточно создать файл модели BDC для соединителя.

  • Соединитель WCF (веб-служб) SharePoint включает заранее заданный соединитель BCS, поддерживающий подключение к веб-службам, поэтому можно создать соединитель индексирования BCS без написания программного кода. Достаточно создать файл модели BDC для соединителя.

    Примечание.

    [!Примечание] Несмотря на то, что у вас нет писать код для создания соединителя для веб-служб, веб-службы необходимо включить методы, которые предоставляют те же функциональные возможности, который предоставляет соединитель .NET BCS для передачи внешних бизнес-данных BCS. Сведения о создании веб-службы см. в статье Создание сборок подключения к .NET и веб-служб. Примеры кода см. в разделах Пример заказов ASP.NET пример веб-службы и Пример заказа wcf Service Sample.

  • Соединитель BCS .NET SharePoint не включает заранее заданного соединителя BCS для соединителей .NET, поэтому помимо создания файла модели BDC необходимо также создать компонент .NET для соединителя индексирования BCS. Необходимо реализовать необходимые стереотипные операции для поддержки обхода данных, а также реализовать методы для разбора URL-адресов доступа и идентификаторов BDC.

  • Настраиваемый соединитель BCS SharePoint не включает заранее заданного соединителя BCS для соединителей .NET, поэтому помимо создания файла модели BDC необходимо также создать компонент .NET для соединителя индексирования BCS (точно так же, как для соединителя BCS .NET). Необходимо реализовать необходимые стереотипные операции для поддержки обхода данных и реализации методов для синтаксического анализа доступа к данным и URL-адреса идентификаторы. Кроме того, необходимо реализовать интерфейс ISystemUtility.

Сборка соединителей индексирования BCS

При разработке соединителя индексации BCS только что создаваемым файла модели BDC для базы данных и веб-службы индексирования соединители, или создание файла модели BDC и написания кода компонент соединителя BCS для .NET и настраиваемые соединители индексации, необходимо учитывать следующее:

  • Подключения к Порядок подключения к репозиторию внешних данных, например, адрес сервера, IP-адрес или имя экземпляра базы данных. Также включает сведения о проверке подлинности, используемый для подключения к внешним данным репозитория.

  • Структура репозитория Для чтения данных, соединитель должен знать, как организованы репозитория. — Это иерархическая, enumerical или имеет проходить ссылки?

  • Выполняет добавочный обход Чтобы уменьшить нагрузку на хранилище внешних данных, присвойте соединителю возможность выполнять добавочные обходы контента в дополнение к полный обход. Для этого соединителя необходимо определить, какие данные были изменены с момента последнего обхода и иметь возможность выполнять обход содержимого только эти данные. Это можно сделать с помощью добавочного обхода контента на основе метки времени или обхода на основе журнала изменений. При реализации подход зависит от API-интерфейсы, предоставляемые репозитория и актуальности контента.

  • Обеспечение безопасности данных В большинстве случаев не все данные доступны для всех пользователей. Важно, что это также работает с поиска, поэтому когда пользователь выполняет поиск с помощью пользовательского интерфейса поиска, пользователь может видеть только результаты он или она имеет доступ к. Это означает, что соединитель должен знать, как читать безопасности внешней системы и перенести эти сведения, связанные с безопасностью обратно во время обхода контента в индексе. Например можно реализовать во время обхода хранения Windows NT списки управления доступом (ACL).

В таблице 2 описаны стереотипные операции, применяемые при создании соединителя индексирования BCS для SharePoint.

Табл. 2. Стереотипные операции BCS, поддерживаемые поиском в SharePoint

Операция Описание
Служба поиска
Основные операции, необходимые при создании соединителя BCS. Эта операция извлекает список элементов внешнего источника контента. См. раздел Реализация средства поиска.
SpecificFinder
Основные операции, необходимые при создании соединителя BCS. Эта операция получает отдельные элементы из внешнего источника контента. См. раздел Реализация specificFinder.
ChangedIdEnumerator
Требуется реализовать добавочные обходы контента на основе журнала изменений. См. раздел Реализация ChangedIdEnumerator.
DeletedIdEnumerator
Требуется реализовать добавочные обходы контента на основе журнала изменений. См. раздел Реализация DeletedIdEnumerator.
BinarySecurityDescriptorAccessor
Требуется для реализации безопасности на уровне элементов. Возвращает дескриптор безопасности для элемента из внешнего источника контента. См. раздел Реализация binarySecurityDescriptorAccessor.
StreamAccessor
Требуется, чтобы включить обход вложений из внешнего источника контента. Возвращает вложения как поток данных. См. раздел Реализация StreamAccessor.

Поддержка инструментов для разработки соединителей индексирования BCS

BCS обеспечивает поддержку средств для соединителей BCS в SharePoint Designer и Visual Studio.

Поддержка средств SharePoint Designer для соединителей BCS

SharePoint Designer предоставляет ограниченный набор возможностей; Его можно использовать для создания файлов модели BDC для существующих типов соединителей BCS, таких как база данных, веб-служба и соединители BCS .NET. Его также можно использовать для экспорта файлов модели BDC из одного приложения службы BCS в другое приложение службы BCS.

Поддержка средств Visual Studio для соединителей BCS

Visual Studio можно использовать для создания компонентов для соединителей .NET BCS и настраиваемые соединители BCS. Для соединителей .NET BCS Visual Studio предоставляет шаблон проекта модели подключения к бизнес-данным, который включает набор конструкторов и возможности управления кода для упрощения создания, отладки и развертывания компонента .NET и связанного файла модели BDC для соединителя .NET BCS. Нет соответствующего шаблона проекта для настраиваемых соединителей BCS.

Улучшения инфраструктуры компонентов в SharePoint

В SharePoint инфраструктура компонентов поддерживает соединители BCS, получающие информацию о заявках для содержимого, хранящегося в настраиваемых внешних репозиториях данных.

Инфраструктура компонентов также предоставляет улучшенный захват исключений и ведение журнала для помощи в устранении ошибок, обнаруженных во время обхода источников контента с помощью соединителей BCS.

См. также