Научная статья на тему 'Модели и алгоритмы оптимизации размещения данных в распределенной информационной системе'

Модели и алгоритмы оптимизации размещения данных в распределенной информационной системе Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
190
34
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
математическая модель / оптимизация размещения данных / генетический алгоритм / кластер информационной системы / облачные вычисления / mathematical model / data accommodation optimization / Genetic algorithm / information system cluster / cloud computing

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Янюшкин Вадим Вадимович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Янюшкин Вадим Вадимович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The article is devoted to construction mathematical model of data accommodation on the basis of standard scheme, portal architecture of information system and cloud computing and cluster representations of interrelations data and models in system. Algorithms of initial formation of matrixes accommodation, the concept of formation structures for genetic algorithm, criteria and methods of decision search are certain and described.

Текст научной работы на тему «Модели и алгоритмы оптимизации размещения данных в распределенной информационной системе»

УДК 004.72

МОДЕЛИ И АЛГОРИТМЫ ОПТИМИЗАЦИИ РАЗМЕЩЕНИЯ ДАННЫХ В РАСПРЕДЕЛЕННОЙ ИНФОРМАЦИОННОЙ СИСТЕМЕ

© 2010 г. В.В. Янюшкин

Южно-Российский государственный технический университет (Новочеркасский политехнический институт)

South-Russian State Technical University (Novocherkassk Polytechnic Institute)

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

Ключевые слова: математическая модель; оптимизация размещения данных; генетический алгоритм; кластер информационной системы; облачные вычисления.

The article is devoted to construction mathematical model of data accommodation on the basis of standard scheme, portal architecture of information system and cloud computing and cluster representations of interrelations data and models in system. Algorithms of initial formation of matrixes accommodation, the concept of formation structures for genetic algorithm, criteria and methods of decision search are certain and described.

Keywords: mathematical model; data accommodation optimization; genetic algorithm; information system cluster; cloud computing.

Задача оптимизации размещения данных в стандартной схеме информационной системы тренажерно-моделирующего комплекса. Задана структура тренажерно-моделирующего комплекса (ТМК) на основе стандартной архитектуры [1], где п -число элементов аппаратной конфигурации РСг,

г = 1, п с заданными допустимыми объемами свободной памяти ; р - число элементов функциональной конфигурации М/, / = 1, р ; т - число элементов

уровня информационного обеспечения Dk, к = 1, т ; детализованная характеристика каждого типа данных 1, к = 1, т , I = 1, Dк ; матрицы размещения моделей и потребностей данных МСг /, г = 1, п , / = 1, р , MDj к , / = 1, р , к = 1, т , при этом элементы матрицы MD принимают следующие значения:

1, режим чтения данных объекта;

2, признак динамического обновления данных моделью;

0, /-й модели не нужен к -й тип данных;

MD]k =

женных на узле г = 1, п ; D1 с D - множество типов данных, расположенных на узле г = 1, п ; VD/1 с VDj, / = 1, т , г = 1, п - множество объектов модельного мира типа /, расположенных на узле г; Т/,к, / = 1, р ,

к = 1, т - время функционирования модели / (получения всех необходимых входных параметров от объектов модельного мира по типам к = 1, т и их обработки).

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

F = min( Z ( Z Z VDkJ + Z ] + Z T] h ) + A)),

1=1 keD1 leVD'

jeM'

h=1

где A - дополнительные расходы на динамическое обновление данных,

m

A = Z Z MDI] ¿MD]; Z VDtg

матрица MDI / к, / = 1, р , к = 1, т ; временные ограничения моделей Т/крит, Т/мод, / = 1, р , стоимости

операций Г*, Ггт .

Для построения модели вводятся следующие обозначения: Мг с М - множество моделей, располо-

jeM t=1

при выполнении ограничений:

Z Z VDkii < V0l, с = |C',k|

keD1 leVDl

geVDt

i = 1, n , k = 1, m .

ZI Z] + T

j=A h=i

,< Г

]мод I — ]крит

VD1 u VD2 u ... u VD" = VD,, i = 1,,

