Многомерный статистический контроль процессов. Технология многомерных баз данных

  • 14.05.2019

Аналитическое прогнозирование многомерных процессов.

Метод обобщенного параметра.

Цель работы: изучение практических приемов прогнозирования состояния многопараметрического объекта.

Краткие теоретические сведения:

Изменение состояния технических систем можно рассматривать как процесс, характеризуемый изменениями некоторого множества параметров. Положение вектора состояния в пространстве определяет степень работоспособности системы. Состояние системы характеризуется вектором в k-мерном пространстве, где координатами пространства служат k параметров системы , .

Прогнозирование состояния сводится к периодическому предварительному контролю параметров; определению в моменты t i T 1 контроля функции состояния

Q =Q[ ] и расчете значений функцииQ состояния в области значений времениT 2 > T 1 .

При этом чем дальше будет расположен вектор состояния от гиперповерхности допустимых значений степени работоспособности Q * , тем выше работоспособность диагностируемой системы. Чем меньше разность * , тем ниже уровень работоспособности.

Использование методов аналитического прогнозирования предполагает регулярность изменения компонентов процесса во времени.

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

При обобщении параметров, характеризующих степень работоспособности технических систем, необходимо решение следующих задач:

Определения относительных значений первичных параметров;

Оценки значимости первичного параметра для оценки состояния объекта;

Построения математического выражения для обобщенного параметра.

Определение относительных значений первичных параметров необходимо в связи с тем, что состояния объекта может характеризоваться параметрами, имеющими различную размерность. Поэтому все контролируемые первичные параметры следует свести к единой системе исчисления, в которой они могут быть сравнимыми. Такой системой является система безразмерного (нормированного) относительного исчисления.

Реально для каждого параметра ,s = 1, 2, …, k можно выделить допустимое значение, * , при достижении которого объект теряет работоспособность, и оптимальное значение опт (зачастую оно равно номинальному значению н).

Пусть в процессе эксплуатации объекта соблюдается условие. Если , достаточно ввести в местоновый параметри тогда длябудет соблюдаться требуемое условие.

Запишем безразмерный (нормированный) параметр в виде:

где , причем при , а при .

Таким образом, с помощью выражения (1) нормируется параметр , а безразмерная нормированная величинаизменяется с течением времени от 1 до 0. Отсюда по величинеможно судить о степени работоспособности объекта по данному параметру. Теоретически может быть, но это означает, что на практике объект неработоспособен.

Можно указать различные нормируемые выражения, которые оказываются удобными при решении частных задач, например:

и т. п., где – соответственно текущее, нулевое, мат. ожиданиеS – го параметра.

Использование нормирующих выражений позволяет получить совокупность безразмерных величин, которые характеризуют состояние объекта. Однако количественно одинаковое изменение этих величин не является равнозначным по степени влияния на изменение работоспособности объекта, поэтому необходимо дифференцировать первичные параметры. Этот процесс осуществляется с помощью весовых коэффициентов, величины которых характеризуют важность соответствующих параметров для физической сущности задачи. Пусть в таком случае параметрам объекта соответствуют весовые коэффициенты, удовлетворяющие тем или иным заданным критериям, причем .

Степень работоспособности объекта по множеству контролируемых параметров можно оценить с помощью обобщающего выражения

Где - обобщенный параметр объекта.

Выражение (2) представляет собой линейное среднее. Из определения обобщенного параметра следует, что чем больше величина и, тем больше вкладS – го слагаемого (параметра) в .

Обобщенный параметр можно определить с помощью выражения вида

, (3)

которое представляет собой нелинейного среднее. Для такой модели также соблюдается условие: чем больше и, тем больший вклад вносит слагаемоев величину.

На практике находят применение и другие формы записи нелинейного среднего, например:

, (4)

, (5)

где подбирает так, чтобы (5) давая лучшее приближения к результатам, полученным экспериментальным путем.

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

, (6)

Таким образом, использование обобщенного параметра позволяет свести задачу прогнозирования состояния многопараметрического объекта к прогнозированию одномерной временной функции.

Пример. Испытания объекта в течении 250 часов, у которого контролировалось 6 параметров, дали результаты, приведенные в таблице1.

Таблица1

I н, ном = 9,5

V g1 . ном = 120

I а, ном = 2,0

I g3 , ном = 70

После нормирования значений параметров с помощью выражения (1) таблица принимает вид (таблица2)

Таблица2

Многомерный стационарный случайный процесс определяется как совокупность стационарных и стационарно связанных между собой случайных процессов . Такой процесс принято обозначать в виде случайного вектора-столбца, зависящего от времени:

