Учебный курс Хранилища данных Лекция 4 Создание многомерного хранилища данных на основе MS SQL Server 2005 Лекции читает Кандидат технических наук, доцент Перминов Геннадий Иванович 8. Особенности построения куба с использованием удаленного сервера • • Зайти в Microsoft Visual Studio 2005. Вызвать Introducing Business Intelligence Developer (рис.1) 2 Создать проект Analysis Services Project 3 Дать имя проекту 4 Проект появляется в окне Solution Explorer 5 Создание Data Source 6 Создание нового соединения 7 Нахождение источника на сервере или на своем компьютере Имя сервера SQLSRV2K5 8 Появилось новое соединение 9 Присвоение имени источнику 10 Далее аналогично вышеописанному 11 Создание структуры витрины в SQL Server Management Studio 12 Содержание: 4.1. Постановка задачи 4.2. Исходные данные: 4.3. Задача: 4.4. Содержание практической работы: 4.5. Создание файла Витрины данных 4.6. Создание таблиц измерений 4.6.1. Измерение DimFirm 4.6.2. Измерение DimIndustry 4.6.3. Измерение DimRegion 4.6.4. Измерение DimMarket 4.6.5. Измерение DimCountry 4.6.6. Измерение DimDate 4.7. Создание таблицы фактов 4.8. Установка связей 4.8.1. Установка связей в схеме витрины 4.8.2. Установка связей в узле ключи 13 Различия в технологиях MS SQL Server версий 2000 и 2005 Технология построения Хранилища данных в SQL Server 2000 Технология построения Хранилища данных в SQL Server 2005 1). Проектирование Хранилища (Создание незаполненной структуры и схемы реляционного хранилища или витрины); 1). Создание заполненного простейшего многомерного куба с только регулярными измерениями; 2). Заполнение реляционного хранилища с помощью DTS (Data Transformation Services); 2) Усложнение многомерного куба за счет добавления измерений другого типа (измерения даты; консольных таблиц; измерений, находящихся в таблице фактов и пр.); 3). Трансформация реляционного Хранилища в Многомерный куб 3) Создание реляционного отображения куба (Реляционной схемы). 14 1. Постановка задачи В ряде случаев в SQL Server 2005 должна быть использована технология SQL Server 2000. Например, до или одновременно с построением большого корпоративного Хранилища необходимо создать несколько небольших витрин для отделов и других подразделений. Конечно, можно это сделать по основной технологии – сразу строить небольшие заполненные кубы, но можно воспользоваться и технологией SQL Server 2000. В SQL Server 2005 такая возможность есть, только этап заполнения пустой реляционной витрины осуществляется не построением DTS, а с использованием службы Integration Services. 15 Проектирование Хранилища данных или витрины Для проектирования Хранилища данных или витрины имеется много специализированных Case средств: AllFusiom ErWin Data Modeler, Cecima WinDesign, Embarcadero Erstudio, Quest Qdesigner, Sybase PowerDesigner Enterprise, MS Visio и т.д. Главное, чтобы в выбранном средстве присутствовала нотация Dimension. Здесь рассмотрим возможность построения витрины с помощью SQL Server Management Studio - компонента, входящего в поставку SQL Server 2005 любой версии. 16 2. Исходные данные: Имеется БД Damodaran00 типа Access, содержащая экономические данные по фирмам, регионам, странам, рынкам, направлениям, взятым из соответствующего сайта Damodaran. 17 3. Задача: Средствами SQL Server Management Studio спроектировать витрину. 18 4. Содержание работы: создание базы данных для витрины данных. создание таблиц измерений. создание таблицы фактов. установка связей. 19 5. Создание файла Витрины данных Запуск SQL Server Management Studio 20 5.1. Подключение к SQL-серверу 21 5.2. Раскрытие узла «Базы данных» 22 5.3. Создание новой БД 23 5.4. Ввод имени витрины 24 5.5. Установка модели восстановления 25 Пояснение Поскольку витрина не относится к базам данных транзакций, необходимости в восстановлении ее содержимого по журналу транзакций нет. В простой модели восстановления журнал транзакций при прохождении контрольных точек усекается — это позволяет уменьшить его объем. В полной модели восстановления, а также в модели с неполным протоколированием перед усечением журнала транзакций необходимо выполнить его резервное копирование. 26 6. Создание таблиц измерений Для создания таблиц мы будем использовать как окно свойств, так и окно свойств столбцов. Если окно свойств, отсутствует на экране, выберите в меню Вид (View) команду Свойства (Properties). При выполнении следующих шагов внимательно следите за тем, где они должны производиться, в окне Свойства (Properties) или в окне Свойства столбцов (Column Properties). 27 Схема витрины («Снежинка») 28 6.1. Измерение DimFirm Создание новой таблицы - измерения 29 6.1.1. Среда создания таблицы 30 6.1.2. Вид таблицы Фирм 31 6.2. Измерение DimIndustry 32 6.3. Создание консольной таблицы измерений DimDirection 33 6.4. Измерение DimCountry 34 6.5. Измерение DimRegion 35 6.6. Измерение DimMarket 36 6.7. Измерение DimDate 37 7. Создание таблицы фактов 38 8. Установка связей Построить связи между таблицами можно двумя способами: 1). Создать схему витрины и соединить в ней ключевое поле каждой таблицы со связанной с ней таблицей (таблицами). В этом случае во второй таблице автоматически появится знак внешнего ключа (FK). 2) Раскрыть узел каждой таблицы и щелкнуть правой кнопкой по папке Ключи. Откроется диалоговое окно в котором можно добавлять ключи этой таблицы. 39 8.1. Установка связей в схеме витрины (1-ый способ) Щелкните правой кнопкой мыши по паппке DataBase Diagram (предыдущий слайд слева над папкой Tables) и выберите возможность «Создать схему». Дадите имя схеме Базы данных Если между двумя таблицами предполагается связь, то левой кнопкой мыши нажмите на первичный ключ одной из таблиц и потащите его на вторую таблицу. 40 Пример связи консольной таблицы измерений Direction с таблицей измерений Industry 41 8.1.1. Пример связи таблицы измерений DateDim с таблицей фактов Fact_Finance 42 8.2. Установка связей в узле ключи (2-ой способ) 43 8.2.1. Добавление внешних ключей в таблицу на примере измерения Country 44 8.2.2. Удаление лишней связи 45 8.2.3. Вид окна «Таблицы и колонки» Щелкните сначала в поле Спецификация таблиц и столбцов (Tables and Columns Specifications), а затем — на появившейся в этом поле кнопке с многоточием. Откроется диалоговое окно Таблицы и столбцы (Tables and Columns) 46 Окно выбора таблицы с первичным ключом 47 8.3. Вторичные ключи таблицы фактов 48 Далее необходимо заполнить витрину данными (следующая тема). 49 «Заполнение пустой витрины с помощью служб интеграции » 50 Содержание 1. Постановка задачи 2. Исходные данные: 3. Задача: 4. Вид исходной БД 5. Витрина – приемник информации 6. Создание проекта службы интеграции 7. Создание потоков задач и потоков данных на 1-м уровне 8. Потоки данных 2-го уровня 9. Потоки данных 3-го уровня 10. Создание потоков данных для таблицы Фактов 11. Выполнение задач потоков данных Заключение 51 1. Постановка задачи В этой теме будет рассмотрен процесс заполнения реляционной витрины из исходной базы данных с помощью службы Integration Servicesкомпонента, входящего в поставку SQL Server 2005 любой версии. 52 2. Исходные данные: Имеется структура витрины данных построенная на основе БД Damodaran00, содержащая экономические данные по фирмам, регионам, странам, рынкам, направлениям. 53 3. Задача: Нужно заполнить реляционную витрину данными из исходной базы данных типа Access 54 4. Вид исходной БД 55 5. Схема витрины данных – приемника информации 56 6. Создание проекта службы интеграции 1. Запустите Business Intelligence Development Studio 2. Щелкните на кнопке Создать проект (New Project) панели инструментов 3. Убедитесь, что в разделе Типы проектов (Project Types) выделен пункт Проекты бизнес-аналитики (Analysis Services Projects), после чего в разделе Шаблоны (Templates) выберите Проект служб SSIS (Integration Services Project) 57 Выбор Integration Services Project 58 Ввод имени проекта и расположения 59 Переименование пакета После создания проекта щелкните правой кнопкой мыши на файле Package.dtsx в окне обозревателя решений и выберите в контекстном меню команду Переименовать (Rename). Укажите имя Damodaran.dtsx в качестве нового названия пакета и нажмите клавишу Enter 60 7. Создание потоков задач и потоков данных на 1-м уровне 61 7.1. Выделение элемента Data Flow Task 62 7.2. Перетаскивание элемента Data Flow Task 63 7.3. Переименовали задачу потока данных 64 7.4. Активизация Data Flow 65 7.5. Вызов команды «Новое соединение» 66 7.6. Нажатие на кнопку «New» - вызов редактора соединений 67