Поскольку в последние годы в облаке развертывается все больше и больше программных услуг и решений, это не только увеличивает сложность проектирования ИТ-инфраструктуры в центрах обработки данных, но также увеличивает сложность эксплуатации и управления центром обработки данных. Благодаря быстрому развитию технологий искусственного интеллекта (ИИ) использование ИИ может значительно улучшить работу и обслуживание центров обработки данных.
С развитием искусственных нейронных сетей (ИНС) и методов глубокого обучения в последнее время было успешно реализовано множество приложений с использованием ИИ, таких как распознавание изображений и распознавание речи. В этой статье описывается, как команда специалистов по науке о данных в ProphetStor использует ANN и технологии глубокого обучения для прогнозирования производительности аппаратных компонентов, виртуальных компонентов и приложений центра обработки данных. Модель прогнозирования производительности в дальнейшем используется для обнаружения аномалий показателей производительности. В качестве примера в этой статье мы будем использовать показатели производительности диска.
Набор данных метрик дискового ввода-вывода
На изображении ниже показаны шесть показателей производительности жесткого диска, используемого для службы цифровой потоковой передачи. Сверху вниз это пропускная способность чтения / записи (байты чтения, байты записи), IOPS чтения / записи (чтение, запись) и задержка чтения / записи (время чтения, время записи). Данные для каждой метрики разделены на две группы: обучающие данные и тестовые данные, где обучающие данные охватывают наблюдения в течение примерно 30 дней, а тестовые данные охватывают наблюдения в течение примерно семи дней. Размер данных для каждого наблюдения генерируется в течение одного часа из реальной рабочей нагрузки. Рабочая нагрузка каждой метрики представлена в виде временного ряда. Учитывая такие реальные рабочие нагрузки и соответствующие им временные ряды, техническая задача состоит в том, чтобы найти правильную модель для точного прогнозирования различных показателей производительности диска.
Прогноз производительности
Мы используем долговременную память (LSTM) для прогнозирования показателей производительности. LSTM - это тип рекуррентной нейронной сети (RNN), которая обычно используется для моделирования данных последовательности. Чтобы сгенерировать прогноз для метрики производительности, модель сначала обучается, вводя свои исторические данные в алгоритм LSTM. Затем прогноз производительности создается путем ввода новых данных в обученную модель LSTM. В частности, эти шесть показателей рассматриваются как шесть переменных, а многомерная модель LSTM используется для изучения связи между переменными с целью повышения точности прогнозов. По результатам видно, что наш подход работает очень хорошо - RAE (относительная абсолютная ошибка) результатов производительности составляет около 1.
Аналогичные подходы к машинному обучению можно применять к другим показателям, важным для работы ИТ, таким как использование ЦП, использование памяти, сетевой трафик, энергопотребление и т. Д. Такие результаты прогноза могут помочь ИТ-администраторам более эффективно планировать и распределять аппаратные ресурсы центра обработки данных. .
Обнаружение аномалий производительности
Кроме того, результаты прогнозирования могут использоваться для обнаружения аномалий производительности. Например, на изображении ниже для заданного показателя производительности показано, что наблюдаемое значение P значительно отклоняется от соответствующего прогнозируемого значения. Поскольку прогнозируемые значения выводятся из исторических данных, наблюдаемое значение P можно рассматривать как аномалию.
Однако этот простой подход может вызвать слишком много ложных тревог, если используется только разница между наблюдаемым значением и прогнозируемым значением. Чтобы избежать этой проблемы, мы дополнительно усиливаем обнаружение аномалии, сравнивая разницу между наблюдаемым значением и ранее наблюдаемыми значениями в течение определенного интервала времени. Например, как показано на изображении выше, временной индекс наблюдаемого значения P равен T2, и мы сравнили P с наблюдаемыми значениями за предыдущий временной интервал (T1, T2). Если (1) разница между наблюдаемым значением и соответствующим ему прогнозируемым значением достаточно велика, и (2) разница между наблюдаемым значением и ранее наблюдаемыми значениями (за интервал времени) достаточно велика, то мы определяем, что наблюдаемое значение является ненормальным, что снижает частоту ложных срабатываний.
Например, как показано на изображении, если используется только разница между наблюдаемым значением и прогнозируемым значением, наблюдаемое значение P, наблюдаемое значение Q и все наблюдаемые значения R признаны ненормальными. Путем дальнейшего вычисления разницы между вышеупомянутыми наблюдаемыми значениями (P, Q и R) и их соответствующими ранее наблюдаемыми значениями, только наблюдаемое значение P считается ненормальным. Это связано с тем, что среди P, Q и R только P удовлетворяет критерию, согласно которому разница между наблюдаемыми значение и ранее наблюдаемые значения достаточно велики.
Очевидно, что можно найти вариации различных критериев при определении того, когда наблюдаемое значение является ненормальным. Наша модель позволяет пользователям гибко менять свои критерии.
Почему мы применяем глубокое обучение для прогнозирования производительности?
В эпоху больших данных, веб-сервисов и микросервисных приложений работа ИТ, сопровождающаяся поразительным ростом объемов данных, становится узким местом для роста бизнеса. Для ИТ-администраторов становится все более сложной задачей устранять ежедневные инциденты в ИТ-среде. Многие метрики создаются на разных ИТ-уровнях, например веб-запросы на уровне приложений, виртуальные машины на уровне виртуализации, а также данные о работоспособности дисков и данные физической памяти на уровне инфраструктуры.
Используя только традиционные алгоритмы, такие как модели MA (скользящее среднее) и ARIMA (авторегрессионное интегрированное скользящее среднее), невозможно точно смоделировать показатели динамической производительности. ИТ-администраторы столкнулись с дилеммой: обрабатывать слишком много ложных тревог, генерируемых этими алгоритмами, или они пропускали истинные сигналы, указывающие на проблемы с производительностью, после отключения обнаружения аномалий на основе традиционных, менее эффективных алгоритмов. Как показывает пример в этой статье, алгоритм глубокого обучения, усовершенствованный ProphetStor и реализованный в нашем решении для управления несколькими облаками под названием Federator.ai®, не только точно прогнозирует производительность, но и эффективно снижает количество ложных срабатываний для выявления аномалий производительности.
Чтобы узнать больше о решении для управления несколькими облаками ProphetStor, посетите нас здесь.