.

Многомерные случайные процессы используются при описании многомерных (многоканальных) систем. В настоящем параграфе рассматривается задача цифрового моделирования нормальных многомерных стационарных случайных процессов. Результатом решения этой задачи, как и в одномерном случае, является алгоритм, позволяющий формировать на ЦВМ многомерные дискретные реализации заданного процесса. -мерный непрерывный нормальный стационарный случайный процесс задается обычно либо в виде его корреляционной матрицы

либо в виде спектральной матрицы

где - автокорреляционные (при ) и взаимно корреляционные (при ) функции случайных процессов - преобразование Фурье от . При этом, поскольку , элементы и спектральной матрицы комплексно-сопряженные,

.

Дискретные многомерные нормальные случайные процессы задаются аналогично непрерывным с помощью корреляционных и спектральных матриц (35, 70]

где , причем .

Задачу цифрового моделирования многомерного нормального случайного процесса целесообразно сформулировать следующим образом. Задана корреляционная или спектральная матрица случайного процесса. Требуется отыскать алгоритм для формирования на ЦВМ дискретных реализаций случайного процесса с заданными корреляционными (спектральными) свойствами.

Для решения этой задачи воспользуемся, как и ранее, идеей формирующего линейного фильтра. В рассматриваемом случае речь идет о синтезе многомерного формирующего фильтра.

Мерный линейный фильтр определяется как линейная динамическая система с входами и выходами . Если - входное воздействие и - реакция системы, то связь между входом и выходом -мерного линейного непрерывного фильтра описывается с помощью передаточной матрицы в виде

где и - изображения входного и выходного сигналов соответственно в смысле преобразования Лапласа; - передаточная матрица -мерного фильтра, у которой элементы являются передаточными функциями каналов -й вход - -й выход.

Аналогично описывается связь вход - выход в дискретных -мерных линейных фильтрах:

,

где и - изображения в смысле дискретного преобразования Лапласа входного и выходного сигналов; - передаточная матрица дискретного -мерного фильтра.

Структурная схема многомерного фильтра на примере двумерного фильтра приведена на рис. 2.9, согласно которому

(2.107)

Видим, что каждый из выходных сигналов и является суммой линейных операторов от входных сигналов и . Аналогичные соотношения имеют место и в общем случае. В этом и состоит идентификация передаточных матриц .

Пусть воздействие на входе -мерного линейного фильтра представляет собой -мерный белый шум, т. е. случайный процесс с корреляционной матрицей вида

для непрерывного времени и

для дискретного времени, где - дельта-функция. -мерный белый шум определен здесь как совокупность независимых между собой -коррелированных случайных процессов.

Можно показать (см., например, ), что при воздействии белого шума спектральная матрица процесса на выходе - мерного фильтра для непрерывного и дискретного времени соответственно связана с передаточной матрицей фильтра соотношениями

(2.108)

где символом обозначена транспонированная матрица.

Следовательно, для получения -мерного случайного процесса с заданной спектральной матрицей нужно пропустить -мерный белый шум через -мерный формирующий фильтр, передаточная матрица которого удовлетворяет уравнениям (2.108). Для нахождения передаточной матрицы по заданной спектральной матрице требуется разбиение последней на два сомножителя вида (2.108). Эта процедура называется факторизацией спектральных матриц. Она может быть реализована по известным алгоритмам .

Многомерная фильтрация белого шума осуществляется достаточно просто: каждая составляющая случайного процесса на выходе -мерного фильтра с передаточной матрицей получается путем суммирования по составляющих входного процесса , профильтрованных одномерными фильтрами с передаточными функциями [см. формулу (2.107)]. Алгоритмы одномерной фильтрации рассмотрены выше.

При данном способе моделирования возможны два пути: 1) заданную спектральную матрицу непрерывного -мерного случайного процесса можно непосредственно подвергнуть факторизации для получения передаточной матрицы непрерывного формирующего фильтра, а затем, используя описанные выше точные или приближенные методы дискретизации непрерывных, фильтров, осуществить многомерную фильтрацию непрерывного белого шума; 2) по заданной спектральной матрице непрерывного -мерного процесса , используя -преобразование, можно найти спектральную матрицу соответствующего дискретного случайного процесса (см. § 2.3), далее путем факторизации найти передаточную, функцию дискретного формирующего фильтра, а затем произвести многомерную фильтрацию дискретного белого шума.

Наибольшие трудности встречаются при факторизации спектральных матриц. В настоящее время разработаны алгоритмы факторизации лишь рациональных спектральных матриц, т. е. таких матриц, элементы которых являются дробно-рациональными функциями аргументов или .

