Создание куба, не имеющего первоначального источника данных

Мера – это некоторая информация о произошедшем факте, где факт (упрощенно) – запись в таблице БД о произошедшем событии. Например, фактом может быть покупка товара в интернет-магазине, где меры характеризуют детали покупки: стоимость товара, имя покупателя, есть ли у него дети и.т.д. Группа мер определяет название таблицы, в которой будут храниться факты. Информация о товарах представляется не только конкретными мерами, а также измерениями – другими таблицами, хранящими некоторое множество предопределенных уникальных значений. Например, в интернет-магазине продают 3 типа товаров: баяны, балалайки и бубны. Соответственно, в таблице фактов необходимо указывать, какой именно товар был приобретен. Измерением будет являться таблица, содержащая три записи типов товара и уникальный идентификатор (ID), являющийся ключевым атрибутом. Далее накладываются ограничения целостности на таблицу фактов в виде внешнего ключа для таблицы типов товаров. Это позволяет вносить в таблицу фактов информацию о типе товара, определенную в рамках заданного множества.

ПК на папке Cubes→New Cube… На шаге Select Build Method выбрать Build the cube without using a data source. На шаге Define New Measures можно задать имя новой меры, имя группы, в которую входит данная мера, тип данных и вариант агрегирования значений меры.

На шаге Define New Dimensions можно определить измерения для создаваемого куба. Автоматически предлагается добавить измерение времени, которое генерируется самостоятельно в соответствии с выбранными параметрами (задаются далее). Для нового измерения можно задать имя, параметр Slowly Changing Dimension (влияет на скорость обработки информации в кубе для данного измерения, критично при больших объемах данных, задавать не нужно). Поле Атрибуты создается автоматически (после создания проекта куба можно отредактировать измерения и атрибуты, входящие в их состав, построить иерархию измерений).

Если измерение Time было включено в список, на следующем шаге предоставляется возможность определить временной период данного измерения. Поле Time Periods позволяет задать различные временные категории, которые будут доступны для данного измерения в иерархическом виде.

Шаг по поводу создания дополнительных календарей можно пропустить. На шаге Define Dimension Usage можно задать, к каким группам мер будут относиться созданные измерения. На шаге Completing Wizard необходимо задать имя куба и, при необходимости, отметить пункт Generate Schema Now, что приведет к созданию структуры данных куба в реляционной БД.

После создания макета куба окно проекта будет иметь вид:

На вкладке Cube Structure отображаются созданные меры и измерения, в случае необходимости можно добавить новые, отредактировать существующие или же удалить ненужные. Данные изменения не влияют на структуру БД, которая хранит непосредственно данные для анализа.

После того, как все необходимые изменения внесены, можно сгенерировать структуру данных в реляционной БД, которая будет хранить информацию о фактах, мерах и измерениях. Для этого можно выбрать пункт меню Database → Generate Relational Schema… Будет показан мастер, который предложит создать источник данных, а затем представление источника данных для куба. Источник данных – база данных, которая будет использована для хранения необходимой информации.

На шаге Specify Target напротив Data Source необходимо выбрать New… Откроется мастер создания источника данных, где будет предложено создать новое подключение к серверу БД. В поле «Имя сервера» нужно выбрать «ALLA», затем в поле Select or enter a database name выбрать предварительно созданную с помощью SQL Server Management Studio базу данных, в которой будут размещены таблицы куба. Далее выбрать созданное подключение, Next >, на шаге Impersonation Information выбрать Default, далее ввести название созданного источника данных.

После этого необходимо нажать Finish в Schema Generation Wizard. Произойдет внесение изменений в базу данных на сервере, и в окне Data Source View будет отображена созданная структура данных. В простейшем случае топология данной структуры будет иметь тип «звезда» – в центре таблица фактов со связями типа M:1 к таблицам измерений.

Также необходимо зайти в настройки создаваемого проекта, в дереве Configuration Properties выбрать Deployment и в правой части окна в группе Target задать в поле Server значение «ALLA» для того, чтобы мастер развертывания куба мог определить, где находится сервер Analysis Services. Дополнительно надо задать имя базы данных в Analysis Services.

База данных в Database Engine и БД Analysis Services – разные вещи, поскольку первая хранит непосредственно обрабатываемые данные с помощью куба, а вторая – всю служебную информацию о кубе.

Далее можно заполнить таблицы куба различными значениями, соответствующими выбранной структуре, и запустить куб кнопкой . При отсутствии различного рода ошибок произойдет запуск и откроется вкладка Browser, позволяющая работать с данными куба.

В правой части вкладки Browser (рабочая область) располагается поле, позволяющее создавать и анализировать срезы куба. Для формирования среза необходимо перетащить в поле Drop Totals or Detail Fields here поля из группы Measures в левой части Browser, в поля Row Fields и Column Fields – измерения. В поле Drop Filter Fields here можно переместить некоторые поля, которые будут тем или иным способом сужать объем предоставляемой информации (например, определенный период времени или же конкретный тип товара). Параметры фильтрации более детально можно определить в окне над рабочей областью, выбрав измерение, элемент иерархии, условие фильтрации и область значений для фильтра.

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

Для того чтобы загрузить в куб актуальную информацию (например, после запуска куба в таблицы БД были добавлены новые записи), необходимо выбрать пункт меню Cube→Process… или же нажать кнопку на панели инструментов куба.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: