Предисловие:
Данный документ является обзором улучшений, внесенных в платформу интеллектуальной обработки данных в Microsoft SQL Server 2005. Документ не является руководством, в нем только дается информация об улучшениях в платформе интеллектуальной обработки данных.
Авторские права
Этот документ является предварительным и может быть существенным образом переработан до финального коммерческого релиза программного продукта
Информация, содержащаяся в этом документе, представляет текущую точку зрения корпорации Microsoft на обсуждаемые вопросы на момент публикации. Поскольку Microsoft должна реагировать на изменяющиеся условия на рынке, документ не следует рассматривать как обязательство со стороны Microsoft; корпорация Microsoft не может гарантировать, что вся представленная информация сохранит точность после даты публикации.
Настоящий документ предназначен только для информационных целей. MICROSOFT НЕ ДАЕТ В ЭТОМ ДОКУМЕНТЕ НИКАКИХ ЯВНЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ ГАРАНТИЙ.
Если не оговорено противное, используемые в этом документе названия компаний и продуктов, имена людей, действующие лица и/или данные являются вымышленными, и их ни в коей мере не следует связывать с какими-либо реальными людьми, компаниями, продуктами или событиями.
© 2005 Microsoft Corporation. Все права защищены.
Microsoft, SharePoint, Visual Basic и Visual Studio являются товарными знаками или охраняемыми товарными знаками корпорации Майкрософт в США и/или в других странах.
Другие упоминаемые здесь названия продуктов или компаний могут представлять собой торговые марки соответствующих владельцев.
Следующая таблица является обзором компонентов системы интеллектуальной обработки данных и связанных с ними компонентов Microsoft SQL Server 2000 и SQL Server 2005.
| Компонент | SQL Server 2000 | SQL Server 2005 |
|---|---|---|
| Извлечение, преобразование и загрузка данных (Extract, transformation, and load - ETL) | Data Transformation Services (DTS) | SQL Server 2005 Integration Services |
| Реляционное хранилище данных | Реляционная база данных SQL Server 2000 | Реляционная база данных SQL Server 2005 |
| Многомерная база данных | SQL Server 2000 Analysis Services | SQL Server 2005 Analysis Services |
| Добыча данных (Data Mining) | SQL Server 2000 Analysis Services | SQL Server 2005 Analysis Services |
| Управляемая система отчетности | SQL Server 2000 Reporting Services | SQL Server 2005 Reporting Services |
| Система пользовательских отчетов | SQL Server 2005 Reporting Services | |
| Пользовательские запросы и аналитика | Продукты Microsoft Office (Excel, Office Web Components, Data Analyzer, SharePoint Portal) | Продукты Microsoft Office (Excel, Office Web Components, Data Analyzer, SharePoint Portal) |
| Инструменты разработки баз данных | SQL Server 2000 Enterprise Manager, Analysis Manager, Query Analyzer и многие другие | SQL Server 2005 Business Intelligence Development Studio (Новый инструмент!) |
| Инструменты управления базами данных | Enterprise Manager, Analysis Manager | SQL Server 2005 SQL Server Management Studio (Новый инструмент!) |
В SQL Server 2005 добавлены два новых компонента: SQL Server Management Studio и SQL Server Business Intelligence Development Studio. Другие основные компоненты интеллектуальной обработки данных - Integration Services, Analysis Services OLAP, Analysis Services Data Mining и Reporting Services - в SQL Server 2005 значительно изменены и улучшены. Реляционная база данных SQL Server 2005 содержит несколько новых важных возможностей. Хотя инструменты запросов в Microsoft Office и не являются частью SQL Server 2005, их текущие версии смогут работать с SQL Server 2005. Функциональность интеллектуальной обработки данных в Microsoft Office будет развиваться в следующих версиях Microsoft Office.
Набор инструментов SQL Server 2005 Business Intelligence предоставляет полную интеграцию приложений интеллектуальной обработки данных:
Основной задачей компонентов интеллектуальной обработки данных в SQL Server 2005 является поддержка разработки и использования систем интеллектуальной обработки данных на предприятиях любого размера и всеми сотрудниками - не только менеджерами и аналитиками, но и руководителями оперативных подразделений и партнерами. Для выполнения этой задачи SQL Server 2005 создан как полноценная, интегрированная, легкая в использовании система, которая публикует данные в виде web-служб, обеспечивает прекрасную производительность на обычном аппаратном обеспечении и содержит множество новых возможностей, которые вы сможете использовать для разработки инновационных аналитических приложений.
Reporting Services требует установленной и правильно настроенной службы IIS. Мы настойчиво рекомендуем выделить время на настройку и установку IIS, так как Reporting Services является неотъемлемой частью набора компонентов SQL Server 2005 Business Intelligence.
Клиенты, знакомые с Analysis Services, могут быть удивлены отсутствием репозитория метаданных в Analysis Services. В SQL Server 2000 репозиторий Analysis Services поставлялся в виде базы данных Microsoft Access, но в Analysis Services 2005 репозитория метаданных нет. Вместо него метаданные базы данных Analysis Services хранятся в виде XML файлов и управляются Analysis Services. При желании для этих XML файлов может быть установлен контроль исходного кода.
Мы рекомендуем вам использовать Business Intelligence Development Studio для разработки и SQL Server Management Studio для управления объектами базы данных интеллектуальной обработки данных и их поддержки. Вы можете создать пакеты Integration Services, кубы Analysis Services и модели добычи данных и в SQL Server Management Studio, но Business Intelligence Development Studio предлагает большие возможности для разработки и отладки приложений интеллектуальной обработки данных.
Скорее всего, вы сможете узнать больше, создавая новые приложения вместо обновления существующих пакетов DTS и баз данных Analysis Services. Пересоздание с нуля существующего пакета или базы данных, если таковые имеются, может оказаться более полезным. После того, как вы ознакомитесь с новыми инструментами, возможностями и концепциями, вам будет проще обновить существующие объекты.
Многие клиенты будут использовать инструменты SQL Server для разработки систем со знакомой им структурой интеллектуальной обработки данных из одной или более систем-источников данных, используя Integration Services для заполнения реляционного хранилища данных с измерениями, которое в свою очередь будет использоваться для заполнения базы данных Analysis Services. Но SQL Server 2005 предоставляет большое количество возможностей для отступления от традиционной схемы, исключая некоторые компоненты или делая их виртуальными.
Microsoft SQL Server 2005 добавляет две новых возможности, зеркалирование баз данных (database mirroring) и снимки баз данных (database snapshot), которые облегчают создание и поддержку сервера отчетности. Теперь сервер отчетности SQL Server может иметь задержку обновления данных меньшую, чем раз в день. Также сервер отчетности спроектирован как резервная система для транзакционной системы.
Чтобы создать сервер отчетности, сначала создайте зеркальную копию базы данных, новую функциональность в SQL Server 2005, которая позволяет получить резервную систему (standby system) для "горячей замены" (high availability). Для дополнительной информации вы можете прочитать "Database Mirroring Concepts" в SQL Server Books Online. К зеркальной копии базы данных нет прямого доступа, и тут поможет еще одна новая функциональность, снимки базы данных.
Создание снимка базы данных на ее зеркальной копии предоставляет дополнительную копию данных для формирования отчетов. Снимок базы данных - это доступная только для чтения копия базы данных, сделанная в определенный момент времени, которая не обновляется по мере обновления данных в исходной базе. Снимки баз данных - это большая тема для обсуждения с множеством сценариев использования; для дополнительной информации вы можете прочитать "Understanding Database Views" в SQL Server Books Online. Сейчас будет достаточно отметить, что снимки баз данных очень эффективно хранят информацию в плане адресного пространства. Одновременно может существовать множество снимков баз данных для полного отражения данных для отчетности, хотя надо учитывать, что поддержка снимка базы данных оказывает некоторое влияние на саму транзакционную базу данных, на основе которой создан этот снимок.
Создавая снимок базы данных на ее зеркальной копии, вы фактически создаете резервный сервер для системы горячей замены. Снимок базы данных может служить для двух целей: в качестве сервера отчетности и в качестве резервного сервера для системы горячей замены.
Секционирование помогает:
В реляционном хранилище данных таблицы фактов являются очевидными кандидатами на секционирование, и чаще всего используемой стратегией секционирования является разбиение на секции по временным периодам.
Ниже представлены три шага, описанные в "Creating Partitioned Tables and Indexes" в SQL Server Books Online, которые требуются для создания секционированной таблицы:
Несколько таблиц могут использовать одну и ту же схему секционирования.
В этом документе рассматривается Range секционирование таблиц фактов, но этот документ не является полным описанием или учебным пособием по секционированию таблиц. Для дополнительной информации о секционировании таблиц смотрите SQL Server Books Online.
Чаще всего используемой схемой секционирования является секционирование таблицы фактов по временным периодам (date range), например, по годам, кварталам, месяцам или даже дням. В большинстве случаев секционирование большой таблицы или таблиц фактов по временным периодам дает большие преимущества в управляемости. Для лучшей производительности выполнения запросов таблица измерения Time также должна быть секционирована с помощью той же схемы секционирования.
Для быстрой загрузки данных модель восстановления базы данных должна быть либо Bulk Logged, либо Simple, а таблица должна быть либо пустой, либо содержать данные без индексов. Если эти требования выполняются, возможна загрузка без логирования. В SQL Server 2000, до появления секционированных таблиц, эти требования обычно выполнялись только при начальной загрузке данных истории в хранилище данных. Некоторые клиенты с большими хранилищами данных строили квази-секционированную структуру, создавая представление с UNION ALL для объединения отдельных физических таблиц; эти таблицы заполнялись при каждой загрузке без логирования. Такое решение проблемы не было идеальным. Но теперь в SQL Server 2005 секционированные таблицы обеспечивают превосходную функциональность.
В SQL Server 2005 вы не можете выполнить прямую загрузку данных в секцию без логирования. Однако вы можете осуществить загрузку данных в отдельную таблицу, которую мы назовем псевдо-секцией. При соблюдении определенных условий вы можете произвести переключение секций в секционированной таблице и включить псевдо-секцию в секционированную таблицу, что является операцией над метаданными, которая выполняется очень быстро. Такой подход удовлетворяет двум следующим требованиям:
Кроме того, для псевдо-секции может создаваться резервная копия как для отдельной таблицы, что повышает управляемость системы.
Секции в SQL Server 2005 значительно упрощают удаление устаревших данных из большой секционированной таблицы фактов. Просто создайте пустую псевдо-секцию, как было описано выше, и выполните переключение секций в секционированной таблице. В результате секционированная таблица будет содержать пустую секцию вместо заполненной секции, а в псевдо-секции появятся данные. Для этой псевдо-секции можно сделать резервную копию, при необходимости псевдо-секцию можно очистить или удалить.
При необходимости вы можете переопределить функцию секционирования для объединения всех пустых секций в одну.
ROW_NUMBER. Возвращает порядковый номер строки в результирующем наборе данных.
RANK. Возвращает ранг строк в результирующем наборе данных. Функция RANK идентична ROW_NUMBER на отсортированном наборе данных, но используется для работы с совпадающими строками. Все строки с одним и тем же значением сортировки получают ранг, совпадающий с порядковым номером первой из таких строк. Следующий ранг также совпадает с порядковым номером, полученным с помощью ROW_NUMBER. Другими словами, если есть две строки с одинаковым значением сортировки, которое идет первым, то они получат RANK=1, а третья строка будет иметь RANK=3. Строк с RANK=2 не будет.
DENSE_RANK. Возвращает ранг строк в результирующем наборе данных. Функция DENSE_RANK похожа на функцию RANK, но при ее использовании нет промежутков между рангами, которые есть при использовании функции RANK. В приведенном выше примере первая и вторая строки будут иметь RANK=1, а третья строка будет иметь RANK=2.
NTILE. Делит отсортированный результирующий набор данных на группы строк приблизительно одинакового размера.
Таким же образом можно использовать оператор UNPIVOT для разделения одной строки на несколько. В приведенном выше примере строка со столбцами [Actuals] и [Budgets] может быть превращена в несколько строк со значением соответствующего столбца в каждой.
В более ранних версиях SQL Server можно было написать сложные Transact-SQL команды SELECT для вращения данных. Операторы PIVOT и UNPIVOT предоставляют прямой механизм для вращения данных.
Рекурсивный запрос - это запрос к таблице с самообъединением. Два самых распространенных примера таких таблиц - это таблицы со списком сотрудников и менеджеров, и таблицы с ведомостями материалов, из которых изготовлены товары. Примером таблицы с самообъединением является таблица Employee в базе данных AdventureWorks.
Всегда было несложно написать запрос к таблице с самообъединением для выборки прямых отношений, например, для определения сотрудников, которые напрямую подчиняются менеджеру. Однако намного сложнее ответить на вопрос: "Сколько сотрудников работает в отделе менеджера?".
Для решения этой проблемы в реляционную базу данных SQL Server 2005 добавлена новая функциональность, которая называется "Рекурсивные общие табличные выражения" (Recursive common table expressions). Для дополнительной информации смотрите "WITH <common_table_expression>" в SQL Server Books Online.
В следующей таблице перечислены возможности Integration Services. Для более подробной информации о применении Integration Services для разработки ETL систем, смотрите SQL Server Books Online.
| Возможности Integration Services в SQL Server 2005 | Разработка ETL системы уровня предприятия | ETL платформа |
|---|---|---|
| Использование графического пользовательского интерфейса Business Intelligence Development Studio для создания пакетов Integration Services для приложений управления данными. Пакеты Integration Services проектируются, разрабатываются и отлаживаются в Business Intelligence Development Studio с помощью перетаскивания задач из панели инструментов, установки их свойств и указания для задач ограничений предшествования. | √ | |
| Использование мастеров SQL Server Management Studio для разработки простых пакетов Integration Services, которые выполняют обычные задачи, такие, как копирование базы данных (Copy Database). | √ | |
| Поставщики программного обеспечения могут встраивать функциональность Integration Services в свои продукты, создавая при необходимости мастера для генерации собственных пакетов. | √ | |
| Отделение потока управления от потока данных. Большинство пакетов Integration Services содержат множество задач потока управления, а также циклы и последовательности задач, которые настраиваются в панели потока управления (control flow pane). Одна из задач потока управления, задача Pipeline, является "рабочей лошадкой" пакета и имеет свою собственное окно проектирования для создания потоков данных. Разделение потока управления и потока данных упрощает чтение пакетов. | √ | |
| Можно определить и просматривать переменные пакетов. Переменные имеют область видимости, например, область видимости пакета, цикла или задачи. | √ | |
| Сложные ETL системы могут быть созданы с помощью пакетных сетей, с одним пакетом, вызывающим остальные. Вызываемые пакеты могут эффективно повторно использовать логику, переменные и контекст. При этом необходимость во вложенных пакетах теперь гораздо меньше, чем в DTS 2000. | √ | |
| Среда конфигурации пакета является расширяемой системой для настройки поведения пакета в различных ситуациях. | √ | |
| Пакеты Integration Services хранятся в виде XML файлов в файловой системе или в SQL Server. Для XML файлов Integration Services может быть назначен контроль исходного кода. | √ | √ |
| Мастер миграции пакетов DTS 2000 помогает проводить миграцию пакетов в Integration Services и выдает предупреждения, если при изменении пакетов под новую версию возникают проблемы. | √ | |
| В SQL Server 2005 включен DTS 2000 runtime для запуска пакетов DTS 2000 без их изменения под новую версию. | √ | |
| Операции в пакетах и результаты выполнения пакетов логируются в различных форматах и с помощью разных провайдеров. | √ | √ |
| Логика обработчика событий может быть определена один раз и использована много раз. | √ | √ |
| Интеграция с WMI означает, что пакеты могут реагировать на внешние события (например, завершение копирования файла) или генерировать события WMI, которые могут обработать другие процессы. | √ | √ |
| Возможность перезапуска пакетов с транзакционным контролем и контрольными точками для перехвата ошибок помогает администраторам управлять сложными пакетами, обрабатывающими большие объемы данных. | √ |
| Возможности Integration Services в SQL Server 2005 | Разработка ETL системы уровня предприятия | ETL платформа |
|---|---|---|
| Ограничения предшествования: Вы можете разработать пакет, передающий управление разным задачам в случае успешного выполнения предыдущей задачи, ошибки при выполнении или завершения выполнения. | √ | |
| Задачи с циклами включают циклы For, ForEach и Sequence. Разработчики пакетов могут легко выполнять различные действия над всеми (или над частью) таблицами в базе данных, файлами в папке или разделами куба в Analysis Services. | √ | |
| Глубокая интеграция с Analysis Services, с задачами управления, которые автоматически выполняют команды DDL Analysis Services, обрабатывают объекты Analysis Services или выполняют запросы добычи данных. Как будет рассмотрено далее в этом документе, канал Integration Services также интегрируется с Analysis Services. | √ | |
| Скрипты VB.NET доступны с помощью задачи Script Task. Другая задача, в которой можно использовать скрипты, ActiveX Script Task, в основном используется для обратной совместимости с DTS 2000. | √ | |
Задачи коммуникации включают:
| √ | |
Другие задачи потока управления включают:
| √ | |
| Дополнительные задачи могут быть созданы с помощью объектной модели Integration Services без особых усилий. | √ |
| Возможности Integration Services в SQL Server 2005 | Разработка ETL системы уровня предприятия | ETL платформа |
|---|---|---|
| Множество источников данных, трансформаций и приемников данных в канале потока данных. Данные считываются, комбинируются, обрабатываются и только после всех манипуляций записываются. Необходимость во множестве операций записи в таблицы уменьшена или исключена, также значительно улучшена производительность трансформации данных. | √ | |
| Задача Integration Services Pipeline считывает данные из множества гетерогенных источников данных. Расширяемая архитектура источников данных теперь позволяет получать данные из плоских файлов, источников OLEDB (включая DB2 и Oracle), и бинарных файлов. Также планируется поддержка дополнительных источников данных, включая источники, выдающие данные, структурированные каким-либо образом. | √ | √ |
| Дополнительные источники данных могут быть легко разработаны компанией Microsoft и ее партнерами. | √ | |
| Данные из множества источников данных могут быть объединены с помощью операторов Join, Lookup и Union. Эти операторы выполняются в памяти и не требуют записи в базу данных или файл. | √ | |
| Поток данных может быть разделен с помощью трансформаций Conditional Split и Multicast. Ядро компилятора Integration Services определяет, какие потоки данных могут быть обработаны параллельно. | √ | |
| Трансформации Character Map, Copy Map, Data Conversion и Derived Column предоставляют большие возможности для преобразования строк. Эти операторы являются скорее мастерами, чем просто операциями преобразования, и позволяют выполнять большое количество разнообразных трансформаций данных. | √ | |
| Некоторые задачи по преобразованию данных требуют сравнения данных во множестве строк. Трансформации Sort и Aggregate выполняют эти преобразования в потоке данных с огромной производительностью, намного превышающей производительность агрегирования в базе данных. | √ | |
| Некоторые задачи по преобразованию данных требуют сложной логики, такие, как Fuzzy Matching, Fuzzy Grouping, Time Dimension Generation, Pivoting и Unpivoting. Другие задачи, как, например, Dimension Key Management, требуют нескольких шагов для выполнения. Специальные мастера и технологии делают эти сложные операции доступными всем пользователям. | √ | |
| Преобразованные данные могут быть записаны в гетерогенные приемники данных, включая таблицы SQL Server, таблицы баз данных из OLEDB, плоские и бинарные файлы. | √ | √ |
| Преобразованные данные могут быть интегрированы с другими компонентами системы интеллектуальной обработки данных от Microsoft, включая базы данных Analysis Services и модели добычи данных. | √ | |
Потоки ошибок из шага трансформации могут быть обработаны различными способами:
| √ | √ |
| Дополнительные трансформации и приемники данных могут быть легко разработаны компанией Microsoft и ее партнерами. | √ |
| Возможности Integration Services в SQL Server 2005 | Разработка ETL системы уровня предприятия | ETL платформа |
|---|---|---|
| Разработчик пакетов может определять точки прерывания (Breakpoints) потока управления в каждой задаче потока управления. Точка прерывания может быть определена до выполнения задачи, после выполнения, или в нескольких местах во время выполнения задачи в процессе отладки. | √ | |
| Разработчик пакетов может добавлять Data Viewer в каждую трансформацию потока данных. Во время отладки Data Viewer выводит содержимое потока преобразованных на момент вывода данных. | √ | |
| Business Intelligence Development Studio встроен в Visual Studio. Задачи со скриптами и другие задачи с кодом языков программирования используют возможности этой среды разработки. | √ | √ |
| Развертывание пакета помогает пользователю связывать вместе все компоненты пакета, включая пользовательские скрипты и исполняемые файлы, для распространения в тестовых, рабочих и других пользовательских системах. | √ | √ |
Элегантная инфраструктура переменных и конфигураций также уменьшает необходимость создания сложных систем вложенных пакетов. Хорошо спроектированный единый пакет обычно удовлетворяет множеству требований; например, пакет может повторно использоваться в различных конфигурациях для загрузки большого количества таблиц измерений в хранилище данных с измерениями. В DTS 2000 сложная сеть DTS пакетов может состоять из 50-100 пакетов; в Integration Services десять пакетов уже считаются сложной сетью пакетов.
Улучшения, внесенные в OLAP функциональность Analysis Services 2005, можно сгруппировать в две категории:
| Новые возможности или улучшенная функциональность | Дизайн и разработка | Управление и операции |
|---|---|---|
| Универсальная модель измерений (Unified Dimensional Model) объединяет лучшие характеристики реляционной и OLAP моделей данных. Более подробно универсальная модель измерений рассматривается далее в этом документе. | √ | |
| Упреждающее кэширование (Proactive caching) дает вам возможность управлять приложениями с небольшой задержкой обновления данных практически без затрат на управление. Более подробно упреждающее кэширование рассматривается далее в этом документе. | √ | √ |
| Система ключевых показателей производительности (Key Performance Indicator, KPI) предоставляет простой серверный механизм определения корпоративных показателей. KPI содержит выражения значения, целевого значения, текущего статуса и тенденции, которые выводятся с помощью простых графических изображений, таких, как индикаторы (gauges) и светофоры (stoplights). | √ | |
| Механизм Translations обеспечивает простой, централизованно управляемый механизм для хранения и вывода аналитических данных пользователям на их языках. Одна аналитическая база данных может быть представлена на разных языках. | √ | |
MDX скрипты (MDX Scripts) являются новым механизмом определения вычисляемых членов, именованных наборов данных и вычислений ячеек.
MDX скрипты рассматриваются более подробно далее в этом документе. | √ | √ |
| Хранимые процедуры Analysis Services позволяют создавать внешние процедуры на таких языках программирования общеязыковой среды выполнения, как C++, VB или C. Хранимые процедуры расширяют возможности, предоставляемые пользовательскими функциями (user defined functions, UDFs) Analysis Services 2000. Более подробно хранимые процедуры Analysis Services рассматриваются далее в этом документе. | √ | |
| Улучшения при записи в куб (data writeback) включают повышенную в десять раз производительность. Аналитическое приложение может вносить изменения в агрегатную ячейку и при необходимости размещать агрегированные данные в данных листового уровня. | √ | √ |
Встроенные бизнес-правила, инструменты и мастера упрощают создание сложных систем:
|
√ | |
| Представления источников данных (Data Source Views) обеспечивают механизм для упрощения и расширения реляционной базы данных, лежащей в основе аналитического приложения. Более подробно представления источников данных рассматриваются далее в этом документе. | √ | |
| Языком определения данных (data definition language) в Analysis Services является XML. Репозитория метаданных Analysis Services больше нет, вместо него теперь используются файлы XML, которые хранятся на сервере Analysis Services и им же управляются. | √ | √ |
Web сервисы: XML for Analysis (XML/A) является встроенным стандартным протоколом для коммуникации с сервером Analysis Services. Появились новые типы приложений, простые в разработке - приложения, в которых объединены аналитика и операции реального времени.
| √ | √ |
Расчеты централизованы на сервере. Analysis Services 2005, в отличие от Analysis Services 2000, все расчеты выполняет на сервере. Это дает значительные преимущества:
Ценой этих улучшений является небольшое снижение производительности выполнения очень простых запросов, которые в Analysis Services 2000 выполнялись из клиентского кэша. | √ | √ |
| Инструменты разработки и управления (Business Intelligence Development Studio и SQL Server Management Studio) являются первой полной средой разработки для приложений интеллектуальной обработки данных. Новые инструменты помогают видеть и моделировать все ваши данные, и дают возможность быстрой разработки приложений. | √ | √ |
В Analysis Services 2005 была улучшена модель прав доступа. Различные роли и права доступа включают:
| √ | |
В Analysis Services 2005 включены более 150 изменений модели безопасности. Улучшения в модели безопасности включают:
| √ | |
Сервер Analysis Services 2005 генерирует события трассировки сервера (server trace events), которые могут отслеживаться с помощью таких инструментов, как SQL Server Profiler, который давно используется для реляционных баз данных SQL Server.
| √ | |
Повышенная производительность выполнения расчетов является результатом следующих улучшений:
| √ | |
| Analysis Services 2005 включает широкую поддержку архитектур среднего слоя. Объектная модель тонкого клиента (light object model footprint) предоставляет масштабируемый средний слой - масштабируемый до тысяч одновременно работающих пользователей. Скорость развертываний по глобальной сети, хотя это всегда не рекомендовалось, повышена по сравнению с SQL Server 2000. | √ | |
| Analysis Services 2005 поддерживает неограниченные размеры измерений. Измерениям больше не требуется кэшироваться в памяти. | √ | √ |
| Analysis Services 2005 поддерживает параллельную обработку разделов в стандартном наборе управленческих инструментов. | √ | |
SQL Server Management Studio может использоваться для управления всеми базами данных SQL Server. Это приложение обеспечивает интегрированное управление реляционной базой данных и Analysis Services, включая интегрированные инструменты для:
| √ | |
| Новая объектная модель, Analysis Management Objects (AMO), заменяет DSO. Модель DSO оставлена для обратной совместимости, а AMO предоставляет новые возможности, среди которых можно упомянуть возможность скриптования создания или изменения объекта из инструментов управления и разработки. | √ | √ |
Существует два основных пути создания аналитической базы данных:
И для одного, и для другого подхода, базовый дизайн системы предполагает известную структуру интеллектуальной обработки данных из одной или нескольких систем-источников данных, поставляющих данные для реляционного хранилища данных с измерениями, которое в свою очередь используется для заполнения базы данных Analysis Services. Однако SQL Server 2005 предоставляет много возможностей для отступления от этой традиционной схемы, исключая различные компоненты или делая их виртуальными. Некоторые альтернативные системы рассматриваются в разделе Универсальная модель измерений (Unified Dimensional Model) далее в этом документе.
Возможность получать данные из нормализованной базы данных является серьезным отличием от Analysis Services 2000, который требовал наличия структуры измерений типа "звезда" (star), "снежинка" (snowflake) или "плоская структура" (flattened). Возможность получения данных из нормализованной базы данных упрощает разработку приложений интеллектуальной обработки данных с очень низкой задержкой обновления данных.
Многие требования пользователей могут быть выполнены просто и с небольшими затратами с помощью создания базы данных Analysis Services напрямую на транзакционной базе данных, без предварительного создания формального хранилища данных. Если ваши данные нуждаются в минимальных изменении, очистке и интеграции, прежде чем они станут полезными для работы, то рассмотрите использование базы данных Analysis Services вместо существующей реляционной структуры. Вы сможете получить мощь и интерактивность Analysis Services и лучше управлять загрузкой данных в ваши транзакционные системы.
Хотя есть возможность создать и поддерживать базу данных Analysis Services напрямую из транзакционных систем, многие аналитические требования лучше реализуются с помощью предварительного создания реляционного хранилища данных. Сложная интеграция данных и задачи управления изменением данных лучше решаются с помощью классической архитектуры хранилищ данных, с базой данных Analysis Services в виде ядра выполнения запросов и анализа.
В источнике данных хранится информация для соединения с базой-источником данных. В представлениях источника данных (Data Source Views) содержится информация о наборе таблиц в базе-источнике данных. Эта информация не ограничена физической структурой таблиц в базе-источнике данных; вы можете добавить такую информацию, как связи, удобные названия для таблиц и столбцов, вычисляемые столбцы и именованные запросы. Представления источника данных могут совместно использоваться различными проектами интеллектуальной обработки данных. Представления источника данных особенно полезны, когда:
Усилия на задание удобных названий и связей в представлении источника данных окупаются упрощением разработки аналитического приложения.
Если нажать кнопку "Finish" сразу после этого начального окна, Cube Wizard создаст базу данных, измерения, иерархии, атрибуты и кубы Analysis Services. После этого вы сможете вручную отредактировать сгенерированную мастером структуру, но, в общем случае, структура базы данных получается лучше, если двигаться по всем страницам мастера, делая в них обдуманный выбор.
После экспериментов с Cube Wizard взгляните на Dimension Wizard, который вы можете запустить, нажав правой кнопкой мыши на "Dimensions" на панели Solution Explorer, и быстро создать с его помощью самые сложные измерения. После тщательного определения больших измерений, таких, как Product, Customer и Time, вы можете запустить Cube Wizard и добавить в базу данных эти заранее подготовленные измерения, когда понадобится.
Для предварительного просмотра и тестирования кубов и измерений в течение процесса разработки, создайте и разверните проект на заранее определенном целевом сервере, выбрав Deploy в главном меню Business Intelligence Development Studio. Также вы можете нажать F5 или выбрать Debug Start в главном меню Business Intelligence Development Studio. Будут запущены один или несколько инструментов отладки и просмотра, в зависимости от того, что вы указали при выборе Deploy. В зависимости от контекста, процесс развертывания запустит браузер кубов, отладчик MDX скриптов или браузер ключевых показателей производительности.
Возможно, вы захотите посмотреть на прототип системы после определения ее измерений, мер и кубов. Запустите обработку на базе данных разработки с небольшим количеством данных и проверьте, что данные и структуры выглядят так же, как и ожидалось.
Возможно, вы захотите добавить в прототип некоторые из наиболее сложных компонентов базы данных Analysis Services - ключевые показатели производительности (Key Performance Indicators), действия (Actions) и вычисления (Calculations). Если ваша база данных будет использоваться разными пользовательскими группами, которым будут нужны разные представления данных, рассмотрите использование проекций (Perspectives) и различных планов безопасности. Если вы планируете развернуть базу данных в разных странах для пользователей, говорящих на разных языках, вы можете добавить локализованные имена объектов с помощью инструмента Translations. И, наконец, в прототипе нужно оценить различные физические конфигурации, такие, как разделы (Partitions) и различные варианты упреждающего кэширования (Proactive Caching).
После разработки базы данных Analysis Service объекты базы данных разворачиваются на тестовом, промежуточном или рабочем сервере. Результат проекта, полученный на этапе сборки, может быть использован в качестве входящей структуры в утилите развертывания Analysis Services. Эта утилита помогает развертывать базу данных.
Альтернативным методом создания аналитического приложения SQL Server 2005 является выбор "Design BI model without data source" во втором окне мастера Cube Wizard. Путь по окнам мастера аналогичен такому же пути в SQL Server 2000 Accelerator for Business Intelligence. Мастер генерирует полноценное пользовательское приложение из шаблона, включая сложные структуры измерений и аналитические компоненты, а также при необходимости добавляет реляционное хранилище данных и пакеты Integration Services. Шаблоны могут поставляться Microsoft, интеграторами или независимыми поставщиками программного обеспечения.
Вы можете создать идентичные базы данных Analysis Services с помощью мастеров двумя путями - создать базу данных из базы-источника данных или базу данных из шаблона. Первый подход подразумевает, что вы создаете систему полностью вручную. Имена объектов и структур произвольны и начальный дизайн системы создаются на основе имен и структур базы-источника данных. Из шаблона также создается пользовательская база данных, но начальный дизайн создается на основе экспертного шаблона для определенной области.
Многие пользователи комбинируют эти два подхода. Широко распространенным случаем является создание базы данных Analysis Services из существующего источника и генерация измерения Time из шаблона.
Но раньше эти преимущества имели свою цену. В базах данных OLAP, включая Analysis Services 2000, было тяжело реализовать:
Скомбинировав лучшие качества традиционных OLAP анализа и реляционной структуры, Analysis Services 2005 представляет единую универсальную модель измерений, которая удовлетворяет требования, предъявляемые и к одной, и к другой системе. Набор кубов и измерений, определенных в SQL Server 2005, называется универсальной моделью измерений (Unified Dimensional Model, UDM). Преимущества и гибкость UDM внесут большие коррективы в процесс разработки. Раньше архитектор системы интеллектуальной обработки данных выбирал или реляционное, или OLAP хранилище, сравнивая преимущества этих альтернативных инфраструктур и издержки на них. Теперь архитектор разрабатывает универсальную модель измерений и определяет точку между двумя традиционными полюсами, в которой нужно расположить логический дизайн и физическую конфигурацию системы Analysis Services.
Структура Analysis Services 2005 больше похожа на реляционную структуру измерений. Измерение содержит множество атрибутов, каждый из которых может быть использован для запросов, возвращающих отфильтрованные данные или срезы, и каждый из которых может быть добавлен в иерархии, вне зависимости от взаимосвязей между данными.
Пользователи с опытом работы в OLAP понимают значение строгих иерархий, когда вы можете быть уверены, что Cities строго относятся к Regions и Countries. Такие естественные иерархии существуют и должны определяться, когда это необходимо: производительность выполнения запросов повышается при использовании таких иерархий.
В качестве примера рассмотрим измерение Customer. Реляционная таблица из источника данных имеет восемь столбцов:
Соответствующее измерение Analysis Services должно иметь семь атрибутов:
Есть естественная иерархия данных по {Country, Region, City, Customer}. Для более удобной навигации разработчик приложения может решить создать вторую иерархию по {Age, Gender}. Бизнес-пользователи не увидят никакой разницы между двумя иерархиями, но естественная иерархия выигрывает из-за индексной структуры - скрытой от пользователей - которая понимает иерархические связи.
Наиболее важными преимуществами новой структуры измерений являются:
В SQL Server 2005 наиболее типичной ситуацией будет ситуация, когда имеется один физический куб, содержащий одну или более группу мер. Факты в группе мер имеют определенную гранулярность, определяемую пересечением иерархий измерений. Запросы при этом автоматически перенаправляются в нужные группы мер. На физическом уровне в группах мер определяются разделы, аналогичные разделам в Analysis Services 2000.
Большое приложение может предоставлять пользователю большое количество измерений, групп мер и самих мер, что может затруднить навигацию по ним. Проекция, создаваемая в Cube Editor во вкладке Perspectives, создает "представление" части куба. Чтобы обеспечить необходимый уровень персонализации, роль доступа может быть связана с соответствующим набором проекций.
Мы ожидаем, что большинство баз данных Analysis Services 2005 будет состоять из одного куба с множеством групп мер и множеством проекций.
Другими важными улучшениями в структурах фактов куба и производительности выполнения запросов являются:
Одной из таких концепций является мера с частичным суммированием (semi-additive measure). Большинство обычных мер, таких, как [Sales], производят агрегацию по всем измерениям: [Total Sales] за весь период - это продажи всех товаров всем клиентам за все время. Напротив, мера с частичным суммированием по некоторым измерениям должна производить суммирование, а по некоторым - нет. Наиболее типичным случаем является остаток, например, количество единиц товара на складе. Агрегированный остаток по вчерашнему и сегодняшнему дням, конечно, не равен сумме вчерашнего и сегодняшнего остатков. Вместо этого результатом будет последний остаток, хотя иногда бывает и первый. В Analysis Services 2000 вы должны бы были определить сложное вычисление MDX для получения корректной меры. В Analysis Services 2005 начальный и конечный остатки являются встроенными агрегатными типами.
Меры Distinct Count также значительно улучшены в SQL Server 2005. Меру Distinct Count теперь можно определять на строковых данных, а также можно создавать запросы, выполняющие Distinct Count на произвольном наборе данных. SQL Server 2000 выполнял Distinct Count только на заранее определенной иерархической структуре.
Мастер Time Intelligence создает измерение вычислений времени, содержащее вычисления, сравнивающие некоторый период с предыдущим периодом, скользящие средние значения, и другие часто используемые конструкции вычислений времени.
MDX также является языком запросов к системам Analysis Services. Такие инструменты выполнения запросов, как Excel Pivot Tables, генерируют запросы MDX на основе пользовательских действий "drag and drop". Такое использование языка MDX не относится к MDX скриптам; MDX скрипты используются для серверных объектов, таких, как вычисляемые члены и вычисления ячеек, а не для пользовательских запросов.
После создания куба в Analysis Services 2005 этот куб содержит только структуру, данных в нем нет. MDX скрипт является частью такой структуры. Одна команда MDX скрипта всегда определена по умолчанию для выполнения агрегирований по умолчанию. Команда MDX скрипта по умолчанию содержит единственное выражение:
Calculate;После того, как куб полностью обработан, но до выполнения MDX скрипта по умолчанию, куб содержит данные листового уровня, но не содержит агрегатов. При выполнении MDX скрипта, состоящего из одного выражения, агрегаты рассчитываются и сохраняются.
MDX скрипт может содержать следующие команды, разделенные точками с запятой:
В пользовательском интерфейсе для разработки кубов в Business Intelligence Development Studio скрипты MDX - вычисляемые члены и именованные наборы - создаются в окне представлении Calculations. MDX скрипт можно просматривать в окне по умолчанию Calculations Form, что позволяет проверить корректность синтаксиса, или в окне Calculations Script, в котором MDX скрипт представлен в виде набора команд, разделенных точками с запятой. Вы можете переключаться между этими окнами, однако для работы окна Form на данный момент требуется, чтобы во всем скрипте был корректный синтаксис.
Существует несколько основных ключевых особенностей MDX скриптов:
SCOPE ([Customers].[Country].[Country].[USA]); [Measures].[Sales] = 100; END SCOPE;
Существует два типа хранимых процедур:
Хранимые процедуры могут использоваться для выполнения любых задач, которые может выполнить клиентское приложение.
Разные авторы и вендоры используют понятие "KPI" для обозначения разных концепций. В Microsoft SQL Server Analysis Services 2005 понятие KPI точно описывается следующими четырьмя шагами:
Пример нескольких KPI, выведенных на web-странице:

В Analysis Services 2005 представлены новые возможности обработки для оперативной интеллектуальной обработки данных. В Analysis Services 2000 кубы - вне зависимости от варианта их хранения или стратегии использования разделов - обрабатывались с помощью модели "Pull". В Analysis Services запускался процесс, который искал новую информацию в базе-источнике данных, обрабатывал и при необходимости сохранял детализированные данные, и рассчитывал и сохранял агрегаты.
Модель Pull по-прежнему поддерживается в Analysis Services 2005, но были добавлены еще две модели, которые особенно полезны для интеллектуальной обработки данных с небольшой задержкой обновления:
Производительность выполнения запросов в многомерном хранилище Analysis Services выше, чем в реляционном хранилище. Если кратко, то запросы выполняются быстрее всего в многомерном (MOLAP) хранилище. Обратной стороной этого является задержка обновления данных: многомерное хранилище является снимком реляционного источника данных. Основным преимуществом технологии упреждающего кэширования является максимизация производительности выполнения запросов и минимизация задержки обновления данных и затрат на администрирование.
Возможности упреждающего кэширования упрощают процесс управления устаревшими данными. Когда происходит транзакция в базе-источнике данных, например, новая транзакция по члену измерения или по факту, существующий "кэш" устаревает. Упреждающее кэширование обеспечивает настраиваемый механизм для определения, насколько часто нужно пересоздавать многомерный кэш; для определения, как выполняются запросы во время перестройки кэша; а также для запуска процесса перестройки кэша без административного вмешательства.
Упреждающее кэширование дает вам возможность устанавливать у куба автоматическое обновление его многомерного кэша при возникновении транзакции. Хотя Analysis Services обрабатывает данные очень быстро, обработка все-таки занимает определенное время. При необходимости ваша конфигурация упреждающего кэширования может автоматически перенаправлять запросы в реляционное хранилище, если обновление упреждающего кэша еще не закончено.
Когда вы разрабатываете конфигурацию вашего упреждающего кэша, важно помнить, что упреждающее кэширование настраивается для каждого многомерного раздела. Если раздел содержит данные за небольшой период времени, например, за час, то процесс обновления кэша происходит очень быстро. Наиболее сложные конфигурации упреждающего кэширования зависят от сообщения (notification), отправляемого реляционной базой данных в Analysis Services, о том, что произошло изменение данных. Реляционная база данных Microsoft SQL Server поддерживает такие сообщения. Для баз данных, которые не отправляют сообщения, Analysis Services может быть настроен на опрос базы данных на наличие изменений с помощью заранее созданного запроса.
Параметрами упреждающего кэширования являются:
Приложение добычи данных интегрирует модель добычи данных в ежедневные операции вашего бизнеса. Целью многих проектов добычи данных является создание аналитического приложения, которое ваши бизнес-пользователи, партнеры и клиенты смогут использовать каждый день, не задумываясь о тех сложных вычислениях, которые производятся в приложении. Есть два основных шага в достижении этой цели - создать модель добычи данных и создать приложение. SQL Server 2005 Data Mining делает реализацию обоих этих шагов легче, чем когда бы то ни было.
Целью Microsoft для обеспечения функциональности добычи данных в SQL Server 2005 является создание инструментов, которые:
Практически с полной уверенностью можно сказать, что каждый читатель этого документа уже "использовал" приложение добычи данных. Если вы покупали книгу или музыкальное произведение через интернет и получали рекомендацию, что "другие покупатели предпочли то-то", или если компания-эмитент вашей кредитной карты просила вас проверить подозрительную транзакцию, или если ваш бакалейный магазин печатает персональные купоны на вашем чеке, то вы использовали приложение добычи данных. До этого момента разработка таких приложений фокусировалась на самых важных задачах самых больших компаний - тех, которые могут себе позволить небольшие аналитические способности и большие затраты на разработку, что обычно требовалось для создания приложения добычи данных. Так же, как технологии OLAP от Microsoft помогли вырасти рынку OLAP, так и сейчас мы ожидаем развития технологий добычи данных на предприятиях и в отделах корпораций, которые раньше не могли разрабатывать такие приложения.
Используйте инструменты SQL Server 2005 Data Mining для исследования наборов данных для создания шаблонов, а затем создавайте прогнозы на основе этих шаблонов. В этом и есть вся суть добычи данных: исследование, создание шаблонов и прогнозирование на основе этих шаблонов.
Инструменты добычи данных хороши для решения множества задач. Задачи бизнеса, примерно разбитые на категории, перечислены в следующей таблице.
| Аналитическая задача | Примеры | Алгоритмы Microsoft |
|---|---|---|
| Классификация: Назначение событий заранее определенным классам, таким, как "Хороший" или "Плохой" |
|
|
| Сегментирование: Разработка системы для группирования одинаковых событий |
|
|
| Ассоциирование: Глубокий поиск корреляций |
|
|
| Прогнозирование временных рядов: прогнозирование будущего |
|
|
| Прогнозирование: прогнозирование значения для нового события (например, для нового покупателя) на основе значений для подобных событий (таких, как существующие покупатели) |
|
|
| Анализ отклонений: определение, как событие или сегмент отличается от других |
|
|
SQL Server 2005 поставляется с самыми популярными алгоритмами добычи данных.
Наилучшей фигурой для разработки модели добычи данных является сотрудник со знаниями как бизнеса, так и информационных технологий. Разработчику модели поможет знание статистики, понимание ключевых задач бизнеса, с которыми сталкивается предприятие, знание данных и взаимосвязей между ними, а также умение работать с инструментами SQL Server 2005 для манипулирования данными и их сохранения. Таким человеком скорее всего окажется член команды, работающей с хранилищем данных.
Как новичок в области добычи данных, приготовьтесь потратить несколько недель на то, чтобы разобраться с данными, инструментами и альтернативными алгоритмами во время создания прототипа модели. Используйте сервер разработки, на котором у вас будут права администратора базы данных. Начальные этапы создания модели являются исследовательскими - вероятно, вы захотите реструктурировать ваши данные и поэкспериментировать с разными подходами. Также вы скорее всего захотите в начале работать с небольшим набором данных, увеличивая набор данных по мере того, как начнете яснее видеть дизайн модели. В фазе прототипирования не беспокойтесь о создании "промышленного" приложения. Используйте Integration Services или другие инструменты, которые вам наиболее удобны, для выполнения необходимых манипуляций с данными. Ведите журнал с указанием всех необходимых изменений, но не ждите, что все, что вы сделаете, станет частью рабочего приложения.
Вам нужно будет приготовить два набора данных, один для разработки моделей и один для тестирования точности моделей, для того, чтобы выбрать лучшую модель для решения вашей бизнес-задачи. Когда вы будете решать, как выделить набор данных из всех данных, убедитесь, что данные выбираются непредвзято. Например, выбирайте каждого десятого покупателя или выделите набор данных, ориентируясь по первому символу фамилии, или по любому другому атрибуту.
В процессе разработки модели добычи данных требуется сделать выбор в таких вопросах, как:
Если вы не знаете, какой тип алгоритма лучше использовать для решения вашей бизнес задачи, вам лучше начать с алгоритма деревьев принятия решений или алгоритма Naïve Bayes для исследования данных. Если вы не знаете, какие атрибуты выбрать в виде параметров алгоритма, выберите их все. Используйте окно сетевых зависимостей, чтобы создать представление, которое поможет вам упростить сложную модель.
В течение фазы разработки прототипа модели вам, возможно, захочется создать связанные модели (related models), чтобы оценить их и выбрать лучшие алгоритм и модель. Используйте диаграмму Mining Accuracy для определения, какая модель делает самое точное прогнозирование. Вероятно, вам также захочется создать связанные модели, чтобы провести анализ различными алгоритмами на одном и том же наборе данных. Эти модели отработают быстрее, если будут определены как связанные, а не независимые модели.
Когда вы создадите и протестируете прототип модели, вы можете создать и протестировать реальную модель добычи данных. Если вам понадобится преобразование данных перед их передачей ядру добычи данных, то для этого вам следует разработать рабочий процесс. В некоторых случаях вы можете захотеть заполнить модель добычи данных напрямую из канала Integration Services. Если прототип модели был разработан на основе небольшого набора данных, вам понадобится оценить альтернативные модели еще раз на полном наборе обучающих данных.
Большинство корпоративных клиентов разрабатывают клиентское приложение добычи данных в виде Web или Win32 приложения, например ASP страницы. Модель добычи данных к этому моменту уже готова, и приложение выполняет прогнозирование по клиенту, основываясь на том, что клиенты выбрали или ввели в приложении электронной коммерции. Такое приложение может быть очень простым; единственной необычной частью этого приложения будет выполнение запроса прогнозирования.
Разработчик приложения добычи данных необязательно должен быть именно тем человеком, который разработал модель добычи данных. Разработчик приложения должен обладать обычными навыками разработки, без глубокого знания бизнеса или статистики.
Технологии добычи данных в SQL Server делают процесс создания автоматизированного приложения добычи данных очень простым. Этот процесс состоит из двух шагов:
Некоторые клиенты, особенно независимые поставщики программного обеспечения, могут захотеть создать приложение, которое генерирует модель добычи данных. Генерация модели в таком приложении заменит разработку модели добычи данных в Business Intelligence Development Studio, возможно, для определенной области, такой, как web-аналитика. В этом случае в ваш проект потребуется включить Microsoft.DataWarehouse.Interfaces для получения доступа к Analysis Management Objects (AMO).
Создание модели добычи данных:
CREATE MINING MODEL CreditRisk (CustID LONG KEY, Gender TEXT DISCRETE, Income LONG CONTINUOUS, Profession TEXT DISCRETE, Risk TEXT DISCRETE PREDICT) USING Microsoft_Decision_Trees
Обучение модели добычи данных:
INSERT INTO CreditRisk (CustId, Gender, Income, Profession, Risk) SELECT CustomerID, Gender, Income, Profession, Risk From Customers
Прогнозирование поведения на основе модели добычи данных:
SELECT NewCustomers.CustomerID, CreditRisk.Risk, PredictProbability(CreditRisk) FROM CreditRisk PREDICTION JOIN NewCustomers ON CreditRisk.Gender=NewCustomer.Gender AND CreditRisk.Income=NewCustomer.Income AND CreditRisk.Profession=NewCustomer.Profession
Reporting Services является полноценной серверной платформой для создания, управления и доставки традиционных и интерактивных отчетов. Reporting Services включает все необходимые вам современные возможности создания, доставки и управления отчетами. Кроме того, в SQL Server 2005 появилась новая возможность создания пользователями собственных отчетов. Эта новая функциональность доступна в Report Builder. В то же время, модульный дизайн Reporting Services и большое количество Application Programming Interfaces (APIs) дают возможность разработчикам программного обеспечения, поставщикам данных и предприятиям интегрировать отчетность в унаследованные системы или приложения сторонних производителей.
Reporting Services поставляется с SQL Server 2005 и включает:
Reporting Services дает возможность легко создавать и традиционные, и интерактивные отчеты и доставлять их большому количеству людей, используя гибкие систему подписки и механизмы доставки. Reporting Services также предоставляет возможности обеспечения безопасности и управления в сложных бизнес-средах с высокими требованиями. Также в SQL Server 2005 появилась новая возможность для конечных пользователей создавать свои собственные отчеты.
Reporting Services предоставляет уникальное сочетание характеристик:
| Возможности при создании отчетов | Инструменты |
|---|---|
| Большое количество поддерживаемых источников данных | Microsoft SQL Server
Microsoft Analysis Services Любой источник данных, совместимый с OLE DB Любой источник данных, совместимый с ODBC |
| Гибкие инструменты разработки | Report Designer (требуется Visual Studio 2005)
Язык описания отчетов (Report Definition Language, RDL) на основе XML Инструменты сторонних производителей, генерирующие RDL |
| Гибкие форматы отчетности | Свободная форма (Freeform)
Табличная форма (Table) Матричная форма (Matrix) Диаграммы (Charts) Параметризованные отчеты, использующие фильтрацию реального времени Сортировка и группировка Детализация (Drillthrough) Связанные отчеты |
| Гибкие редакторы запросов | Инструмент генерации SQL запросов
Инструмент генерации MDX запросов (оба находятся в Report Designer) |
| Модульное выполнение отчетов | Рендеринг - это отдельный процесс, не связанный с выполнением запроса; один и тот же отчет может рендериться в множество форматов.
Выполнение отчета может выполняться по расписанию или по требованию. |
| Разработка конечными пользователями | Report Builder для конечных пользователей, чтобы они могли создавать свои собственные отчеты
Дизайнер модели отчета (в BI development studio) |
Так как определения отчетов, папки и ресурсы хранятся в базе данных SQL Server, вы можете использовать другие инструменты, такие, как SQL Server Management Studio, для управления метаданными, или воспользоваться приложениями сторонних производителей, использующими документированные API.
В Reporting Services реализована гибкая модель безопасности на основе ролей для защиты отчетов и ресурсов отчетов. Эту модель можно использовать для широкого диапазона нужд безопасности. Reporting Services включает расширяемые интерфейсы для интеграции других моделей безопасности, если в этом возникнет потребность.
| Возможности управления отчетами | Инструменты |
|---|---|
| Метаданные отчетов |
|
| Управление источниками данных |
|
| Управление параметрами |
|
| Расписания выполнения отчетов | Интегрированы с SQL Server Agent |
| Параметры выполнения | "Живой" отчет, кэшированный отчет или отчет-снимок. Отчет-снимок в Reporting Services - это хранимая копия набора данных отчета - результата выполнения запроса при запуске отчета. |
| История предыдущих выполнений отчета | Каталогизированный список отчетов-снимков, хранящихся для повторного использования при необходимости |
| Безопасность отчетности | Пользователи, группы и роли |
| Report Server Web Application | Web-инструмент управления для:
|
| Гибкие API для управления | Web Service API |
| Возможности доставки отчетов | Инструменты |
|---|---|
| Набор настроек рендеринга отчетов |
|
| Гибкие настройки доставки |
|
| SharePoint Integration |
|
Все широко известные инструменты - реляционная СУБД SQL Server, Integration Services, Analysis Services OLAP, Data Mining и Reporting Services - значительно улучшены. Такие новые инструменты, как Business Intelligence Development Studio и SQL Server Management Studio, еще больше расширяют платформу интеллектуальной обработки данных Microsoft. Каждый инструмент является передовым и разработан для того, чтобы вы могли сделать больше, прикладывая меньше усилий - создавать, развертывать и управлять большими приложениями интеллектуальной обработки данных быстрее и лучше, чем когда-либо, с помощью менее мощного аппаратного обеспечения и меньших команд обслуживающего персонала.