Опишем, опуская доказательства, один из алгоритмов факторизации рациональных спектральных матриц, взятый из .

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

.

Матрица может быть приведена к виду

путем следующих преобразований.

1. Определяется ранг матрицы , затем один из главных миноров порядка располагается в левом верхнем углу матрицы .

2. Матрица приводится к диагональному виду. Для этого к -й строке матрицы , , прибавляется первая строка, умноженная на - , затем к -му столбцу прибавляется первый столбец, умноженный на ; получается матрица

, (2.109)

где элементы матрицы

имеют вид

(2.110)

С матрицей проделываются те же преобразования, что с исходной матрицей . При продолжении этого процесса на -м шаге получается диагональная матрица

такая, что .

3. Находится вспомогательная матрица

элементы которой имеют следующий вид:

(2.111)

где определяются из рекуррентных соотношений

(2.112)

4. Находятся вспомогательные полиномы

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

.

5. По способу, рассмотренному в § 2.9, п. 2, дробно-рациональные функции

представляются в виде

,

где полиномы и не имеют нулей в нижней полуплоскости.

На этом процесс факторизации заканчивается. Окончательно передаточная матрица формирующего фильтра записывается в виде

(2.113)

Здесь описан алгоритм факторизации рациональных спектральных матриц непрерывных многомерных процессов. Факторизация спектральных матриц дискретных процессов осуществляется аналогично, только вместо корней, расположенных в нижней полуплоскости, берутся корни, расположенные в единичном круге.

Пример 1. Пусть задан двумерный непрерывный стационарный центрированный случайный процесс с корреляционной матрицей

, (2.114)

где - некоторые положительные константы, причем .

Корреляционная матрица, соответствующая спектральной матрице (2.114), имеет вид

, (2.115)

где и - автокорреляционные и взаимно корреляционный моменты процессов и соответственно; - коэффициент взаимной корреляции процессов и совпадающие моменты времени. Коэффициенты и представляют собой в данном случае ширину (на уровне 0,5) энергетических спектров и взаимного энергетического спектра процессов и .

Требуется произвести факторизацию спектральной матрицы (2.114) для получения передаточной матрицы формирующего фильтра.

Будем осуществлять процедуру факторизации поэтапно в соответствии с приведенным выше алгоритмом факторизации.

1. В данном случае ранг спектральной матрицы .

2. Для приведения матрицы к диагональной требуется один шаг. По формулам (2.109) и (2.110) получаем

.

3. В соответствии с выражениями (2.111) и (2.112) вспомогательная матрица имеет вид

4. В рассматриваемом случае нужно найти лишь один вспомогательный полином . Для этого требуется найти корни знаменателя у элемента матрицы , т. е. корни полинома . Эти корни равны

Следовательно,

.

5. На заключительном этапе требуется произвести факторизацию дробно-рациональных функций

В данном случае корни числителей и знаменателей у дробно-рациональных функций и легко вычисляются. Используя корни, лежащие в верхней полуплоскости (корни с положительными мнимыми частями), получим и к переменной :

.

На рис. 2.9 показана структурная схема двумерного формирующего фильтра, на выходе которого образуется двумерный случайный процесс с требуемыми спектральными характеристиками, если на вход фильтра воздействует белый шум. Заменяя непрерывный двумерный фильтр соответствующим дискретным фильтром, получим алгоритм для формирования на ЦВМ дискретных реализаций двумерного случайного нормального процесса, т. е. дискретных реализаций двух стационарных и стационарно-связанных нормальных случайных процессов с экспоненциальными авто- и взаимно корреляционными функциями вида (2.115).

При другом подходе к синтезу формирующего фильтра нужно сначала найти спектральную матрицу соответствующего дискретного многомерного случайного процесса . В рассматриваемом примере эта матрица имеет вид

И матрицы (2.116).

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

В других, более сложных случаях нули полинома не всегда удается найти аналитически. В этих случаях прибегают к численным методам решения уравнений - й степени. В общем виде процесс факторизации можно реализовать на ЦВМ как стандартную программу. Для этой цели кроме приведенного здесь могут быть использованы и другие алгоритмы факторизации .

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

Реляционная модель данных, которая была предложена Э.Ф. Коддом в 1970 году, и за которую десятилетие спустя он получил премию Тьюринга, служит основой современной многомиллиардной отрасли баз данных. За последние десять лет сложилась многомерная модель данных, которая используется, когда целью является именно анализ данных, а не выполнение транзакций. Технология многомерных баз данных - ключевой фактор интерактивного анализа больших массивов данных с целью поддержки принятия решения. Подобные базы данных трактуют данные как многомерные кубы, что очень удобно именно для их анализа.

