При моделировании задач, где присутствует несколько абсолютно разнородных параметров, наиболее логичным представляется использование многокритериального анализа[1]. Сложность задачи заключается именно в том, что на масштабируемость системы оказывает влияние целый ряд факторов, описанных в предыдущих главах, причем с абсолютно разной шкалой измерения, что предполагает ввод новой системы измерения. В качестве примера можно привести влияние числа процессоров на производительность системы и ограничение, вызванное лицензированием программного обеспечения в зависимости от поколения процессоров.
Наиболее простым решением является ввод весовых коэффициентов, которые помогут оценить степень важности каждого фактора и, например, выделить самые важные критерии.Формально многокритериальная задача сводится к однокритериальной, что означает введение суперкритерия – скалярной функции векторного аргумента
F(v) = G(f 1(v), f 2(v),..., f p(v))
Суперкритерий позволяет упорядочить альтернативы по величине F(v), выделив, тем самым, наилучшую альтернативу для этого критерия. Основной проблемой при данном подходе является определение именно значений вклада критериев и обоснование того, почему один из них больше другого. В таких случаях чаще всего обращаются к статистическим выкладкам, но для данной проблемы такое решение невозможно, так как в принципе не может быть сравнения производительности системы и типа лицензирования – это два несвязанных понятия, но, в то же время, они оба влияют на масштабирование системы. Выходом из данной ситуации является обсуждение значения факторов, влияющих на масштабирование системы, непосредственно с заказчиком. В этом случае проводится анализ потребностей заказчика, и выявляются наиболее значимые показатели. Для определения общей модели такой подход невозможен, но с течением времени можно собрать статистику и уже на ее основе выставлять значения каждого критерия.
Для решения задач многокритериальной оптимизации также используется метод нахождения множества Парето, суть которого заключается в отказе от выделения наилучшей альтернативы. Основным принципом является предпочтение одной альтернативы перед другой только в том случае, если первая по всем критериям лучше второй, а если же предпочтение хотя бы по одному критерию расходится с предпочтением по другому, то такие альтернативы признаются несравнимыми. Очевидным недостатком для данного случая является невозможность выделения альтернативы, которая явно лучше других, что в итоге приводит к множеству решений, которое опять же не отражает результат, поэтому придется вводить какие-либо ограничения либо новые критерии.
Наиболее подходящим методом является поиск альтернативы с заданными свойствами, который основывается на предварительном указании значений частных критериев или их границ. Задача состоит в том, чтобы найти альтернативу, удовлетворяющую этим требованиям, либо, установив, что такая альтернатива во множестве отсутствует, найти в альтернативу, которая подходит к поставленным целям ближе всего. В данном случае удобно задавать желаемые значения критериев в виде верхних и нижних границ. Рассматривая вопрос производительности, главное - оценить нижнюю границу, при которой система будет удовлетворять требуемым уровням предоставления сервиса.При анализе влияния смены поколений вычислительных ресурсов, а также вопросов, связанных с поддержкой аппаратной части программной, можно задавать временные границы целесообразности перехода на новое поколение.
Для формального описания системы обозначим через Х все множество альтернативных решений, qj – значения критериев (уровни притязаний), а точку их пересечения в р-мерном пространстве критериев х* - целью или опорной точкой. Важно отметить, что целевая точка может оказаться как внутри, так и во вне Х, т.к. уровни притязаний задаются без точного знания структуры множества Х в пространстве частных критериев. Идея оптимизации состоит в том, чтобы начав с любой альтернативы, приближаться к х* по некоторой траектории в пространстве.
С учетом того факта, что одним из ключевых показателей любой системы является ее производительность, а уже затем идут такие характеристики, как доступность, надежность, безопасность и т.п., поэтому на одной из осей необходимо отразить производительность системы. Единицы измерения производительности зависят от рабочей нагрузки, под которой понимаются не только не приложения, но и операционная система и промежуточное программное обеспечение. Например, для SAP единицей измерения производительности будет SAPS. В случае вертикального масштабирования по другой оси должно откладываться количество ресурсов в системе (количество процессоров, планок памяти), для горизонтального – количество узлов (серверов или систем хранения данных). На данном этапе получается лишь зависимость производительности системы от числа ее компонент, поэтому возникает вопрос о влиянии смены поколений ресурсов, периоде поддержки аппаратной части программной. Для этого необходимо ввести третью ось, где будет отсчитываться время. Именно по данной оси будут ограничиваться области, связанные, например, со временем лицензирования программного обеспечения на определенном типе процессоров. Предполагается, что подавляющее большинство факторов, влияющих на масштабируемость, можно выразить через соотношения, основанные на трех позициях – производительности, количества элементов в системе и времени.Итого при решении следующих задач можно ограничить область, где будет находиться решение, проведя следующие действия:
- Выразить формулой зависимость производительности системы от числа элементов
- Оценить периодичность выпуска и нового поколения ресурсов и временные рамки целесообразности перехода.
- Оценить периодичность выпуска новых версий программного обеспечения и очертить рамки поддержки им аппаратного обеспечения.
Выводы
В рамках данной статьи было дано определение основных терминов и понятий, связанных с масштабируемостью системы в целом, проведено описание и анализ основных проблем, возникающих при масштабировании динамической инфраструктуры, предложено математическое описание проблем и предложена методика формального представления факторов, влияющих на масштабируемость. Предполагается, что представленный подход поможет заказчикам осуществлять более правильный выбор инфраструктуры для удовлетворения потребностей бизнеса и сокращения затрат при росте инфраструктуры.
Список литературы
1. Дубов Ю.А., Травкин С.И., Якимец В.Н. Многокритериальные модели формирования и выбора вариантов систем. – М.: Наука, 1986 – 296 с.
2. Спиряев О. Вертикальное и горизонтальное масштабирование систем // BYTE. 2004. №3 (67).
Комментариев нет:
Отправить комментарий