Очевидным условием будет разбиение множества объектов типа данных по моделям, т.е. VDji с VDj ,

7 = 1, т , I = 1, р - множество объектов модельного мира типа 7, необходимых модели Ы1. Таким образом, вводится ограничение на уровне элементов данных определенного типа:

vdm u vdm

Матрица Т к, дующим образом:

2 и ... u VDMP = VDi, i = 1,m . j = 1, p , k = 1, m вычисляется сле-

Tj k =

.теш ф

M,

I

VDk j +1net*

leVD, j JeVDi ,MCi =1 k k' i,J

M,

I

leVD, j ,ltVDi MCi ■ =0 k k' i,J

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

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

VD

k i, MDjk = 1

0, MDjk = 0.

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

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

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

в одномерный массив данных

длины п*т.

Каждый вариант размещения элементов данных в алгоритме будет представлен битовой последовательностью, над которой будут проводиться генетические операции [2]. На рис. 1 изображена логическая структура хромосомы и деление отдельных участков на гены в соответствии с иерархическим представлением информационной системы. Раздельные участки представляют собой соответствие аппаратной конфигурации системы, отдельный ген хромосомы - факт расположения определенного типа данных.

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

Рис. 1. Пример кодирования хромосомы для позиций размещения

^ Начало ^^

Инициализация параметров модели п, m, р, MC.MD, МР1,Уц,УРм. s = О

ш-

Применение выбранной стратегии начального размещения данных

гШ-

Заполнение начальных матриц размещения С

ш-

Установка индекса текущего поколения s=s+l

Ш-

Конструирование популяции с помощью генератора хромосом - g.

qq

Устг

становка параметров запуска генетических операторов

СЕ>

Выбор родительской пары хромосом

Ш-

И-

&

гОБ-

г 8 —

Выполнение операции

Kros02( chsi5chsj)

Выполнение операции

A>osM2(chSi,chSj)

Выполнение операции MutAII( chsi) MutAll{ chsj)

Выполнение операции Mi//(chsi) M?//(chsj)

Выполнение операции Check( chSi) Check( chSj)

i-Ll4 -

i

Конструирование матриц размещения с помощью генератора

Вычисление глобального критерия эффективности F

Выполнение отбора матриц для формирования нового поколения

^ Конец ^^

I

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Остановка алгоритма и вывод лучшей стратегии размещения

Рис. 2. Алгоритм решения задачи в стандартной схеме

Задача оптимизации размещения данных в представлении облачных вычислений информационной системы ТМК. Задана структура ТМК на основе представления облака данных и множества клиентов [3], особенностью данной задачи является выделение в структуре облака данных архитектурной иерархии специализированных серверов с особыми характеристиками (рис. 3).

Введены обозначения: nsr - число ресурсных серверов облака данных SR = (SR1,..., SRnsr) c заданным объемами отведенной для хранения объектов модельного мира памяти VS = (VS1,...,VSnsr), nsp - число серверов приложений SP = (SP1,...,SPnsp) c заданным

объемами отведенной для хранения объектов модельного мира памяти VS = (VSnsr+1,..., VSnsr+nsp).

Таким образом, размещение модельного мира в облаке данных допускается на SR и SP серверах, а также на системе хранения данных облака (Data Storage), при этом функционирование большинства

моделей M,, j = 1, p предполагается на SP серверах,

поэтому фактическое нахождение объекта данных VDk l, k = 1, m , l = 1, Dk (m - число элементов уровня

информационного обеспечения Dk, k = 1, m) может описываться как интерпретация стандартной задачи распределения файлов по уровням памяти вычислительной системы, где при условии распределения объекта VDk l на нижний уровень в Data Storage облака время получения информации составит tDS, на средний уровень - SR сервер - время составит tR , на

p

верхний уровень - SP сервер - время составит t . Тогда на уровне архитектуры облака данных максимальное время получения данных модели составит: max(tDS, tP, tR); nsi - число серверов предоставления информации облака данных SI = (SI1,...,SImi) c заданным объемами отведенной для хранения объектов модельного мира памяти VSI = (VSI1,...,VSInsi), npc -число элементов корпоративных и удаленных клиентов облака данных PC = (PQ,...,PCnpc) c объемами