Многомерные модели рассматривают данные либо как факты с соответствующими численными параметрами, либо как текстовые измерения, которые характеризуют эти факты. В розничной торговле, к примеру, покупка - это факт, объем покупки и стоимость - параметры, а тип приобретенного продукта, время и место покупки - измерения. Запросы агрегируют значения параметров по всему диапазону измерения, и в итоге получают такие величины, как общий месячный объем продаж данного продукта. Многомерные модели данных имеют три важных области применения, связанных с проблематикой анализа данных.

  • Хранилища данных интегрируют для анализа информации из нескольких источников на предприятии.
  • Системы оперативной аналитической обработки (online analytical processing - OLAP) позволяют оперативно получить ответы на запросы, охватывающие большие объемы данных в поисках общих тенденций.
  • Приложения добычи данных служат для выявления знаний за счет полуавтоматического поиска ранее неизвестных шаблонов и связей в базах данных.

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

Электронные таблицы и отношения

Электронные таблицы, аналогичные показанной в таблице 1, представляют собой удобный инструмент для анализа данных о продажах: какие продукты проданы, сколько совершено сделок и где. Главная таблица (pivot table) - двумерная электронная таблица с соответствующими промежуточными и итоговыми результатами, которая используется для просмотра более комплексных данных путем вложения нескольких измерений по осям x и y и отображения данных на нескольких страницах. Главные таблицы, как правило, поддерживают итеративный выбор подмножеств данных и изменение отображаемого уровня детализации.

Электронные таблицы не подходят для управления и хранения многомерных данных, поскольку они слишком жестко связывают данные с их внешним видом, не отделяя структурную информацию от желаемого представления информации. Скажем, добавление третьего измерения, такого как время, или группировка данных по обобщенным типам продуктов требует значительно более сложной настройки. Очевидное решение состоит в использовании отдельной электронной таблицы для каждого измерения. Но такое решение оправдано только в ограниченной степени, поскольку анализ подобных наборов таблиц быстро становится чересчур громоздким.

Использование баз данных, поддерживающих SQL, значительно увеличивает гибкость обработки структурированных данных. Однако сформулировать многие вычисления, такие как совокупные показатели (объем продаж за год к текущему моменту), сочетание итоговых и промежуточных результатов, ранжирование, например, определение десяти самых продаваемых продуктов, посредством стандартного варианта SQL весьма сложно, если вообще возможно. При перестановке строк и столбцов необходимо вручную специфицировать и комбинировать различные представления. Расширения SQL, такие как оператор кубов данных и окна запросов частично решают эти задачи, в целом чистая реляционная модель не позволяет на приемлемом уровне работать с иерархическими измерениями.

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

Кубы

Многомерные базы данных рассматривают данные как кубы, которые являются обобщением электронных таблиц на любое число измерений. Кроме того, кубы поддерживают иерархию измерений и формул без дублирования их определений. Набор соответствующих кубов составляет многомерную базу данных (или хранилище данных).

Кубами легко управлять, добавляя новые значения измерений. В обычном обиходе этим термином обозначают фигуру с тремя измерениями, однако теоретически куб может иметь любое число измерений. На практике чаще всего кубы данных имеют от 4 до 12 измерений . Современный инструментарий часто сталкивается с нехваткой производительности, когда так называемый гиперкуб имеет свыше 10-15 измерений.

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

На рис. 1 показан куб, содержащий данные по продажам в двух датских городах, указанных в таблице 1 с дополнительным измерением - «Время». В соответствующих ячейках хранятся данные об объеме продаж. В примере можно обнаружить «факт» - непустую ячейку, содержащую соответствующие числовые параметры - для каждой комбинации время, продукт и город, где была совершена, по крайней мере, одна продажа. В ячейке размещаются числовые значения, связанные с фактом - в данном случае, это объем продаж - единственный параметр.

В общем случае куб позволяет представить только два или три измерения одновременно, но можно показывать и больше за счет вложения одного измерения в другое. Таким образом, путем проецирования куба на двух- или трехмерное пространство можно уменьшить размерность куба, агрегировав некоторые размерности, что ведет к работе с более комплексными значениями параметров. К примеру, рассматривая продажи по городам и времени, мы агрегируем информацию для каждого сочетания город и время. Так, на рис. 1, сложив поля 127 и 211, получаем общий объем продаж для Копенгагена в 2001 году.

Измерения

