Описывая поведение непредсказуемого процесса, математики употребляют термин «случайная величина». Случайная величина - это просто функция со случайными значениями. Математическое ожидание (expected value) E[X] случайной переменной X- это среднее из принимаемых X значений. Во многих трудах по статистике и теории вероятности прописная буква (как, например, X) обозначает случайную величину, обладающую рядом свойств, в том числе математическим ожиданием и распределением (о котором мы вскоре поговорим). В теории массового обслуживания прописные буквы часто обозначают как случайную величину, так и ее математическое ожидание. Читателям приходится по контексту догадываться о том, что именно подразумевается в каждом конкретном случае. Такие же обозначения приняты и в этой книге, например, технически более точная, но громоздкая формула E[R] = E[S] + E[W] заменяется на R = S + W.
Несмотря на то, что как следует из ее названия, значением случайной переменной является случайное число, сам процесс появления таких значений обычно подчинен какому-то порядку. Например, в телефонной системе со средней интенсивностью поступления в 2,0 запроса в секунду, возможно получение 200 запросов в течение одной секунды, но такая ситуация крайне маловероятна. Математическая функция, моделирующая вероятность принятия случайной величиной определенного значения, называется распределением данной случайной величины. Если быть точнее, то вероятность того, что дискретная случайная величина X примет определенное значение x, называется функцией плотности вероятности (probability density function - pdf) случайной величины и обозначается как f(x) = P(X = x) [Hogg and Tanis (1977) 51-58].
Точно предсказать время поступления в систему следующего запроса невозможно, поэтому время между поступлениями последовательных запросов представляет собой случайную величину. Соответственно, интенсивность поступлений (значение, обратное предыдущему) также является случайной величиной. В 1909 г. Агнер Эрланг (Agner Erlang) показал, что интенсивность поступления вызовов в телефонной системе часто характеризуется распределением Пуассона [Erlang (1909)]. Точнее, если телефонные звонки поступают со средней интенсивностью X > 0, то функция плотности вероятности для интенсивности поступления имеет вид:
Если телефонные вызовы поступают в среднем с частотой X, равной 2 вызовам в секунду, то вероятность того, что в одну секунду будет получено 200 вызовов, равна f(200) = 2,7575 х 10-316. Другими словами, если процесс поступления телефонных вызовов действительно подчиняется распределению Пуассона для X = 2, то вероятность получения пятидесяти четырех наборов из десятки, валета, дамы, короля и туза одной масти первым игроком при игре в покер (так называемого «royal flush») больше, чем вероятность существования секундного интервала, в течение которого в систему поступило бы 200 вызовов. Вероятность же того, что односекундный интервал будет заключать в себе ровно ноль, один, два, три или четыре вызова, значительно выше. Функция плотности вероятности для распределения Пуассона с параметром X = 2 приведена на рис. 9.8. Кстати, интенсивность поступления запросов во многих компьютерных приложениях, включая и разнообразные компоненты Oracle, также подчиняется распределению Пуассона.
Необходимо отметить, что символ X, обозначающий среднюю интенсивность поступления запросов в систему массового обслуживания,конечно же, неслучайно применяется и для обозначения среднего значения распределения Пуассона. Немного забегая вперед, скажу, что специфическая модель M/M/m теории массового обслуживания (о которой мы вскоре поговорим) работает только в том случае, если процесс поступления запросов в систему подчиняется распределению Пуассона с параметром X. Интенсивность поступлений в теории массового обслуживания обозначается буквой X, потому что это и есть среднее значение распределения Пуассона.
Время обслуживания системы - это тоже случайная величина. Например, время, необходимое банковскому кассиру для подсчета денег клиента, можно оценить и спрогнозировать в среднем, но не в каждом конкретном случае. Невозможно предугадать даже, сколько времени потребуется процессору на выполнение операции LIO в Oracle. Логический ввод/вывод (LIO) - это операция, посредством которой ядро Oracle осуществляет выборку одного блока из кэша буферов базы данных. Например, процессор может в среднем обслужить 40 000 запросов LIO в секунду (т. е. ц = 40 000), но скорость работы может значительно меняться от секунды к секунде. Элемент случайности вносят такие факторы, как тип и сложность блока Oracle (например, является ли блок блоком индекса или же таблицы), изменяющееся количество строк в каждом блоке Oracle и изменяющаяся ширина столбцов данных в таких блоках.
Для того чтобы использовать математическое ожидание случайной величины в различных прогнозирующих формулах, необходимо знать, какому распределению она подчиняется. Например, можно сказать, что во время обеденного перерыва клиенты входили в ресторан в среднем с частотой 2 клиента в минуту, так что среднее время между приходами составляет 30 секунд. Однако по среднему значению не восстановить весь ход событий. Если известен только средний интервал прибытия клиентов, то, например, нельзя ничего сказать о том, приходили ли клиенты поодиночке ровно раз в 30 секунд, или же они появлялись группами. Если известно только, что последовательные запросы поступают в среднем раз в 30 секунд, то, например, просто нельзя знать, какой из двух случаев из таблицы 9.1 имел место.
Таблица 9.1. Два существенно разных сценария, в обоих из которых среднее значение интервала между событиями т равно 30 секундам
Количество событий
Интервалы времени
|
Случай I
|
Случай II
|
11:30-11:45
|
0
|
34
|
11:45-12:00
|
0
|
28
|
12:00-12:15
|
240
|
31
|
12:15-12:30
|
0
|
37
|
12:30-12:45
|
0
|
24
|
12:45-13:00
|
0
|
30
|
13:00-13:15
|
0
|
32
|
13:15-13:30
|
0
|
24
|
Среднее для 15-минутных интервалов
|
30
|
30
|
Если в действительности все было подобно случаю I, то нельзя ожидать от математической формулы достоверного предсказания событий, произошедших в период 13:00-13:15, сообщив ей, что «средняя интенсивность визитов составляла 120 в час». Для того чтобы модель массового обслуживания давала достоверные результаты, необходимо сообщить ей некоторую дополнительную информацию о свойствах случайных входных параметров, а не просто их средние значения. Модель также должна знать, каким образом распределена каждая случайная величина.
< Предыдущая | Следующая > |
---|