ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ И СИСТЕМЫ
УДК 004.056.53 DOI: 10.17586/0021-3454-2018-61-8-645-651
ОЦЕНКА ДЛИНЫ ПЕРИОДА НЕСТАЦИОНАРНЫХ ПРОЦЕССОВ
В ОБЛАЧНЫХ СИСТЕМАХ
С. А. Жмылёв, И. Г. Мартынчук, В. Ю. Киреев, Т. И. Алиев
Университет ИТМО, 197101, Санкт-Петербург, Россия E-mail: [email protected]
Рассматривается проблема автоматической оценки длины периода периодических нагрузочных процессов, протекающих в облачных вычислительных системах. Классический подход при моделировании нагрузки таких систем подразумевает стационарность потока входящих запросов, что в результате приводит к недостаточному соответствию получаемых моделей исследуемым объектам. Для автоматического построения адекватной аналитической модели необходимо по измеряемым данным оценить длину периода нагрузочного процесса. Предложен численный метод для автоматической оценки длины периода произвольных периодических функций, что позволяет в реальном времени работать с измеряемыми величинами, восстанавливая отсутствующие данные с помощью интерполяции известных соседних значений. В качестве степени схожести функций выбран коэффициент корреляции Пирсона. Для ускорения расчета математического ожидания и среднеквадратического отклонения предложено хранить массивы сумм значений измеряемых величин. Вычислительная сложность метода упрощена до полиномиальной, что делает возможным его реализацию, в том числе, во встраиваемых вычислительных системах. В ходе экспериментов с идеальными, зашумленными и реальными данными доказана точность оценивания длины периода.
Ключевые слова: периодическая функция, облачная система, численный метод, система с очередями, математическое моделирование
Введение. В настоящее время широко распространены вычисления в облачных системах, которые позволяют решать широкий спектр задач при малом времени обработки пользовательских запросов. Примерами таких систем могут служить различные интернет-сервисы преобразования форматов изображений и медиафайлов, сервисы для выполнения математических расчетов и коллективной работы с офисными документами [1, 2]. Поскольку облачные системы, как правило, имеют веб-интерфейс, для работы с ними не требуется специализированного программного обеспечения, поэтому число пользователей облачных систем постоянно увеличивается и возрастает суммарная нагрузка на них.
Облачная система представляет собой множество вычислительных систем, расположенных обычно в одном центре обработки данных (ЦОД), обслуживаемых одним и тем же коллективом и находящихся в юрисдикции одной управляющей организации [3, 4]. Управляющая организация предоставляет услуги аренды части вычислительной мощности облачной системы с помощью технологии виртуализации. Таким образом, арендатор получает некоторое количество виртуальных узлов одинаковой конфигурации, с помощью которых выполняется облачное приложение. Облачное приложение имеет единую точку входа для пользовательских
запросов и обладает свойством горизонтальной масштабируемости [5], благодаря чему структура облачного приложения скрыта от пользователей. Если в какой-то момент времени вычислительной мощности недостаточно, арендатор может приобрести дополнительные виртуальные узлы, увеличив общую производительность своего облачного приложения.
Периодические нестационарные процессы. Рассмотрим типовую облачную систему, в которой в общем случае можно выделить владельца ЦОД, арендатора облачной системы и пользователя облачной системы. При проектировании облачной системы владельцу ЦОД необходимо оценить максимальную нагрузку на приобретаемое аппаратное обеспечение с помощью ее описания в терминах теории массового обслуживания. Нагрузка, в зависимости от временных характеристик, может быть как стационарной, так и нестационарной. При этом характер нагрузки обусловливается изменением 1) параметров закона распределения, 2) функции распределения с сохранением параметров (в частности, математического ожидания), 3) как функции распределения, так и параметров закона распределения.
Среди нестационарных процессов выделяют следующие классы: периодические, апериодические (например, затухающие) и хаотические.
Поскольку реальные нагрузочные процессы не обладают свойством стационарности, широко используемые аналитические методы теории массового обслуживания не подходят для их описания и исследования. Поэтому возникает необходимость разработки методики исследования нестационарных процессов. Определяющие нагрузку на облачные вычислительные системы процессы относятся к классу периодических нестационарных процессов, что подтверждается, например, графиком сетевой активности крупнейшего в России узла обмена интернет-трафиком MSK-IX [6] (см. рисунок, здесь V — скорость передачи данных).
При выполнении измерений в реальной системе необходимо учесть не только численные характеристики распределения, влияющие на абсолютные значения измеряемых величин, но и периодическую составляющую, описывающую изменение характеристик распределения со временем. Для этого необходимо в автоматическом режиме оценить длину периода на основе выборки измеряемых значений, чтобы в дальнейшем представить наблюдаемый процесс в аналитической форме. В настоящей статье предлагается метод оценивания длины периода нестационарных процессов для обеспечения возможности их аналитического описания и исследования.
Существующие методы решения таких задач, как правило, связаны с анализом звуковых сигналов [7—9] или имеют иную, узкую область применения, что затрудняет их использование в сетевых вычислительных системах. Кроме того, эти методы не подходят для исследования протекающих в облачных вычислительных системах нестационарных процессов, поскольку функция, описывающая их изменения, не всегда имеет синусоидальный вид. Такие методы, как, например, метод быстрого преобразования Фурье (БПФ) не годятся для оценки периода сигналов с отсутствующей основной гармоникой [10, 11]. В частности, быстрое преобразование Фурье характеризуется низкой алгоритмической сложностью, но при этом требует большого количества операций
с плавающей точкой, в том числе при постобработке результатов. Также несмотря на высокую производительность быстрого преобразования Фурье для сигналов, имеющих естественную природу, его применимость не всегда актуальна для „искусственных" сигналов, например в вычислительной технике. В частности, количество слагаемых, которое требуется вычислить для БПФ при обработке функций с разрывами, стремится к бесконечности, что делает вычисление невозможным. В этой связи представленный в настоящей статье метод для оценки длины периода T нестационарного процесса должен удовлетворять следующим требованиям.
1. Оценка периода должна производиться при неполном наборе входных данных. Поскольку создаваемая пользователями нагрузка изменяется со временем, для управления облачной системой необходимо в „реальном времени" оценивать длину периода процесса поступления заявок в систему.
2. Метод должен обладать полиномиальной либо константной алгоритмической сложностью. Очевидно, что при длительных измерениях с высокой частотой выполнения замеров будет получено достаточно большое количество значений измеряемой величины, что приведет к существенному увеличению времени их обработки с помощью существующих алгоритмов, имеющих экспоненциальную сложность.
3. Объем потребляемой памяти должен линейно зависеть от количества входных данных, поскольку разработанный метод предполагается использовать для управления облачной системой с ограниченной емкостью памяти.
4. Метод должен быть устойчив к погрешностям измерений и обеспечивать получение достоверных результатов, в том числе в реальных условиях, характеризуемых неидеальной формой входного сигнала.
5. Должна быть обеспечена работа с входными данными, которые задаются произвольной периодической функцией, в том числе имеющей разрывы, обусловленные дискретностью измерений в реальных системах.
Описание метода. Пусть имеется некоторая периодическая величина Y, зависящая от времени — Y = у(V). Очевидно, существует такой момент времени , для которого интервал (О ) представляет собой целое число периодов функции у(V). Однако на практике измерения значений Y могут производиться с переменным временным шагом, зачастую с пропуском i-х отсчетов. Это делает невозможным итеративный проход по всем моментам времени через равный шаг для анализа поведения функции у(V), поэтому возникает необходимость получения недостающих значений Y, т.е. перехода от значений Y к значениям Y', отложенным через равные временные интервалы.
Для решения задачи получения недостающих значений функции у'^) высокая эффективность достигается при линейной интерполяции. Ее вычислительная сложность составляет 0(1), при этом оценка периода по интерполированным значениям имеет более высокую точность. Поскольку период Т содержит целое число интервалов V (при условии, что Т > V и Т кратно V), в момент времени Ц справедливо равенство у' (^ ) = у- Т). Таким образом, для
оценки периода в выборке можно найти два любых соседних равных по величине интервала, на которых функция у '(V) будет вести себя одинаково.
В предложенном методе используется итеративный проход по нормированной выборке заданной величины, начиная с момента to, т.е. момента первого измерения. В каждый второй момент времени ti происходит разбиение интервала V = ti -^ на два равных отрезка: ^ /2 и ti/2 . Если на полученных отрезках функция у '(V) ведет себя одинаково, то отрезок ti/2 является искомым периодом функции у'(V).
При разработке метода было рассмотрено множество способов оценивания схожести характеров функций. В качестве меры схожести поведения функции у'(¿) на отрезках времени ¿д ..Л1/2 и /2 ..Л1 принят коэффициент корреляции Пирсона г, который рассчитывается по формуле
г = соУрд — Л ^ ¿1 /2 ■■■Ч )
а[ —и/2 ]а[ /2 —и ]
Здесь корреляционный момент соу(^д /2, /2 — ) определяется как соу(Х; У) = М [(X - М [ X ])(У - М [У ])], где М — математическое ожидание (для задачи анализа ряда значений — среднее арифметическое), среднеквадратическое отклонение определяется как а = ^М X2 -М [X]2 .
Вследствие ограничения на вычислительную сложность разработанного метода для расчета величин М и а предлагается для каждого значения функции у'^) хранить в памяти
N N 2
вспомогательные суммы ^у'(tj) и ^) , где N — количество рассмотренных временно >о
ных отсчетов. Это позволяет сократить время определения математического ожидания выборки до времени вычисления разности двух величин и вычисления частного. При этом вычислительная сложность расчета М составит 0(1), а вычислительная сложность расчета коэффициента г уменьшится до 0(N).
Таким образом, для каждого второго отсчета функции у' ^) вычисляется степень схожести двух функций, характеризующих интервалы ¿д ..Л1 /2 и ¿¿/2 ..Л1 соответственно. Если коэффициент г превысил некоторое пороговое значение Я , величина t' = Ц/2 предполагается кратной периоду функции. В этом случае величина t' указывается в таблице предполагаемых периодов функции у' ^). Эта таблица характеризует соответствие некоторого предполагаемого периода Т' и количества раз п, которое данный период был зафиксирован среди значений функции у' (¿) с высокой степенью схожести. Соответственно при обработке следующих поступающих отсчетов функции у' ^) необходимо оценить не только степень схожести указанных интервалов функции у' ^), но и схожесть добавленных отсчетов функции со всеми кратными предполагаемыми периодами.
Для увеличения точности результатов величину п можно считать не числом вхождений периодов во множество известных значений функции, а суммой рассчитанных коэффициентов корреляции. В этом случае при г > Я значение п будет увеличиваться на величину Ап: Я < Ап < 1. Такой подход не повышает алгоритмическую сложность предлагаемого метода, однако требует несколько большего количества вычислений с плавающей точкой, что может быть нежелательно, например, во встраиваемых системах.
Пример. Пусть в момент времени ¿12 для некоторой функции у'(t) известна следующая таблица предполагаемых периодов: [2 ^ 3;4 ^ 2;5 ^ 1]. В первую очередь необходимо выбрать из таблицы все кратные предполагаемые периоды. В данном случае из таблицы будут выбраны значения 2 и 4 . Затем для этих значений необходимо оценить корреляцию г соответствующих отрезков функции у'(¿). Для значения 2 — на отрезках 8 < t < 10 и 10 < t < 12, а для значения 4 — на отрезках 4 < t < 8 и 8 < t < 12. Если г > Я, то таблица предполагаемых периодов примет вид [2 ^ 4;4 ^ 3;5 ^ 1]. В противном случае из таблицы предполагаемых периодов исключается значение, при котором величина г не превышает пороговое значение Я .
Наконец, необходимо оценить корреляцию г отрезков 0 < V < 6 и 6 < V < 12. Если г > Я, то в таблицу предполагаемых периодов добавляется запись [6 ^ 1].
Вопрос выбора значения Я , при котором получаемая оценка длины периода Т функции максимально соответствует реальной, требует особого внимания. Поскольку данная величина определяет нижнюю границу для функции автокорреляции, то чем меньше значение Я, тем больше вычислений потребуется произвести на каждом шаге алгоритма. Если Я < 0, то автокорреляция негативно влияет на получаемый результат: в лучшем случае (Я ^-1 и сумма полупериодов функции равна нулю) определяется длина полупериода, в остальных случаях период определить не представляется возможным. Следовательно, целесообразно всегда выбирать Я > 0 . С другой стороны, выбор слишком большого значения Я приводит к неточности выявления похожих выборок. Поскольку реальные процессы случайны по своей природе, корреляция периодов этих процессов никогда не достигает значения г = 1, хотя и стремится к нему.
В ходе экспериментов выявлено, что для идеальных функций (синусоидальной, меандра, пилообразной и треугольной) подходит значение Я = 0,999 . Согласно данным, полученным с узла MSK-IX [6], высокая точность оценки достигается при Я = 0,9 . В общем случае предлагается оценивать Я с помощью подготовительных имитационных экспериментов либо использовать Я = 0,8.
В любой момент времени ti, если необходимо оценить длину периода функции у'^), можно из таблицы предполагаемых периодов выбрать подмножество вариантов Т{, имеющих максимальное значение п. Затем оценить период функции у'(V) как медиану выбранного подмножества. Например, если таблица предполагаемых периодов имеет вид [4 ^ 2;5 ^ 2; 6 ^ 2;8 ^ 1;10 ^ 1], то nmax = 2, выбранное подмножество — [4; 5;6], а период Т = 5 .
Результаты. В ходе экспериментов с синусоидальным, треугольным, пилообразным, линейным и прямоугольным сигналами, амплитуда которых формировалась как идеальными функциями, так и функциями с наложенным случайным шумом, достигающим 50 % амплитуды исходного сигнала, выявлено, что при анализе выборок, состоящих от 2Т до 2 000 последовательных измерений функции у'(V) с периодом Т > 6, длина периода оценивалась верно в 99,9 ± 0,1 % случаев с доверительной вероятностью 0,95 . Анализ выборок с периодом 2 < Т < 6 продемонстрировал неэффективность метода при работе с функциями, имеющими такой период. Однако в результате оценки длины периода всегда и безошибочно определялись значения, кратные периоду: кТ, к е 2...16 . Такая неточность в оценке периода обусловлена тем, что взаимокорреляция длинных выборок значений зашумленной функции больше, чем взаимокорреляция коротких серий. Принимая во внимание область, для которой разработан метод оценивания длины периода в нагрузке на облачные системы, данной неточностью можно пренебречь, поскольку сигналы с малым значением периода можно считать стационарными, имеющими больший разброс. При анализе данных о сетевой активности в течение недели и месяца, полученных с узла MSK-IX [6], погрешность определения длины периода составила 0,1 ± 0,05 % от абсолютного значения с доверительной вероятностью 0,95.
Заключение. Предложенный численный параметризованный метод позволяет оценивать длину периода нестационарных процессов и полностью соответствует заявленным требованиям:
— позволяет работать с неполным набором данных за счет интерполяции выходных данных;
— позволяет пополнять таблицу предполагаемых периодов во время поступления данных;
— обладает полиномиальной алгоритмической сложностью, так как коэффициент корреляции требует линейной сложности вычисления, и в лучшем случае, когда таблица предполагаемых периодов содержит нуль значений, общая сложность алгоритма стремится
к 0(N), а в худшем случае, когда таблица предполагаемых периодов содержит каждое второе
— занимает объем памяти, линейно зависящий от входных данных: в худшем случае в памяти хранится каждое значение функции, запись в таблице предполагаемых периодов и две записи в таблицах вспомогательных сумм;
— учитывает возможные погрешности измерений и случайные отклонения значений функции от среднего за счет варьирования порогового значения R .
список литературы
1. Bogatyrev V. A., Bogatyrev A. V. Functional reliability of a realtime redundant computational process in cluster architecture systems // Automatic Control and Computer Sciences. 2015. Vol. 49, N 1. P. 46—56.
2. Bogatyrev V. A., Parshutina S. A., Poptcova N. A., Bogatyrev A. V. Efficiency of redundant service with destruction of expired and irrelevant request copies in real-time clusters // Communications in Computer and Information Science. 2016. Vol. 678. P. 337—348.
3. Беккер М. Я., Гатчин Ю. А., Кармановский Н. С., Терентьев А. О., Федоров Д. Ю. Информационная безопасность при облачных вычислениях: проблемы и перспективы // Научно-технический вестник Санкт-Петербургского государственного университета информационных технологий, механики и оптики. 2011. № 1 (71). С. 97—102.
4. Зикратов И. А., Одегов С. В. Оценка информационной безопасности в облачных вычислениях на основе байесовского подхода // Научно-технический вестник информационных технологий, механики и оптики. 2012. № 4 (80). С. 121—126.
5. Богатырев В. А., Богатырев С. В. Надежность мультикластерных систем с перераспределением потоков запросов // Изв. вузов. Приборостроение. 2017. Т. 60, № 2. С. 171—177.
6. АО „Центр взаимодействия компьютерных сетей МСК-IX". Суммарный трафик участников, передаваемый через MSK-IX [Электронный ресурс]: <https://www.msk-ix.ru/traffic>, 13.02.2018.
7. Sridhar P., Sheikh-Bahaei S., Xia S., Jamshidi M. Multi agent simulation using discrete event and soft-computing methodologies // Proc. IEEE Intern. Conf. on Systems, Man and Cybernetics. 2003. Vol. 2. P. 1711—1716.
8. Oppenheim A. V., Shchafer R. W. Digital Signal Processing. Pearson, 1999. 856 p.
9. Aliev T. I., Rebezova M. I., Russ A. A. Statistical methods for monitoring travel agencies in the settlement system // Automatic Control and Computer Sciences. 2015. Vol. 49, N 6. P. 321—327.
10. Чураев С. О., Адамова А. Д., Палташев Т. Т. Реализация алгоритма шумоподавления в речевом тракте систем мобильной связи на базе СБИС // Научно-технический вестник Санкт-Петербургского государственного университета информационных технологий, механики и оптики. 2011. № 1 (71). С. 72—76.
11. Коротков А. В., Мухин А. И. Усовершенствованный алгоритм анализа сигналов малозаметных радиолокационных станций на основе оконного преобразования Фурье // Научно-технический вестник информационных технологий, механики и оптики. 2012. № 1 (77). С. 33—36.
2
значение функции y'(t), сложность стремится к O(N );
Валерий Юрьевич Киреев
Илья Геннадьевич Мартынчук
Сергей Александрович Жмылёв
Тауфик Измайлович Алиев
Сведения об авторах Университет ИТМО; кафедра вычислительной техники; ассистент; E-mail: [email protected]
магистрант; Университет ИТМО; кафедра вычислительной техники; E-mail: [email protected]
студент; Университет ИТМО; кафедра вычислительной техники; E-mail: [email protected]
д-р техн. наук, профессор; Университет ИТМО; кафедра вычислительной техники; заведующий кафедрой; E-mail: [email protected]
Поступила в редакцию 17.02.18 г.
Ссылка для цитирования: Жмылёв С. А., Мартынчук И. Г., Киреев В. Ю., Алиев Т. И. Оценка длины периода нестационарных процессов в облачных системах // Изв. вузов. Приборостроение. 2018. Т. 61, № 8. С. 645—651.
ESTIMATION OF PERIODS OF NONSTATIONATY PROCESSES IN CLOUD SYSTEMS
S. A. Zhmylev, I. G. Martynchuk, V. Yu. Kireev, T. I. Aliev
ITMO University, 197101, St. Petersburg, Russia E-mail: [email protected]
The problem of automated evaluation of load process period in cloud systems is considered. A common approach to load simulation for such systems implies the stationary nature of incoming requests flow, which results in inadequate matching of the models to the objects under investigation. To automatically construct an adequate analytical model, it is necessary to estimate the length of the loading process period from measured data. A numerical method of automated period estimation for any periodic functions is proposed. The method allows real-time processing of measured values, restoring missing data by interpolation of known neighboring values. Pearson correlation coefficient is chosen as a criterion to calculate functions similarity. It's proposed to store arrays of sums of mean values and standard deviation values in the main memory to improve the method's performance. Computational complexity of the method is reduced to polynomial, which means that the method could be implemented even in the embedded systems. Period estimation accuracy is demonstrated by presented results of numerous experiments with ideal, randomly noised, and real signals.
Keywords: periodical function, cloud system, numerical method, queue system, mathematical modelling
REFERENCES
1. Bogatyrev V.A., Bogatyrev A.V. Automatic Control and Computer Sciences, 2015, no. 1(49), pp. 46-56.
2. Bogatyrev V.A., Parshutina S.A., Poptcova N.A., Bogatyrev A.V. Communications in Computer and Information Science, 2016, no. 678, pp. 337-348.
3. Bekker M.Ya., Gatchin Yu.A., Karmanovskiy N.S., Terent'yev A.O., Fedorov D.Yu. Scientific and Technical Journal of Information Technologies, Mechanics and Optics, 2011, no. 1(71), pp. 97-102. (in Russ.)
4. Zikratov I.A., Odegov S.V. Scientific and Technical Journal of Information Technologies, Mechanics and Optics, 2012, no. 4(80), pp. 121-126. (in Russ.)
5. Bogatyrev V.A., Bogatyrev S.V. Journal of Instrument Engineering, 2017, no. 2(60), pp. 171-177. (in Russ.)
6. https://www.msk-ix.ru/traffic/. (in Russ.)
7. Sridhar P., Sheikh-Bahaei S., Xia S., Jamshidi M. Proc. IEEE Int. Conf. on Systems, Man and Cybernetics, Washington, 2003, vol. 2, pp. 1711-1716.
8. Oppenheim A.V., Shchafer R.W. Digital Signal Processing, Pearson, 1999, 856 p.
9. Aliev T.I., Rebezova M.I., Russ A.A. Automatic Control and Computer Sciences, 2015, no. 6(49), pp. 321-327.
10. Churayev S.O., Adamova A.D., Paltashev T.T. Scientific and Technical Journal of Information Technologies, Mechanics and Optics, 2011, no. 1(71), pp. 72-76. (in Russ.)
11. Korotkov A.V., Mukhin A.I. Scientific and Technical Journal of Information Technologies, Mechanics and Optics, 2012, no. 1(77), pp. 33-36. (in Russ.)
Sergey A. Zhmylev Ilya G. Martynchuk Valery Yu. Kireev Taufik I. Aliev
For citation: Zhmylev S. A., Martynchuk I. G., Kireev V. Yu., Aliev T. I. Estimation of periods of nonsta-tionaty processes in cloud systems. Journal of Instrument Engineering. 2018. Vol. 61, N 8. P. 645—651 (in Russian).
DOI: 10.17586/0021-3454-2018-61-8-645-651
Data on authors
ITMO University, Department of Computation Technologies; Assistant; E-mail: [email protected]
Graduate Student; ITMO University, Department of Computation Technologies; E-mail: [email protected]
Student; ITMO University, Department of Computation Technologies; E-mail: [email protected]
Dr. Sci., Professor; ITMO University, Department of Computation Technologies; Head of the Department; E-mail: [email protected]