Измерения - ключевая концепция многомерных баз данных. Многомерное моделирование предусматривает использование измерений для предоставления максимально возможного контекста для фактов . В отличие от реляционных баз данных, контролируемая избыточность в многомерных базах данных, в общем, считается оправданной, если она увеличивает информационную ценность. Поскольку данные в многомерный куб часто собираются из других источников, например, из транзакционной системы, проблемы избыточности, связанные с обновлениями, могут решаться намного проще. Как правило, в фактах нет избыточности, она есть только в измерениях.

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

Иногда бывает полезно определять несколько иерархий для измерения. Например, модель может определять время как в финансовых годах, так и в календарных. Несколько иерархий совместно используют один или несколько общих, самых низких уровней, например, день и месяц, и модель группирует их в несколько более высоких уровней - финансовый квартал и календарный квартал. Чтобы избежать дублирования определений, метаданные многомерной базы данных определяют иерархию измерений.

На рис. 2 показана схема «Местоположение» для данных продаж из таблицы 1. Из трех уровней измерений местоположения самый низкий - «Город». Значения уровня «Город» группируются в значения на уровне «Страна», к примеру, Аалборг и Копенгаген находятся в Дании. Уровень T представляет все измерения.

В некоторых многомерных моделях уровень имеет несколько связанных свойств, которые содержат простую, неиерархическую информацию. Например, «Размер пакета» может быть свойством уровня в измерении «Продукт». Измерение «Размер пакета» может также получать эту информацию. Использование механизма свойств не приводит к увеличению числа измерений в кубе.

В отличие от линейных пространств, с которыми имеет дело алгебра матриц, многомерные модели, как правило, не предусматривают функций упорядочивания или расстояния для значений измерения. Единственное «упорядочивание» состоит в том, что значения более высокого уровня содержат значения более низких уровней. Однако для некоторых измерений, таких как время, упорядоченность значений размерности может использоваться для вычисления совокупной информации, такой как общий объем продаж за определенный период. Большинство моделей требуют определения иерархии измерений для формирования сбалансированных деревьев - иерархии должны иметь одинаковую высоту по всем ветвям, а каждое значение не корневого уровня - только одного родителя.

Факты

Факты представляют субъект - некий шаблон или событие, которые необходимо проанализировать. В большинстве многомерных моделей данных факты однозначно определяются комбинацией значений измерений; факт существует только тогда, когда ячейка для конкретной комбинации значений не пуста. Однако некоторые модели трактуют факты как «объекты первого класса» с особыми свойствами. Большинство многомерных моделей также требуют, чтобы каждому факту соответствовало одно значение на более низком уровне каждого измерения, но в некоторых моделях это не является обязательным требованием .

Каждый факт обладает некоторой гранулярностью, определенной уровнями, из которых создается их комбинация значений измерений. Например, гранулярность факта в кубе, представленном на рис. 1 - это (Год x Продукт x Город). (Год x Тип x Город) и (День x Продукт x Город) - соответственно более грубая и более тонкая гранулярности.

Хранилища данных, как правило, содержат следующие три типа фактов .

  • События (event), по крайней мере, на уровне самой большой гранулярности, как правило, моделируют события реального мира, при этом каждый факт представляет определенный экземпляр изучаемого явления. Примерами могут служить продажи, щелчки мышью на Web-странице или движение товаров на складе.
  • Мгновенные снимки (snapshot) моделируют состояние объекта в данный момент времени, такие как уровни наличия товаров в магазине или на складе и число пользователей Web-сайта. Один и тот же экземпляр явления реального мира, например, конкретная банка бобов, может возникать в нескольких фактах.
  • Совокупные мгновенные снимки (cumulative snapshot) содержат информацию о деятельности организации за определенный отрезок времени. Например, совокупный объем продаж за предыдущий период, включая текущий месяц, можно легко сравнить с показателями за соответствующие месяцы прошлого года.

Хранилище данных часто содержит все три типа фактов. Одни и те же исходные данные, например, движение товаров на складе, могут содержаться в трех различных типах кубов: поток товаров на складе, список товаров и поток за год к текущей дате.

Параметры

Параметры состоят из двух компонентов:

  • численная характеристика факта, например, цена или доход от продаж;
  • формула, обычно простая агрегативная функция, скажем, сумма, которая может объединять несколько значений параметров в одно.

В многомерной базе данных параметры, как правило, представляют свойства факта, который пользователь хочет изучить. Параметры принимают различные значения для разных комбинаций измерений. Свойство и формула выбираются таким образом, чтобы представлять осмысленную величину для всех комбинаций уровней агрегирования. Поскольку метаданные определяют формулу, данные, в отличие от случая электронных таблиц, не тиражируются.

