Архитектура компонентов
На приведенной ниже схеме показана трехуровневая архитектура развертывания служб Reporting Services. На схеме показана база данных сервера отчетов и источники данных в уровне данных, компоненты сервера отчетов в среднем уровне и клиентские приложения и встроенные или пользовательские средства в уровне представления. В диаграмме показан поток запросов и данных в серверных компонентах, а также компоненты, отправляющие и получающие содержимое из хранилища данных. Дополнительные сведения о том, как новые соединения осуществляются во время выполнения, см. в разделе Планирование служб, учетных записей и соединений.
Схема архитектуры
Приложения
На сервере отчетов есть три приложения, выполняющиеся в одной и той же службе Windows.
Диспетчер отчетов, представленный на схеме компонентом «Диспетчер отчетов». Диспетчер отчетов — это приложение обозревателя, которое обеспечивает клиентский доступ к веб-службе Reporting Services.
Веб-служба Reporting Services, представленная на схеме компонентами «веб-службы». Это приложение производит интерактивную обработку отчетов по запросу.
Приложение для обработки в фоновом режиме, представленное на схеме компонентами «службы Windows». Это приложение обрабатывает отчеты, запускаемые в соответствии с расписанием, и доставляет их получателям.
Дополнительные сведения об этих приложениях см. в разделе Архитектура служб (службы Reporting Services).
Хранилище данных
Сервер отчетов является сервером без сохранения состояния и хранит все свойства, объекты и метаданные в базе данных SQL Server. В базе хранятся опубликованные отчеты, модели отчетов и иерархия папок, которая позволяет адресовать любые элементы, которыми управляет сервер отчетов. База данных сервера отчетов может обеспечивать внутреннее хранилище для отдельной установки служб Reporting Services либо для нескольких серверов отчетов, входящих в масштабное развертывание.
Модули
Сервер отчетов поддерживает нестандартные модули проверки подлинности, модули обработки данных, модули обработки отчетов, модули подготовки отчетов к просмотру и модули доставки. Обязательно наличие хотя бы одного модуля проверки подлинности, одного модуля обработки данных и одного модуля подготовки отчетов к просмотру. Модули доставки и пользовательские модули обработки необязательны, однако необходимы, если в отчетах применяются пользовательские элементы управления и необходимо их распространение.
Модули безопасности
Модули безопасности используются для проверки подлинности и авторизации на сервере отчетов пользователей и групп. Модуль безопасности по умолчанию создан на основе проверки подлинности Windows. Если текущая конфигурация требует другой методики проверки подлинности (например, на базе форм для Интернета или корпоративной экстрасети), можно создать настраиваемый модуль безопасности для его замены. В одной установке служб Reporting Services может использоваться только один модуль безопасности. Установленный по умолчанию модуль безопасности для проверки подлинности Windows может быть заменен настраиваемым, но их нельзя использовать одновременно.
Модули обработки данных
Модули обработки данных выполняют запросы к источнику данных и возвращают плоский набор строк. Службы Reporting Services используют различные модули для взаимодействия с разными типами источников данных. Можно пользоваться как модулями в составе служб Reporting Services, так и разрабатывать свои собственные. В комплекте поставляются модули обработки данных для источников данных SQL Server, Analysis Services, Oracle, SAP NetWeaver Business Intelligence, Hyperion Essbase, Teradata, OLE DB и ODBC. Службы Reporting Services могут также использовать любой поставщик данных ADO.NET. Модули обработки данных обрабатывают запросы от компонента обработчика отчетов, выполняя следующие задачи.
Открывают соединение с источником данных.
Анализируют запрос и возвращают список имен полей.
Выполняют запрос к источнику данных и возвращают набор строк.
При необходимости передают параметры запроса.
Просматривают набор строк и получают данные.
Некоторые модули могут также выполнять следующие задачи.
Анализируют запрос и возвращают список имен параметров, используемых в запросе.
Анализируют запрос и возвращают список полей, используемых для группирования.
Анализируют запрос и возвращают список полей, используемых для сортировки.
Предоставляют имя пользователя и пароль для подключения к источнику данных.
Передают запросу параметры с несколькими значениями.
Просматривают строки и извлекают вспомогательные метаданные.
Дополнительные сведения см. в разделе Соединение с данными отчета.
Модули подготовки отчетов к просмотру
Модули подготовки отчетов к просмотру преобразуют данные и макет отчета, полученные от обработчика отчетов, в формат, определяемый устройством отображения. В службы Reporting Services входит семь модулей подготовки отчетов: HTML, Excel, CSV, XML, модуль подготовки в формате изображения, PDF и Microsoft Word.
Модуль подготовки отчетов в формате HTML. Если отчет запрашивается через веб-обозреватель, сервер отчетов использует модуль подготовки отчетов в формате HTML. Этот модуль подготовки отчетов к просмотру формирует код в формате HTML только в кодировке UTF-8. Дополнительные сведения см. в разделах Подготовка к просмотру в виде HTML и Планирование поддержки обозревателей.
Модуль подготовки отчетов к просмотру в формате Excel. Модуль подготовки отчетов в формате Excel производит подготовку отчетов для просмотра и изменения в Microsoft Excel 97 или более поздней версии. Он создает двоичные файлы в формате BIFF, собственном формате файлов Excel. Отчеты, подготовленные для просмотра в формате Microsoft Excel, поддерживают все возможности, доступные для электронных таблиц. Дополнительные сведения см. в разделе Экспорт в Microsoft Excel.
Модуль подготовки отчетов к просмотру в формате CSV. Модуль подготовки отчетов к просмотру в формате CSV преобразует отчеты в текстовый формат с разделителями-запятыми без какого-либо форматирования. Пользователи открывают эти файлы в приложениях электронных таблиц, например в Microsoft Excel или в любой другой программе, способной открывать текстовые файлы. Дополнительные сведения см. в разделе Экспорт в CSV-файл.
Модуль подготовки отчетов в формате XML. Модуль подготовки отчетов к просмотру в формате XML подготавливает отчеты в XML-файлах. Эти XML-файлы могут быть сохранены или загружены в другую программу. Кроме того, преобразовать отчет в другую схему XML для использования в других приложениях можно с помощью XSLT-преобразования. ХML-файл, созданный модулем подготовки отчетов в формате XML, сохраняется в кодировке UTF-8. Дополнительные сведения см. в разделе Экспорт в XML.
Модуль подготовки изображений. Модуль подготовки изображений подготавливает отчеты в виде точечных рисунков или метафайлов. Этот модуль подготавливает к просмотру следующие форматы: BMP, EMF, GIF, JPEG, PNG, TIFF и WMF. По умолчанию изображение подготавливается в формате TIFF, который можно вывести на экран системной программой для просмотра изображений (например, программой просмотра изображений и факсов Windows). Из этой же программы изображение может быть отправлено на печать. Использование этого модуля подготовки изображений гарантирует, что отчет будет совершенно одинаково отображаться на любом клиенте. (При просмотре отчета в формате HTML его внешний вид зависит от версии и параметров обозревателя, а также набора доступных шрифтов). Модуль подготовки изображений подготавливает отчет к просмотру на сервере, поэтому все пользователи получат одно и то же изображение. По той же причине на сервере должны быть установлены все шрифты, используемые в отчете. Дополнительные сведения см. в разделе Экспорт в файл изображения.
Модуль подготовки отчетов в формате PDF. Модуль подготовки отчетов в формате PDF создает файлы PDF, для открытия и просмотра которых используется программа Adobe Acrobat 6.0 или более поздней версии. Дополнительные сведения см. в разделе Экспорт в PDF-файл.
Модуль подготовки отчетов в формате Microsoft Word. Модуль подготовки отчетов в формате Microsoft Word подготавливает к просмотру отчет как документ, совместимый с Microsoft Office Word 2000 или более поздней версии. Дополнительные сведения см. в разделе Экспорт в Microsoft Word.
Модули обработки отчета
Модули обработки отчета могут создаваться для выполнения пользовательских функций обработки элементов отчета, отсутствующих в службах Reporting Services. По умолчанию сервер отчетов выводит таблицы, диаграммы, матрицы, списки, текстовые поля, рисунки и другие типы элементов отчета, описанные в разделе Добавление дополнительных элементов отчета. Если в отчет требуется добавить те или иные специальные возможности, которые потребуют нестандартной обработки отчета при его выполнении (например, если нужно внедрить в отчет карту Microsoft MapPoint), то для этого можно разработать собственный модуль обработки отчета.
Модули доставки
Приложение фоновой обработки использует модули доставки для доставки отчетов в различные расположения. В составе служб Reporting Services поставляется модуль доставки по электронной почте и модуль доставки в общую папку. Модуль доставки по электронной почте через протокол SMTP отправляет сообщения, в которых может содержаться либо сам отчет, либо ссылка (URL-адрес) на него. Короткие извещения, не содержащие URL-адресов и отчетов, могут отправляться также на пейджеры, телефоны и другие устройства. Модуль доставки в общую папку сохраняет отчеты в сетевую общую папку. Можно указать расположение, формат подготовки к просмотру и имя файла, а также параметры перезаписи для создаваемых файлов. Этот модуль может также использоваться для архивации готовых к просмотру отчетов в рамках стратегии работы с очень большими отчетами. Модули доставки работают совместно с подписками. При создании подписки, чтобы определить порядок доставки отчета, пользователь выбирает один из имеющихся модулей доставки.