Обзор логической архитектуры (службы Analysis Services — многомерные данные)
Службы Analysis Services работают в режиме развертывания сервера, который определяет архитектуру памяти и среду выполнения, используемую моделями Analysis Services различных типов. Режим сервера определяется во время установки. Режим многомерных данных и интеллектуального анализа данных поддерживает традиционную среду OLAP и интеллектуальный анализ данных. Табличный режим поддерживает табличные модели. Режим интеграции с SharePoint относится к экземпляру служб Analysis Services, который установлен в качестве PowerPivot для SharePoint и используется для загрузки и выполнения запросов к моделям данных Excel или PowerPivot в книге.
В этом разделе рассматривается основная архитектура служб Analysis Services, применяемая в режиме многомерных данных и интеллектуального анализа данных. Дополнительные сведения о других режимах см. в разделах Табличное моделирование (табличные службы SSAS) и Компонент по режиму сервера или типу решения (SSAS).
Базовая архитектура
Экземпляр служб Analysis Services может содержать несколько баз данных, а в любой базе данных могут одновременно храниться объекты OLAP и объекты интеллектуального анализа данных. Приложения подключаются к указанному экземпляру служб Analysis Services и к указанной базе данных. На серверном компьютере может эксплуатироваться несколько экземпляров служб Analysis Services. Экземпляры служб Analysis Services именуются как «<ИмяСервера>\<ИмяЭкземпляра>». В следующей иллюстрации показаны все упомянутые связи между объектами служб Analysis Services.
Основные классы представляют собой минимальный набор объектов, требуемый для формирования куба. Этот минимальный набор объектов включает измерение, группу мер и секцию. Определение статистической обработки является необязательным.
Измерения создаются на основе атрибутов и иерархий. Иерархии формируются с использованием упорядоченного набора атрибутов, такого, что каждый атрибут соответствует одному из уровней в иерархии.
Кубы создаются на основе измерений и групп мер. Измерения в коллекции измерений куба принадлежат к коллекции измерений базы данных. Группы мер — это коллекции мер, которые имеют одно и то же представление источника данных и одно и то же подмножество измерений в кубе. Группа мер имеет одну или несколько секций, предназначенных для управления физическими данными. Группа мер может иметь применяемую по умолчанию статистическую схему. Статистическая схема по умолчанию может использоваться во всех секциях в группе мер; кроме того, каждая секция может иметь собственную статистическую схему.
Объекты сервера
Каждый экземпляр служб Analysis Services в AMO рассматривается как отдельный объект сервера; каждый отдельный экземпляр подключается к объекту Server с помощью отдельного соединения. Каждый объект сервера содержит один или несколько источников данных, представлений источников данных и объектов базы данных, а также сборки и роли безопасности.Объекты измерений
Каждый объект базы данных содержит несколько объектов измерения. Каждый объект измерения содержит один или несколько атрибутов, которые организованы в виде иерархий.Объекты куба
Каждый объект базы данных содержит один или несколько объектов куба. Куб задается его мерами и измерениями. Меры и измерения куба выводятся из таблиц и представлений в представлении источника данных, на котором основан куб или который создан из определений мер и измерений.
Наследование объектов
Объектная модель ASSL содержит много повторяющихся групп элементов. Например, группа элементов «Dimensions contain Hierarchies» определяет иерархию измерений элемента. И в кубах Cubes, и в группах мер MeasureGroups содержится группа элементов «Dimensions contain Hierarchies».
Если элемент не переопределяется явно, он наследует все характеристики этой повторяющейся группы элементов от более высокого уровня. Например, значения Translations для измерения куба CubeDimension являются такими же, как и значения Translations для элемента Cube, являющегося его предком.
Чтобы иметь возможность явно переопределять свойства, унаследованные от объекта более высокого уровня, не обязательно явно повторять в объекте всю структуру и свойства объекта высокого уровня. Единственными свойствами, которые требуют явного определения в объекте, являются те свойства, которые необходимо переопределить. Например, в измерении куба CubeDimension могут быть перечислены только те иерархии Hierarchies, которые должны быть запрещены для использования в кубе Cube, или те, что требуют изменения признака видимости, или же те, для которых некоторые подробности Level не были предусмотрены на уровне Dimension.
Некоторые свойства, заданные в объекте, предоставляют применяемые по умолчанию значения для дочерних объектов или объектов-потомков. Например, Cube.StorageMode предоставляет значение по умолчанию для Partition.StorageMode. Что касается унаследованных значений по умолчанию, то в ASSL для унаследованных значений по умолчанию применяются следующие правила.
Если свойство для дочернего объекта не определено в элементе XML, то по умолчанию в качестве значения свойства применяется унаследованное значение. Но, если выполняется запрос этого значения с сервера, сервер возвращает неопределенное значение элемента XML.
Возможность определить программным путем, было ли задано свойство дочернего объекта непосредственно на дочернем объекте или унаследовано, отсутствует.
Пример
Куб «Импорт» содержит две меры («Пакеты» и «Последняя дата») и три связанных измерения («Маршрут», «Источник» и «Время»).
Наименьшие буквенно-цифровые значения в кубе — это элементы измерений. Примеры элементов — «Наземный» (элемент измерения «Маршрут»), «Африка» (элемент измерения «Источник») и «1-й квартал» (элемент измерения «Время»).
Меры
Значение в ячейках куба представляют две меры — «Пакеты» и «Последняя дата». Мера «Пакеты» представляет число импортированных посылок; для статистической обработки фактов используется функция Sum. Мера «Последняя дата» представляет собой дату получения; для статистической обработки используется функция Max.
Измерения
Измерение «Маршрут» представляет пути, которыми импортируемый товар достигает своего назначения. В число элементов этого измерения входят «наземный», «не наземный», «воздушный», «морской», «дорожный» и «железнодорожный». Измерение «Источник» представляет место производства импортируемого товара, например Азию или Африку. Измерение «Время» представляет кварталы и полугодия.
Статистические вычисления
Бизнес-пользователи куба могут определять значения его мер для каждого элемента в каждом измерении независимо от уровня элемента в измерении, поскольку службы Analysis Services вычисляют значения верхних уровней по мере необходимости. Например, значения меры в предыдущей иллюстрации могут быть вычислены в соответствии с обычной календарной иерархией с использованием иерархии «Календарное время» в измерении «Время», как показано на следующей диаграмме.
Помимо статистических вычислений с использованием одного измерения, возможна статистическая обработка мер с использованием сочетаний элементов из различных измерений. Это позволяет бизнес-пользователям вычислять меры в нескольких измерениях одновременно. Например, если бизнес-пользователь хочет проанализировать квартальный импорт, прибывший по воздуху из восточного и западного полушарий, он может создать запрос к кубу, чтобы получить следующий набор данных.
Посылки |
Последняя |
|||||||
---|---|---|---|---|---|---|---|---|
Все источники |
Восточное полушарие |
Западное полушарие |
Все источники |
Восточное полушарие |
Западное полушарие |
|||
Все время |
25110 |
6547 |
18563 |
29-дек-99 |
22-дек-99 |
29-дек-99 |
||
Первое полугодие |
11173 |
2977 |
8196 |
28-июн-99 |
20-июн-99 |
28-июн-99 |
||
Первый квартал |
5108 |
1452 |
3656 |
30-мар-99 |
19-мар-99 |
30-мар-99 |
||
Второй квартал |
6065 |
1525 |
4540 |
28-июн-99 |
20-июн-99 |
28-июн-99 |
||
Второе полугодие |
13937 |
3570 |
10367 |
29-дек-99 |
22-дек-99 |
29-дек-99 |
||
Третий квартал |
6119 |
1444 |
4675 |
30-сен-99 |
18-сен-99 |
30-сен-99 |
||
Четвертый квартал |
7818 |
2126 |
5692 |
29-дек-99 |
22-дек-99 |
29-дек-99 |
После определения куба можно создать новые агрегаты или изменить существующие агрегаты, установив параметры наподобие того, вычисляются ли агрегаты предварительно во время обработки или же вычисляются во время запроса. См. также Агрегаты и статистические схемы.
Сопоставление мер, атрибутов и иерархий
Меры, атрибуты и иерархии в примере куба выводятся из следующих столбцов таблиц фактов и измерений куба.
Мера или атрибут (уровень) |
Члены |
Исходная таблица |
Исходный столбец |
Образец значения столбца |
---|---|---|---|---|
Мера «Посылки» |
Неприменимо |
ImportsFactTable |
Пакеты |
12 |
Мера «Последняя дата» |
Неприменимо |
ImportsFactTable |
Последняя |
03-май-99 |
Уровень категории «Маршрут» в измерении «Маршрут» |
не наземный, наземный |
RouteDimensionTable |
Route_Category |
Не наземный |
Атрибут «Маршрут» в измерении «Маршрут» |
воздушный, морской, дорожный, железнодорожный |
RouteDimensionTable |
Маршрут |
Морской |
Атрибут «Полушарие» в измерении «Источник» |
Восточное полушарие, западное полушарие |
SourceDimensionTable |
Полушарие |
Восточное полушарие |
Атрибут «Континент» в измерении «Источник» |
Африка, Азия, Австралия, Европа, Северная Америка, Южная Америка |
SourceDimensionTable |
Континент |
Европа |
Атрибут «Полугодие» в измерении «Время» |
Первое полугодие, второе полугодие |
TimeDimensionTable |
Полугодие |
Второе полугодие |
Атрибут «Квартал» в измерении «Время» |
Первый квартал, второй квартал, третий квартал, четвертый квартал |
TimeDimensionTable |
Квартал |
Третий квартал |
Данные в одной ячейке куба обычно выводятся из нескольких строк таблицы фактов. Например, ячейка куба на пересечении элемента «воздушный», элемента «Африка» и элемента «1 квартал» содержит значение, выведенное статистическим вычислением следующих рядов в таблице фактов ImportsFactTable.
Import_ReceiptKey |
RouteKey |
SourceKey |
TimeKey |
Пакеты |
Последняя |
3516987 |
1 |
6 |
1 |
15 |
10-янв-99 |
3554790 |
1 |
6 |
1 |
40 |
19-янв-99 |
3572673 |
1 |
6 |
1 |
34 |
27-янв-99 |
3600974 |
1 |
6 |
1 |
45 |
02-фев-99 |
3645541 |
1 |
6 |
1 |
20 |
09-фев-99 |
3674906 |
1 |
6 |
1 |
36 |
17-фев-99 |
В предыдущей таблице каждая строка содержит одни и те же значения в столбцах RouteKey, SourceKey и TimeKey; это означает, что эти столбцы ссылались на одну и ту же ячейку куба.
Показанный здесь пример представляет очень простой куб, в том смысле, что это куб с единственной группой мер, а все таблицы измерений соединены с таблицей фактов по схеме «звезда». Другая схема — это схема «снежинка», в которой одна или несколько таблиц измерений присоединяются к другой таблице измерения, а не напрямую к таблице фактов. См. также Измерения (службы Analysis Services — многомерные данные).
В приведенном здесь примере содержится только одна таблица фактов. Когда в кубе есть несколько таблиц фактов, меры каждой из них организуются в группы мер, причем группа мер связана с соответствующим набором измерений согласно заданным связям измерений. Эти связи определяются указанием участвующих таблиц в представлении источника данных и гранулярности связи. См. также Связи измерений.