При вычислениях три различных класса параметров ведут себя совершенно по-разному.

  • Аддитивные параметры могут содержательным образом комбинироваться в любом измерении. Например, имеет смысл суммировать общий объем продаж для продукта, местоположения и времени, поскольку это не вызывает наложения среди явлений реального мира, которые генерируют каждое из этих значений.
  • Полуаддитивные параметры, которые не могут комбинироваться в одном или нескольких измерениях. Например, суммирование запасов по разным товарам и складам имеет смысл, но суммирование запасов товаров в разное время бессмысленно, поскольку одно и то же физическое явление может учитываться несколько раз.
  • Неаддитивные параметры не комбинируются в любом измерении, обычно потому, что выбранная формула не позволяет объединить средние значения низкого уровня в среднем значении более высокого уровня.

Аддитивные и неаддитивные параметры могут описывать факты любого рода, в то время как полуаддитивные параметры, как правило, используются с мгновенными снимками или совокупными мгновенными снимками.

Запросы

Многомерная база данных естественным образом предназначена для определенных типов запросов.

  • Запросы вида slice-and-dice осуществляют выбор, сокращающий куб. К примеру, можно рассмотреть сечение куба на рис. 1, приняв во внимание только те ячейки, которые касаются хлеба, а затем еще больше сократить его, оставив ячейки, относящиеся только к 2000 году. Фиксация значения измерения сокращает размерность куба, но при этом возможны и более общие операции выбора.
  • Запросы вида drill-down и roll-up - взаимообратные операции, которые используют иерархию измерений и параметры для агрегирования. Обобщение до высших значений соответствует исключению размерности. Например, свертка от уровня «Город» до уровня «Страна» на рис. 2 агрегирует значения для Аалборга и Копенгагена в одно значение - Дания.
  • Запросы вида drill-across комбинируют кубы, которые имеют одно или несколько общих измерений. С точки зрения реляционной алгебры такая операция выполняет слияние (join).
  • Запросы вида ranking возвращает только те ячейки, которые появляются в верхней или нижней части упорядоченного определенным образом списка, например, 10 самых продаваемых продуктов в Копенгагене в 2000 году.
  • Поворот (rotating) куба дает пользователям возможность увидеть данные, сгруппированные по другим измерениям.

Реализация

Многомерные базы данных реализуют в двух основных формах.

  • Системы многомерной оперативной аналитической обработки (MOLAP) хранят данные в специализированных многомерных структурах. Системы MOLAP, как правило, содержат средства для обработки разреженных массивов и применяют усовершенствованную индексацию и хеширование для поиска данных при выполнении запросов .
  • Реляционные системы OLAP (ROLAP) для хранения данных используют реляционные базы данных, а также применяют специализированные индексные структуры, такие как битовые карты, чтобы добиться высокой скорости выполнения запросов.

Системы MOLAP, как правило, позволяют добиться более эффективного использования дискового пространства, а также меньшего времени ответов при обработке запросов.

Сокращение времени ответа при обработке запросов

Самые важные методы увеличения производительности в многомерных базах данных - это предвычисления (precomputation). Их специализированный аналог - предагрегирование (preaggregation), которое позволяет сократить время ответа на запросы, охватывающие потенциально огромные объемы данных, в степени, достаточной для проведения интерактивного анализа данных.

Вычисление и сохранение, или «материализация», сводных объемов продаж по странам и месяцам, - пример предагрегирования. Такой подход позволяет быстро получать ответы на запросы, касающиеся общего объема продаж, к примеру, в одном месяце, в одной стране или по кварталу и стране одновременно. Эти ответы можно получить из предварительно вычисленных данных и нет необходимости обращаться к информации, размещенной в хранилище данных.

Современные коммерческие реляционные базы данных, а также специализированные многомерные системы, содержат средства оптимизации запросов на основе предварительно вычисленных агрегатов (aggregate) и автоматического перевычисления хранимых агрегатов при обновлении базовых данных .

Полное предагрегирование - материализация всех сочетаний агрегатов - невозможно, поскольку требует слишком большого дискового пространства и времени на предварительные вычисления. Вместо этого современные системы OLAP следуют более практическому подходу к предагрегированию, материализуя только избранные комбинации агрегатов, а затем используя их для более эффективного вычисления других агрегатов . Повторное использование агрегатов требует поддержания корректной многомерной структуры данных.