памяти VPC = (VPCj,..., VPC ).

SRbSR2,... ,SRn

Ресурсные серверы

VS!,VS2,..., ^^^L^Max^D/) *

" -VDk,i\ 4 '

¡tDS

PC1PC2,.PC,

T

/крит > ./мод '

■ =

tP * I I VDkii + tR * I I VDkii +

k= leVDp i k= IgVdR

+1DS * I I VDkj, MD/,k = 1, 0, MD jk = 0.

k= l^VDp MVDR

-*npc

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

Для функций предоставления информации размещение объектов модельного мира допускается на SI серверах и удаленных клиентах (реплицированные объекты данных), время получения информации с SI сервера составит ^ , время получения данных клиентом, с использованием сетевой инфраструктуры, составляет ^ее. Тогда на уровне облака данных и клиентов максимальное время получения данных составит тах(^, ^, ^, ^) + при заданном допустимом

ограничении . Задается матрица размещения моделей по серверам приложений М!5 = |\tnSj 711,1 = 1, тр, 7 = 1, р , матрица MD = ||mdj к 11, 7 = 1, р, к = 1, т , MDI7 к, 7 = 1, р , к = 1, т ; временные ограничения моделей Т/,

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

расположенных на клиентах. Т7- к, 7 = 1, р , к = 1, т -

время функционирования модели 7 (получения всех необходимых входных параметров от объектов модельного мира)

Смысл вычисляемого значения Т7 к по отношению к модели 7 состоит в суммировании объемов элементов модельного мира типа к, расположенных в зависимости от принятой стратегии размещения, тогда в зависимости от размещения на SP, £^-сервере или Data Storage учитывается своя стоимость операции.

Целевая функция состоит из двух частей: затраты

77 S

на поддержку серверного комплекса г и удаленных

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

т т

Г = тт( £ £ + £ £ +

к=11еУОР' к=1 ¡сГ/Ок'

leVD,

+ £ (Тмод + £ 7 ) + А),

7=1 к=1

где А - дополнительные расходы на динамическое обновление данных

р т Dt

А = ££ MDIj , * MDj д * £ .

7=11=1 g=1

Минимум целевой функций находится при выполнении следующих ограничений:

- выполнение условия соблюдения отведенного максимального объема для хранения данных на серверах облака данных

I I VDkl < VS,, i = 1, nsr,

k= i--vdD[

£ £ VDк 1 < VSi, I = 1 + nsr, тг + тр,

к=

- предельное время выполнения временных операций на каждом сервере приложений комплекса при заданном ограничении

рт

£ (£ т + Т ) < Т

Аа 7,к 7мод / _ 7крит •

7=1 к=1

Для удаленных клиентов необходимо обеспечить

минимизацию функции

«рс т т

Гс = min( £ (£ £ КОк,г + £ £ КО^ + Ас)),

г=1 к=1 к=1 ¡сг/орс1

leVD',

где Аа - накладные расходы на получение данных модельного мира из облака данных

ACl = t1

+ tDS * I I

k =1 lel/DpCi

VDk, +

VDkj.

Минимум целевой функций находится при выполнении следующих ограничений:

- выполнение условия соблюдения отведенного максимального объема для хранения временных данных на серверах предоставления информации и удаленных клиентах

I I VDk, < VSIi,i = 1,nsi,

k=1

leVD

Dk

I I VDkj < VPC, i = 1, npc;

k=1

leVD

Dk

- контроль предельного времени получения данных модельного мира удаленными клиентами комплекса ^ : ^ + Ас < ^ .

Стратегии начального размещения данных. К алгоритмам начального размещения данных в ТМК на основе облачных вычислений можно отнести метод 100 %-го использования Data Storage, в котором все объекты модельного мира помещены в систему хранения облака данных и времена доступа

^ = ^ = ^ = ^ , данная стратегия обусловит минимально возможные затраты объемом, но максимальное время получения данных из самого медленного ресурса облака.

Алгоритм распределения данных между SR и SP серверами. В основе данного подхода лежит стратегия распределения объектов данных с высокой степенью интенсивности на SP серверах, а с низкой на SR.

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

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

Задача оптимизации размещения данных в условиях формирования кластеров информационной системы тренажерно-моделирующего комплекса. Задана структура взаимосвязи моделей и данных ТМК на основе информационных кластеров [4], математическая постановка задачи размещения данных соответствует постановке в стандартной схеме информационной системы ТМК. Особенностью данной задачи является способ представления данных и формирования набора хромосом как вариантов размещения объектов модельного мира в рамках отдельных кластеров.

Рис. 4. Логика образования хромосомы в задаче

*

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

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

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

уровне сводящихся к элементам оптимизационной задачи на основе агрегации: кроссинговер кластеров модельного мира, случайная мутация кластера.

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

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

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

/ Распределенный / объект данных 2

А/л

^Распределенный >

/ }'

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

