Автор работы: Пользователь скрыл имя, 02 Апреля 2013 в 09:17, дипломная работа
Ключевую роль в управлении компанией в целом и ее отдельными подразделениями играет информация. Однако, данные, которые доступны менеджерам и аналитикам непосредственно из корпоративных информационных систем, не унифицированы, разрозненны и в общем случае не подготовлены для анализа. Системы Business Intelligence - это как раз тот класс информационных систем, который позволяет превратить сырые данные в полезную для бизнеса информацию и знания, используемые в управлении, на основе которых можно принимать решения.
ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ И ТЕРМИНОВ 4
ВВЕДЕНИЕ 5
ЦЕЛИ И ЗАДАЧИ РАБОТЫ 7
ГЛАВА 1. ОСНОВНЫЕ ПОЛОЖЕНИЯ ТЕХНОЛОГИЙ БИЗНЕС ИНТЕЛЛЕКТА 8
1.1. Системы бизнес интеллекта 8
1.2. Внутренние интерфейсы Microsoft SQL Server 2005 10
1.3. Средства трансформации данных 11
1.4. Средства анализа данных 13
1.5. Средства визуализации данных 14
Выводы 14
ГЛАВА 2. ТЕХНОЛОГИИ ИНТЕРАКТИВНЫХ ИНФОРМАЦИОННЫХ ПАНЕЛЕЙ 16
2.1. Microsoft Reporting Services 16
2.2. Crystal Reports - технология генерации отчетности 22
2.3. Crystal Reports for Microsoft Visual Studio .NET 29
Выводы 32
ГЛАВА 3. МОДЕЛЬ СИСТЕМЫ ДЛЯ РАБОТЫ С ПЕРСОНАЛОМ ВУЗА 33
3.1. Контингент сотрудников и студентов в информационной картине факультета 33
Выводы 38
ГЛАВА 4. РЕАЛИЗАЦИЯ КОМПОНЕНТОВ СИСТЕМЫ БИЗНЕС ИНТЕЛЛЕКТА 40
4.1. Требования к системе Бизнес Интеллекта. Общая схема системы 40
4.2. Первичные данные системы Бизнес Интеллекта 41
4.3. Реализация модуля очистки, загрузки и обновления данных 44
4.4. Формирование многомерного хранилища данных 52
4.5. Модуль формирования отчетности 60
4.6. Модуль доступа к выходным документам 69
Выводы 69
ЗАКЛЮЧЕНИЕ 70
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 71
ПРИЛОЖЕНИЕ 1. «Структура хранилища данных» 72
ПРИЛОЖЕНИЕ 2. «Приложение работы с данными «Профсоюзный комитет» 76
ПРИЛОЖЕНИЕ 3. «Измерения проекта» 78
ПРИЛОЖЕНИЕ 4. «Структура кубов системы» 81
ПРИЛОЖЕНИЕ 5. «WEB-приложение» 87
ПРИЛОЖЕНИЕ 6. «Примеры выходных документов» 89
Далее необходимо определить, какие потоки данных нужны для заполнения хранилища данных. Для этого каждый из источников данных необходимо связать с приемником данных с помощью задачи Transform Data Task. Эти задачи изображены в виде черных стрелок. Задачи для переноса данных могут выполняться параллельно. Однако они могут быть выполнены только после полной очистки всего хранилища. Чтобы задать это условие, следует одновременно выбрать пиктограмму Execute SQL Task и одну из уже задействованных пиктограмм источника данных, а затем из контекстного меню источника данных выбрать опцию Workflow | On Success. Появившаяся зеленая пунктирная стрелка между пиктограммами означает, что перенос данных в соответствующую таблицу приемника будет осуществлен только после успешного завершения очистки хранилища.
В свойствах каждой задачи Transform Data Task необходимо указать таблицу-источник, таблицу-приемник, а также на вкладке Transformations необходимо описать все выполняемые преобразования данных:
Рис. 4.5. Описание преобразования данных для таблицы OBD
Из рисунка видно, каким образом производится перенос данных. Это можно видеть по стрелкам, соединяющим соответствующие поля таблицы-источника и таблицы-приемника. При этом по умолчанию выполняется перенос всех данных поля приемника в поле источника. Однако в свойствах каждого преобразования, если это требуется, можно указать способ преобразования данных. На рисунке 4.6. изображен один из способов преобразования данных – с помощью ActiveX Script, написанного на языке Visual Basic для преобразования поля «Дата рождения сотрудника» («D_ROZ»).
Рис. 4.6. Описание преобразования данных для поля «D_ROZ» таблицы «OBD».
Для того чтобы данные в хранилище соответствовали текущему состоянию оперативной базы данных, необходимо создать расписание, согласно которому будет автоматически выполняться данный пакет. Нужный режим обновления данных выбирается в диалоговой панели Edit Recurring Job Schedule, изображенной на рисунке 4.7.
Рис. 4.7. Создание расписания выполнения DTS-пакета
Из рисунка видно, что расписание создано таким образом, чтобы обновление данных происходило тогда, когда система с наименьшей степенью будет использоваться – еженедельно, в воскресенье, в 0:00 часов.
Для того, чтобы получать и загружать обновленные данные, нам пришлось настроить несколько связанных серверов, так как информация для каждой из систем хранится в различных источниках информации. Опишем создание, администрирование и использование полученных связанных серверов более подробно.
Для получения информация информации из систем «Отдел кадров» и «Деканат» мы настроили связанный сервер на работу с базой данных автоматизированной системы управления «Университет». Для этого мы вначале настроили ODBC-источник данных ASU для связи с базой данных.
Рис. 4.8. Настройка ODBC-источника на БД АСУ «Университет»
Далее, при настройке связанного сервера с присвоенным ссылочным именем ASU, указали данный настроенный источник данных в качестве используемого для данного связанного сервера. Это означает, что теперь при обращении по имени ASU данные будут извлекаться непосредственно из необходимой нам базы данных без каких либо дополнительных настроек (рис. 4.9).
Рис. 4.9. Настройка связанного сервера ASU. |
Рис. 4.10. Разрешение вызова удаленных процедур для связанного сервера |
Важно заметить, что для использования процедур выборки и организации информации необходимо разрешить удаленный доступ к данному связанному серверу, а именно разрешить вызов удаленных процедур (смотрите рис. 4.10):
Также необходимо и обязательно
настроить аутентификацию/
Рис. 4.11. Настройка аутентификации/авторизации связанного сервера.
Как видно из рисунка аутентификация/авторизация разрешена для удаленного пользователя, с чьего только разрешения мы имеем право на выборку необходимой нам информации, естественно, в рамках тех привилегий, который данный конкретный пользователь обладает сам.
Для данного связанного сервера настроена выборка, очистка, организация и обновление информации по расписанию аналогично описанному выше DTS-пакету, поэтому перейдем к настройке следующего связанного сервера LS_PROFCOM.
Связанный сервер LS_PROFCOM настроен на базу данных Microsoft Access. Описание настройки данного связанного сервера показано на рисунке 4.12.
Рис. 4.12. Описание настройки связанного сервера LS_PROFCOM. |
Рис. 4.13. Шаг удаления всех таблиц из хранилища данных |
Данные постепенно и периодически в этой базе данных обновляются, поэтому необходимо было назначить работу (Job), которая бы эти данные с учетом возникших коллизий, загружала бы в наше хранилище данных. Так как данные в базе данных Microsoft Access являются строго организованными и необходимыми (это обеспечивается приложением, осуществляющим организацию сбора и обновления информации в самой базе данных), а удаление таблиц и копирование данных в наше хранилище данных на сегодняшний момент не является критическим с точки зрения производительности, то было принято решение создать два последовательных шага для реализации поставленной перед нами задачи создания работы: удаление всех таблиц из хранилища данных (см. рис. 4.13) и загрузка (копирование) всех таблиц в хранилище данных из связанного сервера LS_PROFCOM (рис. 4.14).
Рис. 4.14. Шаг загрузки данных в хранилище данных
После создания работы (Job) можно назначить расписание, по которому данная работа будет выполняться. К примеру, можно настроить на выполнения данной работы ежеминутно:
Рис. 4.15. Пример расписания ежеминутного выполнения работ
Как мы видим, администрирование связанных серверов является менее трудоемкой задачей с точки зрения затраченного времени, чем DTS-пакет. Причем, обработка возникших коллизий выполняется после того как данные вытянуты из связанного сервера, а затем они загружаются в хранилище данных. Поэтому с точки зрения производительности, заметного ухудшения скорости обновления информации не отмечается и, можно сделать вывод о том, что использование администрирования связанных серверов для поставленной перед нами цели, является более приемлемым на сегодняшний день.
После того, как основное хранилище данных сформировано из оперативной базы данных с помощью служб очистки и преобразования данных, необходимо приступать непосредственно к формированию многомерного хранилища данных (базы данных OLAP), в котором будут созданы все необходимые кубы с измерениями.
Формирование многомерной базы данных – второй модуль разрабатываемой подсистемы Бизнес Интеллекта. И, как было отмечено выше, данный модуль будет разрабатываться на основе служб Microsoft Analysis Services, входящие в состав средств OLAP для организации эффективного анализа данных в Microsoft Visual Studio 2005 .NET.
При создании измерений и кубов в системе Бизнес Интеллекта факультета следует учесть два основных аспекта в анализе количества сотрудников университета:
При создании многомерного хранилища данных для поставленной задачи необходимо сначала определить источник данных, предоставляющий информацию для будущих измерений и кубов данных. В качестве источника данных будет выступать сформированное хранилище данных «ASU_SOTRUDNIKI». Источниками данных могут быть любые данные доступные с помощью стандартного интерфейса OLE DB.
Измерения – это категории, относительно которых нужно обобщать и анализировать информацию. В качестве измерений в подсистеме будут выступать: «Пол», «Возраст», «Семейное положение», «Национальность», «Место проживания», «Должность», «Подразделение», «Штат», «Научная отрасль», «Научная степень», «Научное звание», «Дата назначения», «Дата увольнения», «Причина увольнения», «Дата получения научной степени», «Дата получения научного звания».
Данные измерения будут
На основе созданных измерений можно создавать многомерные кубы данных. Для построения куба необходимо определить связанную с ним таблицу фактов. Меры (measures) куба представляют собой столбцы таблицы фактов, содержащих числовые данные, которые необходимо проанализировать. В нашем случае необходимо анализировать количественную информацию о сотрудниках университета в разрезах измерений. Поэтому в каждой из таблиц фактов должно содержаться поле, однозначно идентифицирующее сотрудника. В качестве такого поля выбран табельный номер сотрудника (поле «TN»).
Измерения куба соответствуют категориям, которые используются для анализа мер куба. С помощью мастера кубов можно включить в куб любые измерения, которые были заранее определены.
В результате будет создан куб, определяющий связи между количественными данными, которые нужно проанализировать, и измерениями, относительно которых нужно провести этот анализ.
Итак, перейдем к непосредственному описанию модуля формирования различных многомерных представлений (кубов) базы данных. Кубы создаются при помощи средств Microsoft Analysis Services, входящих в состав Microsoft Visual Studio 2005 .NET. Было создано несколько представлений (кубов) данных. Процесс создания кубов описан ниже.
Стоит отметить, что преимуществами
созданных представлений
Для решения поставленной задачи необходимо создать шесть кубов:
1. «Контингент сотрудников»; |
4. «Увольнение с работы» |
2. «Контингент ученых» |
5. «Получение научной степени» |
3. «Прием на работу» |
6. «Получение научного звания» |
Таблица 1. OLAP-кубы системы Бизнес Интеллекта
С помощью этих кубов можно будет анализировать количество сотрудников в различных разрезах измерений. Опишем более подробно процесс создания измерений и кубов, соответствующих описанным выше аспектам
В качестве средства для реализации данного модуля были выбраны службы анализа данных Microsoft Analysis Services. Для решения поставленной задачи по формированию многомерного хранилища необходимо создать измерения и многомерные кубы данных, на основе которых в дальнейшем будет строиться модуль формирования выходных документов с аналитической информацией о сотрудниках университета.
Прежде чем приступить к формированию измерений и кубов, необходимо создать многомерную базу данных, в которой эти кубы будут храниться, строится и перестраиваться. Это можно сделать по двум направлениям:
1. Нужно выбрать пункт New Database: из контекстного меню элемента, соответствующего OLAP-серверу, и ввести имя базы данных и ее описание. В нашем случае была создана многомерная база данных «AS_ASU_SOTRUDNIKI». . Затем необходимо описать источник исходных данных для будущих измерений и кубов. Источником данных в нашем случае является созданное ранее с помощью модуля очистки и загрузки данных хранилище «ASU_SOTRUDNIKI». . Для описания источника данных необходимо выбрать из контекстного меню элемента Data Sources пункт New Data Source: и заполнить поля стандартной диалоговой панели Data Link Properties: в качестве провайдера данных необходимо указать OLE DB Provider for SQL Server и выбрать базу данных «ASU_SOTRUDNIKI».
2. Так как, Microsoft SQL Server 2005 и Microsoft Visual Studio 2005 .NET тесно взаимодействуют друг с другом, то все эти действия можно выполнять не покидая среды разработки Microsoft Visual Studio 2005 .NET. Опишем подробнее процесс настройки проекта, в котором будут строиться необходимые нам представления (кубы) данных. Для начала необходимо создать новый проект Бизнес Интеллекта (Business Intelligence Project), а именно Analysis Services Project:
Рис. 4.16. Создание нового проекта Бизнес Интеллекта
После его создания, сначала нам необходимо настроить доступ к источнику данных, информация из которого будет использоваться для построения измерений, мер и, естественно, самих представлений (кубов) многомерной базы данных (см. рис 4.17).