Литература
  1. R. Winter, «Databases: Back in the OLAP Game», Intelligent Enterprise Magazine, vol. 1, no. 4, 1998
  2. E. Thomsen, G. Spofford, D. Chase, Microsoft OLAP Solutions, John Wiley & Sons, New York, 1999

Torben Bach Pedersen, Christian S. Jensen, Multidimensional Database Technology. IEEE Computer, December 2001. Copyright IEEE Computer Society, 2001. All rights reserved. Reprinted with permission.

Страницы 513-523

Многомерные процессы

До сих пор мы рассматривали модели, которые состоят только из одного соотношения, связывающего временные ряды. При этом мы выбирали одну из переменных в качестве эндогенной, а остальные переменные являлись экзогенными. Такое разделение не всегда является естественным, часто приходится рассматривать одновременно несколько соотношений, в которые одни и те же переменные входят и как эндогенные, и как экзогенные. Как видно из прошлой лекции, переменная не всегда может рассматриваться как экзогенная, и мы фактически должны рассматривать модель DGP, состоящую из нескольких уравнений. Это означает моделирование нескольких временных рядов одновременно, другими словами - моделирование многомерного случайного процесса.

Начнем с определении. Рассмотрим вектор =(х t 1 ,х t 2 ,...,х t k) T , каждая компонента которого является временным рядом. верхним индексом будем обозначать номер компоненты, а нижним по-прежнему - момент времени. распределение компонент характеризуется семейством совместных плотностей распределения вида: f n (х t1 i1 ,х t2 i2 ,..., х tn in )‚ n=1‚2,.... Условием стационарности в узком смысле по-прежнему является независимость от сдвига во времени всего семейства совместных плотностей распределения. Только теперь кроме всевозможных комбинаций значений случайного процесса в различные моменты времени аргументами плотностей вероятности также являются всевозможные комбинации различных компонент в различные моменты времени. Например, для двухмерной плотности получаем из условия стационарности: f 2 t 1 t 2 ) = f 2 (х 1 t + r , х 2 t + r ) для любого τ. Совместное распределение компонент для одного и того же момента времени не зависит от времени. Рассмотрим другую функцию распределения, например трехмерную, в которую входят значения первой компоненты в два разных момента времени и второй компоненты в некоторый третий момент времени. Стационарность означает, чтоf 3 t 1 t + h 1 t + s 2 ) = f 3 (х 1 t + τ , х 2 t + s + τ ) . Можно сказать, что это свойство инвариантности к сдвигу во времени. То есть, если к каждому моменту времени прибавить величину τ, то функция плотности не изменится. Понятно, что стационарность многомерного процесса влечет за собой стационарность каждой из его компонент.

