- •Минобрнауки россии
- •2011 Г. Минобрнауки россии
- •Им. В.И.Ульянова (Ленина)” (сПбГэту) ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- •Реферат
- •Введение
- •1 Обзор и анализ программных технологий разработки web-приложений для аналитической обработки данных
- •1.1 Технологии оперативной аналитической обработки данных
- •1.2 Технологии аналитической обработки данных Microsoft sql Server
- •Sql dso
- •PivotTable Service, ole db for olap и ado md
- •Клиенты аналитических служб.
- •Analysis Manager
- •Приложения Microsoft Office
- •1.3 Технологии аналитической обработки данных в среде .Net
- •2 Постановка задачи дипломного проекта
- •3 Разработка многомерных моделей данных для построения olap-кубов по международному научно-техническому и образовательному сотрудничеству вузов России
- •3.1 Анализ инфологической модели базы данных
- •3.3 Многомерная модель данных для построения olap-куба по международному научно-техническому сотрудничеству вузов и научных организаций России
- •4 Разработка интерфейса web-приложения для аналитической обработки данных
- •5 Разработка программного обеспечения web-приложения для аналитической обработки данных
- •5.1 Реализация подключения к источнику данных
- •5.2 Реализация получения данных из источника аналитических данных
- •5.3 Пространство имен System.Web
- •5.4 Пространство имен System.Data
- •6. Экономическое обоснование дипломного проекта.
- •6.1 Концепция
- •6.2 Трудоемкость выполнения работ
- •6.3 Определение себестоимости проведения нир
- •6.4 Экономическая эффективность проекта
- •6.5 Рентабельность
- •6.6 Качественная оценка
- •6.7 Выводы
- •8 Охрана интеллектуальной собственности
- •8.1 Интеллектуальная собственность
- •8.2 Программа для эвм
- •8.3 Правообладатель
- •Лицензионный договор на использование программы для эвм
- •1 Термины и их определение
- •2 Предмет Договора
- •3 Обеспечение Договора
- •4 Усовершенствования
- •5 Платежи
- •6 Защита передаваемых прав
- •7 Ответственность Сторон и разрешение споров
- •8 Срок действия Договора и условия его расторжения
- •9 Заключительные положения
- •10 Адреса Сторон
- •Прошунин и.С. Спбгэту в.М. Кутузов Заключение
- •Список используемых источников
5 Разработка программного обеспечения web-приложения для аналитической обработки данных
5.1 Реализация подключения к источнику данных
Разработка программного обеспечения в дипломном проекте имеет следующие основные направления:
Cоздание пользовательского OLAP клиента для доступа к SQL серверу при использовании технологии ADO MD на платформе .NET.
Формирование запросов к OLAP кубам на языке MDX
Остановим свое внимание на решении первой задачи.
Общая структура доступа к данным на основе модели «клиент-сервер» изображена на рисунке 5.1.1.
Рисунок 5.1.1 – Структура доступа к данным на основе модели «клиент-сервер»
Для подключения к SQL серверу используется объект AdomdConnection
Объект AdomdConnection используется в ADOMD.NET для установления соединений с источниками аналитических данных, например базами данных служб Analysis Services. Объект AdomdConnection можно использовать для выполнения команд, получения данных и метаданных из источника аналитических данных.
Конструкторы объекта AdomdConnection:
AdomdConnection(String) - инициализация нового экземпляра AdomdConnection класса, используя указанную строку соединения
AdomdConnection(AdomdConnection) - инициализация нового экземпляра AdomdConnection класса, используя значения из указанного AdomdConnection класса
Свойства объекта AdomdConnection:
ConnectionString - задает строку, которая используется для открытия источника аналитических данных
Cubes - представляет коллекцию кубов источника аналитических данных
SessionID - идентификатор сессии
State – текущее состояние соединения
Методы объекта AdomdConnection:
Open(String) – открытие соединения с аналитическим источником данных
CreateCommand - создает и возвращает AdomdCommand, который связан с AdomdConnection
GetType – возвращает объект Type для текущего экземпляра
Close(Boolean) - закрывает подключение к базе данных
Каждый объект AdomdConnection имеет коллекцию объектов CubeDef, которые представляют кубы, доступные для пользователя или приложения. Объект CubeDef выдает информацию о кубах, а также о различных объектах, связанных с кубами, например измерениях, ключевых индикаторах производительности, мерах, именованных наборах и так далее.
Рассмотрим основные свойства объектов CubeDef:
Caption –заголовок CubeDef
Description – описание
Dimensions - экземпляр DimensionCollection класса, который содержит измерения CubeDef класса
Measures - экземпляр MeasureCollection класс, который содержит меры по CubeDef
5.2 Реализация получения данных из источника аналитических данных
При извлечении аналитических данных объект AdomdDataReader обеспечивает хороший баланс между затратами и интерактивностью. Объект AdomdDataReader извлекает из источника аналитических данных плоский поток данных, доступных только для чтения и последовательного доступа. Этот небуферизованный поток данных позволяет процедурам последовательно обрабатывать получаемые из источника данных результаты с высокой эффективностью. Благодаря этому объект AdomdDataReader хорошо подходит для извлечения больших объемов данных в целях отображения, поскольку данные не кэшируются в памяти.
Кроме того, объект AdomdDataReader также может повышать производительность приложения за счет извлечения данных по мере их поступления, не дожидаясь возвращения полных результатов запроса. Объект AdomdDataReader также сокращает затраты системных ресурсов, так как, по умолчанию, этот модуль чтения хранит в памяти только одну строку за раз.
Платой за оптимизированную производительность является то, что объект AdomdDataReader предоставляет меньше сведений об извечных данных, чем другие методы получения данных. Объект AdomdDataReader не поддерживает большие модели объектов для представления данных или метаданных, кроме того, эта модель объекта также не позволяет использовать более сложные аналитические функции, как, например обратная запись в ячейку. Однако объект AdomdDataReader все же предоставляет набор строго типизированных методов для извлечения данных набора ячеек, а также метод для извлечения метаданных набора ячеек в табличном формате. Кроме того, объект AdomdDataReader реализует интерфейс IDbDataReader для поддержки привязки данных и извлечения данных при помощи метода SelectCommand из пространства имен System.Data библиотеки классов платформы Microsoft .NET Framework.
Для формирования запросов к базе данных используется язык MDX. Назначение языка MDX (Multidimensional Expressions) — предоставить в распоряжение разработчиков средство для более простого и эффективного доступа к многомерным структурам данных. В Microsoft SQL Server 2000 Analysis Services язык MDX используется для формирования запросов и описания алгоритмов получения вычисляемых значений.
В языке MDX выражение SELECT используется для задания набора данных, содержащего подмножество многомерных данных.
SELECT-запрос содержит следующую информацию:
число осей (в одном запросе можно указать до 128 осей)
список членов измерения, которые должны быть включены для каждой оси;
имя куба, к которому производится запрос;
список членов среза.