РР! у^. £Ь/

/Распределенная Л/г\ к • модель 2 V 2/

Область моделей информационной системы

Y

М, м2 ... м, ... Мр

ъ факта расположения"......

vd1£

Щг

Рис. 5. Логика образования хромосомы в задаче

С

Начало

Инициализация параметров модели размещения данных

Применение стратегии начального размещения данных в кластерах

щ-

Установка индекса текущего поколения s=s+l

Ш-

Конструирование популяции с помощью генератора хромосом — g.

г 6 -

Установка параметров запуска генетических операторов

Выбор родительской пары хромосом

ш—

Выполнение операции KrosChist02{cYí\,cYí¡)

ш—

Иыполнение операции MutCl( chs¡) MutCl( ch5¡)

, 10 .

Выполнение операции CheckCl( chs¡) CheckCl{ chsj)

Конструирование матриц размещения с помощью генератора

■ ИЬ

Формирование матрицы Т

' 14 -

Проверка ограничений задачи размещения

Нет 15 I Ограничения выполнены?

Тьшолнсние отбора матриц для формирования нового поколения

[20 -

Ос тановка алгоритма и вывод лучшей стратегии размещения

Конец

Рис. 6. Алгоритм решения задачи размещения на основе кластеров

Литература

1. Янюшкин В.В. Оптимизация размещения данных модельного мира в распределенной информационной системе тренажерно-моделирующего комплекса // Изв. вузов. Сев.-Кавк. регион. Техн. науки. 2008. № 4. С. 25-28.

2. Янюшкин В.В. Подход к применению генетических алгоритмов и конструированию структур данных в задаче оптимизации размещения данных // Теория, методы проектирования, программно-техническая платформа корпоративных информационных систем: материалы VI науч.-

практ. конф., г. Новочеркасск, 26 мая 2008 г./ ЮРГТУ(НПИ). 2008. С. 81-85.

3. Янюшкин В.В. Распределенное информационное пространство и портал современного тренажера // Программные продукты и системы. 2009. № 3. С. 67-71.

4. Янюшкин В.В. Методы фрактальных кластеров в задаче моделирования информационных систем // Теория, методы проектирования, программно-техническая платформа корпоративных информационных систем: материалы VII науч.-практ. конф., г. Новочеркасск, 25 мая 2009 г./ ЮРГТУ(НПИ). 2009. С. 173-181.

Поступила в редакцию 22 декабря 2009 г.

Янюшкин Вадим Вадимович - аспирант, кафедра АСУ, Южно-Российский государственный технический университет (Новочеркасский политехнический институт), инженер-программист, Донской филиал Центра тренажеростроения. Тел. 8-906-423-80-66. E-mail: [email protected]

Yanushkin Vadim Vadimovich - post-graduate student, department «Automated Management Systems», South-Russia State Technical University (Novocherkassk Polytechnic Institute), engineer of «Donskoy centre simulator building» Ph. 8-906-423-80-66. E-mail: [email protected]._

i Надоели баннеры? Вы всегда можете отключить рекламу.