Проектирование моделей отчетов на основе кубов
Модели отчетов формируются на основе кубов SQL ServerAnalysis Services (SSAS) с помощью диспетчера отчетов или MicrosoftOffice SharePoint Server 2007 при работе в режиме интеграции с SharePoint. До создания отчета из куба службы SSAS необходимо быть администратором базы данных служб Analysis Services. После формирования модели изменить ее невозможно. Если решено изменить содержимое базы данных, следует заново сформировать модель, чтобы она отражала изменения.
Строки соединения
При построении модели отчета на основе базы данных служб Analysis Services строка соединения выглядит следующим образом.
Data Source=<сервер_отчетов>;Initial Catalog=<имя_базы_данных>
Примечание |
---|
Если база данных служб Analysis Services содержит переводы кубов, можно создать переведенные версии модели отчета. Чтобы создать модель для каждого языка, укажите код языка (LCID) в строке соединения источника данных. Например, для создания модели для китайского языка строка соединения будет выглядеть так: Data Source=<сервер_отчетов>;Initial Catalog=<имя_базы_данных>;LocaleIdentifier=3012. Дополнительные сведения о переводах кубов см. в разделе Переводы кубов. |
Правила формирования моделей на основе баз данных служб Analysis Services
Ниже приведен перечень общих правил, применяемых при создании модели из куба:
Группам мер сопоставляются сущности. Одна модель отчета включает все кубы базы данных служб Analysis Services.
Измерения сопоставляются сущностям. Измерения фактов не порождают другие сущности. Предположим к примеру, что в кубе имеется группа мер «Продажи» и измерение фактов «Подробности продаж». При формировании модели из этого куба модель создаст единственную сущность, которая будет содержать все меры группы «Продажи» и все атрибуты измерения «Подробности продаж».
Связи между группами мер и измерениями преобразуются в роли в рамках модели. Ссылочные связи (применяемые для косвенных отношений) и связи «многие ко многим» определяются в модели как роли.
Меры преобразовываются в атрибуты сущностей.
Атрибуты измерений преобразовываются в атрибуты сущностей. В моделях не применяется концепция иерархии. Поэтому атрибут измерения включается в модель, если он видим или если есть видимая иерархия, содержащая тот уровень, на котором он основан. Ключевой атрибут измерения включается всегда, даже если он помечен как невидимый.
Атрибуты сущностей из измерений и атрибуты измерений организованы в папки в соответствии с любыми папками отображения, определенными в данном кубе.
Перспективы кубов становятся перспективами модели отчета. Кроме того, каждый куб сам становится перспективой в модели. Поэтому пользователи построителя отчетов должны выбрать перспективу в своей модели, а не в модели верхнего уровня.
Вычисляемые меры (вычисляемые элементы) становятся атрибутами сущности, соответствующей той группе мер, к которой относятся эти вычисляемые меры.
Именованные наборы, определенные на ключевом атрибуте измерения, преобразуются в подтип сущности. Например, именованный набор «Крупные заказчики» становится подтипом сущности «Заказчик». Именованные наборы, основанные не на одном ключевом атрибуте, не учитываются.
Ключевые индикаторы производительности (KPI) преобразуются в атрибуты сущности, соответствующей той группе мер, к которой отнесены KPI. Для каждого KPI создается несколько атрибутов, отражающих разные компоненты KPI (значение, цель, состояние и тренд). Кроме того, для состояния и тренда создаются вариации атрибутов, которые содержат соответственно атрибуты StatusGraphic и TrendGraphic. Реальное изображение включается в отчет при использовании этих атрибутов.
Элементы баз данных служб Analysis Services, исключаемые из моделей отчетов
Следующие элементы служб SSAS не появляются в сформированной модели:
Вычисляемые элементы (не входящие в измерение мер).
Иерархии типа «родители-потомки» не преобразуются в атрибуты или роли модели. Но ключевой атрибут все же включается, хотя применение этого атрибута в отчете приведет к показу значения меры для самого ключевого элемента, а не значения, полученного обобщением по иерархии типа «родители-потомки». Кроме того, это повлияет на производительность.
Действия. Сюда входят действия детализации. Функциональные возможности детализации всегда обусловлены статистическими атрибутами, независимо от того, какие действия детализации определены в кубе. Так, если пользователь запустит построитель отчетов вне модели и щелкнет статистическую функцию для отображения дополнительной информации, то появятся пустые таблицы.
Связи атрибутов. Измерение порождает одну сущность, любые связи между атрибутами не влияют на модель отчета.
Связи между группой мер и измерением не учитываются, если они не основаны на ключевом атрибуте измерения. Например, группа мер «Бюджет» может быть связана с измерением «Время» на уровне «Месяц», а не на уровне «День». В этом случае в модель отчета не будет включена связь между сущностями «Бюджет» и «Время».
Вопросы проектирования кубов
При проектировании куба, для которого планируется сформировать модель отчета, следует учитывать следующее:
Вычисляемые меры или ключевые индикаторы производительности, для которых нет связанной группы мер, не появятся в модели отчета. Чтобы настроить связанную группу мер для вычисляемой меры, необходимо воспользоваться диалоговым окном Свойства вычислений.
Запросы, посылаемые построителем отчетов, всегда запрашивают значение элемента для элементов измерения и используют их для сортировки и фильтрации. По умолчанию в службах Analysis Services принято, что если у атрибута есть привязка по имени, то значением элемента будет имя этого элемента, а если привязки по имени нет, то значением элемента будет ключ элемента. Однако каждый атрибут может обладать явной привязкой к столбцу, которая обеспечивает значение элемента и должна возвращать это значение «истинного» типа данных. Например, у атрибута «Дата» в Analysis Services может быть ключ с типом DateTime (например, “4/25/2008”) и имя/заголовок, которое является текстовым описанием («Пятница, 25-е апреля, 2008»). В этом случае проектировщик куба должен использовать для MemberValue ключ, чтобы обеспечить правильную сортировку и фильтрацию. Хотя это следует учитывать для любых атрибутов, но особенно важно учитывать для атрибутов даты и времени. Для атрибутов даты и времени сформированная модель будет содержать два атрибута модели отчета: один как заголовок и его вариант, который содержит истинное значение даты и времени.
Свойство атрибута измерения InstanceSelection используется для задания свойств InstanceSelection (для сущностей) и ValueSelection (для атрибутов). Они определяют, как пользователь сможет выбирать экземпляры в построителе отчетов (например, используя раскрывающийся список).
Свойство атрибута измерения GroupingBehavior используется для задания свойства атрибута модели DiscourageGrouping.
У любых атрибутов измерения, являющихся изображениями, для привязки атрибута измерения должен быть установлен тип данных Image.
Для атрибутов, полученных из мер, всегда включена возможность детализации, но в применяемые по умолчанию детализированные отчеты включен минимум подробностей. Для исправления этого следует воспользоваться пользовательскими детализированными отчетами.
Если в куб включены переводы, необходимо создать по одному источнику данных на перевод для показа их в модели отчета путем установки значения свойства LocaleIdentifier, как указано в строке соединения. Тогда для каждого источника данных формируется одна модель, содержащая метаданные из связанного перевода.