Как и в одномерном случае, стационарность в узком смысле влечет за собой ряд свойств характеристик случайных процессов. Прежде всего, начнем с математического ожидания. Математическое ожидание для каждой компоненты не зависит от других компонент. Поэтому если многомерный процесс стационарен, математическое ожидание каждой компоненты не зависит от времени. Вектор математических ожиданий E( не зависит от времени.

Теперь рассмотрим моменты второго порядка. Каждая компонента характеризуется дисперсией и автокорреляционной функцией. Если одномерный ряд стационарен, его автокорреляционная и автоковариационная функции зависят только от сдвига τ: Corr(τ) = Corr(х t i j t + r ) = р i (τ), однако теперь можно рассмотреть второй смешанный момент для различных компонент, а также Corr(х t i j t + r ). Такую величину естественно назвать кросс-корреляционной функцией. Если компоненты образуют многомерный стационарный процесс, то кросс-корреляция будет функцией сдвига во времени τ. Обозначим эту функцию R ij (τ) . Довольно очевидно, что R ij (τ) = R ji (- τ) . При фиксированном значении τ элементы R ij (τ) образуют матрицу R, зависящую от τ. Значению τ, равному нулю, соответствует корреляционная матрица вектора

В предыдущей секции мы рассматривали двухмерную диаграмму переходов состояний. Для увеличивающегося числа потоков нагрузки число состояний (и следовательно уравнений) увеличивается очень быстро. Однако, можно упростить проблему, используя структуру диаграммы переходов состояний. Рассмотрим двухмерную диаграмму переходов состояний, показанную в рис. 10.2. Для четырех соседних состояний поток в направлении по часовой стрелке должен равняться потоку в противоположном направлении (Kingman, 1969 ), (Sutton, 1980 ). Взглянем на рис. 10.2.


Рис. 10.2.

По часовой стрелке :


Против часовой стрелки :


Мы можем сократить оба выражения на вероятности состояния и затем получить условие (10.12). Необходимое и достаточное условие для обратимости - что следующие два выражения являются равными.

По часовой стрелке :

(10.12)

Против часовой стрелки :

Если эти два выражения равны, то имеется локальное или частичное равновесие . Таким образом, необходимым условием для обратимости является то, что если есть поток (стрелка) от состояния i к состоянию j , тогда должен также быть поток (стрелка) от состояния j до состояния i . Мы можем применить уравнения сечения между любыми двумя подключенными состояниями. Итак, из рисунка 10.2 мы получаем:

(10.13)

Мы можем выразить любую вероятность состояния с помощью вероятности состояния , выбирая любой путь между этими двумя состояниями (критерии Колмогорова ). Мы можем, например, выбрать путь :

Тогда получаем следующее уравнение равновесия:

(10.17)

Если мы рассматриваем многомерную систему с потерями, имеющую N потоков нагрузки, то любым потоком нагрузки может быть зависимый от состояния Пуассоновский процесс. В конкретном потоке могут быть нагрузки типа BPP (Бернулли, Пуассон, Паскаль ). Для N - мерных систем условия обратимости аналогичны (10.12). Критерий Колмогорова должен выполняться для всех возможных путей. Практически, мы не испытываем никаких проблем, потому что решение, полученное согласно предположению об обратимости, будет правильным решением тогда и только тогда, когда выполнены уравнения равновесия узла. В следующей секции мы используем это как основание , чтобы ввести общую многомерную модель нагрузки.

Многомерные Системы с потерями

В этой секции мы рассматриваем обобщения классической теории телетрафика для систем, которые состоят из нескольких типов потоков нагрузки, поступающих на единственный канал или группу каналов или пучков каналов. Каждый поток нагрузки может иметь отдельные параметры и может быть зависимыми от состояния Пуассоновскими потоками вызовов с ограниченными классами и мультислотовым трафиком. Этот общий класс моделей нечувствителен к распределению времени пребывания в системе, которое может быть классом. Мы вводим обобщения по одному и представляем маленькое социологическое исследование, чтобы проиллюстрировать основные идеи.

Ограничение класса

По сравнению со случаем, который рассматривают в секции 10.1, мы теперь ограничим число одновременных запросов для каждого потока нагрузки (класса). Таким образом, не будет полной доступности, но в отличие от систем перегрузки, где физически существует доступ только к заданным каналам, теперь возможно использование всех каналов, но в любой момент мы можем занять только ограниченное их число. Это обеспечивает сервисная защита (защита числа виртуальных каналов = ограничение на класс обслуживания = приоритетная пороговая стратегия). Таким образом, мы вводим ограничения числа одновременных вызовов в классе j следующим образом:

(10.18)

Если последнее ограничение не выполнено, то мы получаем отдельные группы, соответствующие N обычным независимым одномерным системам с потерями . Из-за ограничений диаграмма переходов состояний усечена. Для двух потоков нагрузки она показана на рис.10.3 .


Рис. 10.3.

Заметим, что усеченная диаграмма переходов состояний все еще является обратимой и что значение относительно значения при усечении не изменяется. Изменяется только нормировочная константа. Фактически, из-за локального свойства равновесия мы можем удалить любое состояние, не изменяя вышеупомянутые свойства. Можно рассмотреть больше общих ограничений класса к наборам потоков нагрузки так, чтобы любой поток нагрузки имел минимум (гарантируемый) числа распределенных каналов.

Обобщенные процессы обслуживания нагрузки

Мы можем рассматривать PCT -I нагрузку только как в секции 10.1. Каждый поток нагрузки может быть зависимым от состояния, например, Пуассоновский поток вызовов с линейной зависимостью от состояния и своей скоростью выхода из системы (гибели), см. (10.16) и (10.17)

Система удовлетворяет условиям обратимости, см. (10.12). Таким образом, форма произведения также существует для BPP -потоков нагрузки и более общих Пуассоновских процессов, зависимых от состояния. Если все потоки нагрузки - энгсетовские (Биноминальные) процессы, то мы получаем многомерную формулу Энгсета (Jensen, 1948). Как уже упомянуто выше, система нечувствительна к распределениям времени пребывания в системе. Каждый поток нагрузки может иметь свое собственное отдельное распределение времени пребывания в системе.

Мультислотовая нагрузка

В системах с интеграцией служб требуемая пропускная способность может зависеть от типа обслуживания. Например, для обслуживания телефонного соединения с передачей только речи требуется один канал (слот), тогда как, например, для передачи видеоизображения может потребоваться каналов одновременно. Мы получаем дополнительные ограничения:

(10.19)
(10.20)

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