Спонсор: Microsoft
Санкт-Петербургский государственный политехнический университет
Опубликован: 06.03.2012 | Доступ: свободный | Студентов: 1995 / 176 | Оценка: 4.00 / 4.00 | Длительность: 10:52:00
Специальности: Системный архитектор
Самостоятельная работа 11:

Создание представления источника данных

< Самостоятельная работа 10 || Самостоятельная работа 11: 12 || Лекция 13 >
Аннотация: В предыдущей лабораторной работе была создана база данных аналитических служб и источник данных (DataSource). В ходе выполнения этой работы мы познакомимся с созданием представления источника данных (DataSourceView, DSV), а также именованных вычислений и запросов.

В среде BIDevStudio в режиме immediate откройте созданную базу аналитических служб (в меню File выбрать Open-> AnalysisServicesDatabase, далее указать используемый сервер и выбрать созданную в ходе выполнения предыдущей лабораторной работы базу). В окне SolutionExplorer убедитесь, проверьте, что в базе есть источник данных, ссылающийся на реляционную базу данных AdventureWorksDW ( рис. 23.1, узел DataSources).

Представление источника данных (DataSourceView, DSV) определяется как [1] абстрактное представление, которое позволяет модифицировать способ рассмотрения источника данных (DataSource), либо описать схему и в дальнейшем менять фактический источник данных. Последнее может понадобиться, если в процессе разработки и тестирования используются данные из одной реляционной БД, а в последующем будут использоваться другие базы аналогичной структуры.

Для создания DSV надо выбрать соответствующий узел в окне SolutionExplorer, щелчком правой клавиши вызвать контекстное меню и выбрать пункт "NewDataSourceView" ( рис. 23.1).

Создание представления источника данных

Рис. 23.1. Создание представления источника данных

В реляционной базе данных AdventureWorksDW есть представление dbo.vTargetMail, позволяющее получит информацию о клиенте (идентификаторы, имя, фамилию, регион, размер годового дохода и т.д.) и о том, купил данный клиент велосипед или нет. Эти данные нам понадобятся для дальнейшего анализа.

Запустив мастер создания DSV, в первом окне укажем используемый источник данных - AdventureWorksDW ( рис. 23.2). В связи с тем, что выбранный источник данных указывает на реляционную БД, следующее окно будет содержать перечень таблиц и представлений, которые можно включить в представление источника данных, здесь надо выбрать представление vTargetMail и таблицу DimGeography ( рис. 23.3).

Создание представления источника данных: выбор источника данных

Рис. 23.2. Создание представления источника данных: выбор источника данных
Создание представления источника данных: выбор объектов, включаемых в представление

Рис. 23.3. Создание представления источника данных: выбор объектов, включаемых в представление

Если в исходной БД открыть в конструкторе представление vTargetMail>, мы увидим следующий код на языке SQL:

SELECT     c.CustomerKey, c.GeographyKey, c.CustomerAlternateKey, c.Title, 
c.FirstName, c.MiddleName, c.LastName, c.NameStyle, c.BirthDate, 
c.MaritalStatus, c.Suffix, c.Gender, c.EmailAddress, c.YearlyIncome, 
c.TotalChildren, c.NumberChildrenAtHome, c.EnglishEducation, 
c.SpanishEducation, c.FrenchEducation, c.EnglishOccupation, 
c.SpanishOccupation, c.FrenchOccupation, c.HouseOwnerFlag, c.NumberCarsOwned, 
c.AddressLine1, c.AddressLine2, c.Phone, c.DateFirstPurchase, 
c.CommuteDistance, x.Region, x.Age, CASE x.[Bikes] WHEN 0 THEN 0 ELSE 1 END AS BikeBuyer
FROM  dbo.DimCustomer AS c INNER JOIN
(SELECT     CustomerKey, Region, Age, SUM(CASE [EnglishProductCategoryName] WHEN 'Bikes' THEN 1 ELSE 0 END) AS Bikes
FROM dbo.vDMPrep
GROUP BY CustomerKey, Region, Age) AS x ON c.CustomerKey = x.CustomerKey
    

Отсюда видно, что часть информации о клиенте берется из таблицы dbo.DimCustomer, в частности это код региона проживания клиента (GeographyKey).На рис. 23.4 приведен фрагмент диаграммы, показывающий связь таблицы DimCustomer и таблицы-справочника DimGeography, а рис. 23.5 демонстрирует выборку данных из представления vTargetMail и таблицы DimGeography. Таким образом, если мы хотим знать названия стран и городов пребывания клиентов, нам понадобится таблица DimGeography.

Диаграмма, показывающая связь таблиц dbo.DimCustomer и dbo.DimGeography

увеличить изображение
Рис. 23.4. Диаграмма, показывающая связь таблиц dbo.DimCustomer и dbo.DimGeography
1.
Данные из vTargetMail (а) и DimGeography

Рис. 23.5. Данные из vTargetMail (а) и DimGeography
2.

Но вернемся к создаваемому DSV. Последнее окно мастера позволяет ввести имя DSV. Назовем его TargetMail_dsv ( рис. 23.6)

Назначение имени представления источника данных

Рис. 23.6. Назначение имени представления источника данных

После того, как представление источника данных создано, открывается визуальный редактор, позволяющий в частности, указать связь между таблицами.Изначально связь не была определена ( рис. 23.7-1), т.к.в исходной БД vTagetMail является не таблицей, а представлением. Но связь можно определить, "протянув" ее мышью на диаграмме от столбца внешнего ключа к соответствующему первичному ключу ( рис. 23.7-2). Особенно важно это сделать, если для анализа используются варианты с вложенными таблицами.

1.
Указание связи между таблицами

Рис. 23.7. Указание связи между таблицами
2.

Задание 1. В соответствии с приведенным описанием создайте представление источника данных.
< Самостоятельная работа 10 || Самостоятельная работа 11: 12 || Лекция 13 >