И нформационные технологии в управлении
УДК 004.75;004.056.3
ОПТИМИЗАЦИЯ РЕЗЕРВИРОВАНИЯ ИНФОРМАЦИИ О РАСПРЕДЕЛЕННЫХ СИСТЕМАХ ОБРАБОТКИ ДАННЫХ РЕАЛЬНОГО ВРЕМЕНИ
Е.А. Микрин, С.К. Сомов
Рассмотрены м етоды повышения надежности работы распределенных систем обработки данных, работающих в реальном масштабе времени. Перечислены особенности и характеристики таких систем по сравнению с системами обработки данных, работающими в обычном режиме. Получены аналитические выражения для расчета коэффициента готовности таких систем. Сформулированы задачи оптимизации резервирования данных в распределенных системах обработки данных реального времени.
Ключевые слова: распределенная система обработки данных, реальное время, оптимальное резервирование, коэффициент готовности.
ВВЕДЕНИЕ
Распределенные системы обработки данных различного назначения (корпоративные системы, системы специального назначения, сервисные системы общего доступа) — это сложные аппаратно-программные комплексы. Компоненты таких систем могут находиться на больших расстояниях друг от друга и объединяются в единую систему с помощью специального системного программного обеспечения и каналов связи. Распределенные системы обработки данных (РСОД) строятся, как правило, на основе глобальных, корпоративных или вычислительных сетей специального назначения.
В процессе работы таких систем возможны различные инциденты, которые могут привести к появлению ошибочных данных, к ошибочным результатам решения задач и обработки запросов системой, а в крайнем случае и к невозможности нормального функционирования РСОД, т. е. к потере системой работоспособности, ее отказу.
Для повышения безопасности работы систем обработки данных вводят различного рода избыточность [1, 2]. В частности, задача обеспечения сохранности используемых системой данных решается главным образом применением информационной избыточности (созданием и хранением резервных данных). Основным методом обеспече-
ния сохранности данных служит метод резервирования, который предполагает использование идентичной избыточности (создание и хранение копий данных) и/или неидентичной (создание и хранение предысторий данных).
Для РСОД, базирующихся на вычислительных сетях и работающих в жестких условиях реального масштаба времени, характерны некоторые особенности, основная из которых состоит в наличии существенных ограничений на время обработки запросов к данным системы и на время решения задач в системе. В результате причиной отказа системы может стать не только выход из строя ее аппаратных элементов, но и превышение временем решения задачи или обработки запроса некоторого установленного лимита.
Для повышения безопасности работы РСОД реального времени различных классов и назначения применяется метод резервирования используемых системой массивов данных.
1. ПОСТАНОВКА ЗАДАЧИ
К РСОД, работающих в режиме реального времени, предъявляются жесткие требования ко времени реакции системы (обработка запросов или решение задач в системе). Поэтому коэффициент готовности системы К служит основным показателем качества функционирования таких систем.
Согласно классическому определению [1, 3], коэффициент готовности системы — это вероятность того, что система окажется работоспособной в произвольный момент времени, кроме планируемых периодов, в течение которых работа системы по назначению не предусматривается.
Для достижения максимального значения коэффициента готовности системы обработки данных, работающей в реальном времени, необходимо обеспечить минимум времени нахождения ее в неработоспособном состоянии. Один из методов, позволяющий минимизировать время ее нахождения в неработоспособном состоянии, заключается в резервировании массивов данных, с которыми она работает.
Для повышения безопасности функционирования систем обработки данных (СОД) различных классов и назначения в настоящее время широко применяются три основные стратегии резервирования информации, которые учитывают особенности обновления и использования массивов д ан-ных [2, 4, 5].
Стратегия I заключается в использовании некоторого числа копий основного массива данных. В случае, если основной массив разрушен, то для продолжения решения задачи система переходит к использованию первой его копии, если же и она разрушена, то используется следующая копия и т. д.
Стратегия IIосновывается на учете особенностей обновления текущих массивов данных и заключается в том, что вместо копий текущего массива используются его предыстории (предыдущие версии массива и журналы их изменений). В случае разрушении текущего массива запускается специальная программа, которая восстанавливает разрушенный массив с использованием его предыдущей версии и записей из журнала изменений. Если восстановление закончилось неудачно, то текущий массив восстанавливается из следующей предыстории и т. д.
Стратегия III это смешанная стратегия, использующая возможности первых двух стратегий резервирования, т. е. она использует как копии, так и предыстории текущего массива данных. Сначала используются копии массива в соответствии со стратегией I, а затем, в случае неудачи восстановления из копий, используются предыстории массива в соответствии со стратегией II.
Под отказом РСОД реального времени, будем понимать превышение временем решения задачи (обработки запроса) системой некоторой заданной пороговой величины гп. Время, необходимое для восстановления разрушенного резерва м асси-ва данных, используемого в РСОД реального вре-
мени, обозначим как гв. В соответствии с приведенным определением коэффициент готовности
К = Е(г* )/х,
где х — среднее время решения задачи, т. е. время между моментом начала решения задачи и моментом времени, когда система готова приступить к решению следующей задачи; Е(г *) — среднее время работоспособного состояния системы, значение которого определяется далее (см. формулу (1)).
Время х определяется по формуле:
х = Е(ТУ) + (1 - рХ,
где (1 — ру) — вероятность того, что при решении задачи будут разрушены резервируемые массивы данных; Е( Ту) — среднее время решения задачи без учета затрат времени на восстановление разрушенных массивов данных.
Значение среднего времени Е( Ту) зависит от того, какая из трех V = I, II, III, стратегий резервирования массивов данных применяется в системе.
Время пребывания запроса в РСОД реального времени состоит из времени ю ожидания запроса в очереди на обработку и времени Т собственно обработки запроса в системе. Отказ системы при обработке запроса наступает, если Т + ю > гп. Известны работы, в которых определяются дисциплины диспетчеризации обработки запросов, обеспечивающие минимальное среднее время ожидания запроса в очереди. В данной работе основное внимание посвящено выбору оптимальных методов резервирования массивов данных, которые позволяют снизить вероятность отказа системы уже на этапе обработки запросов, тем самым сокращая время обработки запроса в системе.
Пусть имеется ситуация, когда 0 < ю < гп. Так как время ю ожидания запроса в очереди на обработку случайная величина, то время Т, в течение которого возможна обработка запроса без отказа системы, также случайная величина: Т = гп — ю.
Допустим, что для случайной величины Т задана функция распределения ЕТ(1) = Р{Т < г}. Тогда, в соответствии с приведенным выше определением отказа, время Г работоспособного состояния системы можно представить в виде зависимости от значения Т (рис. 1):
г * =
_ ) х при Т> х, Т при Т < х.
Рис. 1. Зависимость времени г' работоспособного состояния системы от времени Т, в течение которого возможна обработка запроса
Рис. 2. Зависимость времени Т от времени ю ожидания запроса в очереди на обработку
Среднее время E(t*) работоспособного состояния системы
E(t*) = xP{T > x} + J t/T(t)dt,
(1)
где Р{Т > х} = 1 - ^Т(х); /Т(0 = й¥т(1)/йг.
Предположим, что рассматриваемую нами систему РСОД реального времени можно отнести к классу систем массового обслуживания типа М/М/1. На вход системы поступает пуассоновс-кий поток запросов с интенсивностью X. Время обслуживания запросов распределено по показательному закону с параметром ц. В таких системах время ожидания в очереди на обслуживание описывается функцией распределения [6]
Щ7) = Р{ю < 1} = 1 - ре-ц(1 — р),
где р = Хх = Хц 1 — коэффициент использования системы.
Допустим, что нам задано значение tn. Тогда (рис. 2)
T =
tn - ю при ю < tn, 0 при ю > tn.
Так как при 0 < ю < t выполняется Т = t — ю,
^ п п '
то при 0 < t < tn событию ю < t соответствует неравенство Т > tn — t. В этом случае справедливо выражение:
Р{ю < ^ = Р{Т > tn — t} при 0 < t < п
Следовательно,
P{T> tn - t} =
0 при t < 0,
Р{ю < t} при 0 < t< tn,
1 при t > tn.
Так как P{T< tn - t} = 1 - P{T> tn - t}, то, заменив tn - t на т, получим:
P{T < т} =
1 при т > tn,
1 - Р{ю < tn - т} при 0 <т< tn, 0 при т < 0.
Перейдя от т к t, окончательно получим:
Fj(t) = P{T < t} =
1 при t > tn,
-ц(1 - P)( tn - t)
Pe.....n при 0 < t < tn,
10 при t < 0.
Отсюда для P{T > x} = 1 - P{T < x}:
P{T > x} =
0 при t > tn,
e -n(l - P)«n - x) n<
1 - pe при 0 < x < tn,
1 при x < 0.
В соответствии с формулой (1) и с учетом сделанных предположений получим, что среднее время Е(Г) работоспособного состояния РСОД реального времени определяется по формуле:
Е(Г) =
в -Ц( 1 - Р)«п -х)_ „■■ "ЦС1 - Р)Ъм п (1 - Р)-, х [ 1 -ре ] + Же [1 -ре ]
при 0 < х < tn,
0 при х > tn,
где Ж = рх/(1 — р) — среднее время ожидания запроса в очереди на обработку.
0
На основе приведенных результатов получим: К = Б(Х, х, /п) при 0 < х < /п,
где
B(X, x, tn) = 1 - р e + i—e e
- P) t„/x
х [1 - ре(1 - в)].
Анализ функции Б(Х, х, /п) показывает, что [5]:
— при р ^ 0 (х ^ 0 или X ^ 0)К ^ 1;
— Кг ^ 0 при р ^ 1;
— К ^ 1 при /п ^ да;
— при /в . Е(Ту) для стратегий резервирования I, II и III выполняется соотношение К > Кгш > КгП.
2. КОЭФФИЦИЕНТ ГОТОВНОСТИ РАСПРЕДЕЛЕННОЙ СИСТЕМЫ ОБРАБОТКИ ДАННЫХ РЕАЛЬНОГО ВРЕМЕНИ
Одна из особенностей работы РСОД реального времени состоит в том, что при децентрализованном хранении ресурсов системы для обработки запросов можно применять различные дисциплины обработки. Основные из них [4, 5]:
1) запрос для его обработки адресуется в ближайший (согласно некоторому критерию) узел с необходимыми ресурсами системы;
2) запрос адресуется для обработки одновременно в К узлов с ресурсами системы;
3) запрос, полученный в у-м узле, последовательно передается по содержащим ресурсы системы узлам пути длиной К, начинающегося ву-м узле, до тех пор, пока в некотором узле этого пути запрос не будет успешно обработан системой либо не будут пройдены все К узлов этого пути;
4) из у-го узла, в котором получен запрос, этот запрос поочередно направляется в К ближайших узлов с ресурсами системы до тех пор, пока либо в некотором узле он не будет успешно обработан, либо не будут опрошены все К узлов.
Для дисциплины 1 обработки запросов в РСОД реального времени определим значение коэффициента Кг готовности системы по отношению к обработке всех возникающих в сети запросов к РСОД и значение коэффициента готовности Кгу системы по отношению к обработке запросов, выданных в у'-м узле сети.
В соответствии с дисциплиной 1 информационный запрос для обработки адресуется в ближайший узел с ресурсами системы. В этом случае
Кгу = . I уЛ, -х, Огу = . I
I е /р г е /р
Здесь:
_ 11, если запрос из узла у адресуется в узел г; 0 в противном случае;
/р — множество индексов узлов сети с ресурсами
РСОД реального времени; - 2tз при г * у; Л при г = у; /з — среднее время задержки сообщений в сети;
t„,. =
N
X. = I (V. + иу, где V, — интенсивность запро-
г у у у
у = 1
сов на модификацию ресурсов системы, а и. — интенсивность информационных запросов к системе, возникающих в узле у.
Коэффициент готовности К, системы по отношению к обработке всех запросов, возникающих в сети, определяется по формуле:
К = I (V + фКу/1 (V + у (2)
у = 1 у = 1
Аналогичным образом получаются формулы, приведенные в табл. 1, для определения Кг при
Таблица 1
Формулы расчета характеристик системы
Дисциплина обработки запросов Характеристики Krj. и tni
1 Kj = E VjirjiBirij i e 1р jt„ - 2t3 при i * j, tni = j tn при i = j
2 Kj = 1 - П(1 - J) ie Nj jtn - 2t3 при i * j, tni = j tn при i = j
3 K m K = E ГИГ, Bi П( 1 - Pi )r>- i г/ Zj iJ1 'mJ'm il v la -1> ia - 1га m = 1 a = 2 m - 1 tni = t - (m + 1 - y)t - E ( W, + x, ) nlm n V j 3 ^ V la la' a = 1 i , i e N. m' œ J
4 K m -1 к = E r., r, Bi П ( 1 - r/i Pi r, J) г/ A Jim >mj im H V Jiœ la imJ' m = 1 a = 1 m-1 tni = tn - (m - y)2t3 - E ( W + x, ) m a = 1 i , i e n. m œ j
х
использовании дисциплин 2, 3 и 4 обработки запросов [3].
В формулах табл. 1 приняты обозначения:
N — множество индексов узлов сети, в которые можно адресовать для обработки информационные запросы, возникшие в узле у;
= Г1, если у е Щ;
] [ 0, если у г Щ;
= р/ах/а /(1 - р<в);
К = ОД.
3. АНАЛИЗ ЭФФЕКТИВНОСТИ ДИСЦИПЛИН ОБРАБОТКИ ЗАПРОСОВ
Проведем качественную оценку эффективности рассматриваемых дисциплин обработки запросов в РСОД реального времени в смысле величин Кту и Кг в случае, когда система построена на основе однородной полносвязной вычислительной сети, содержащей равномерно распределенный резерв массивов данных системы.
Учитывая полносвязность и однородность вычислительной сети и учитывая формулы (см. табл. 1), можно показать, что справедливы неравенства [4]:
Кг > ,
Кг > к3,
к2 > <,
К1] > Кг1/, 4 > 4
г]
где индексы 1, 2, 3 и 4 соответствуют д исциплинам 1, 2, 3 и 4 обработки запросов.
Справедливость неравенства Кг4у > Кг3у следует
из соотношения (1 — Р)г < г(1 — г)Р, которое выполняется, так как 0 < г < 1. В итоге справедливо соотношение
Кг2у > Кг4у > Кг3у > Кг1у ,
из которого также следует и справедливость неравенства:
Кг2 > Кг4 > Кг3 > Кг1 .
Сформулируем полученные результаты в виде утверждения.
Утверждение. Применение дисциплины 2 обработки запросов по сравнению с применением дисциплин 1, 3 и 4 обеспечивает наибольшее значение коэффициента готовности РСОД реального времени, построенной на базе однородной полносвязной вычислительной сети.
В вычислительных сетях возможны разнообразные варианты размещения резервов РСОД реального времени, обеспечивающие различные значения стоимости и надежности функционирования системы. В связи с этим возникает проблема поиска оптимального размещения резерва по узлам вычислительной сети.
4. ЗАДАЧА ОПТИМАЛЬНОГО РЕЗЕРВИРОВАНИЯ В РАСПРЕДЕЛЕННОЙ СИСТЕМЕ ОБРАБОТКИ ДАННЫХ РЕАЛЬНОГО ВРЕМЕНИ
Задача оптимального резервирования массивов данных, используемых в РСОД реального времени, согласно критерию максимума коэффициента готовности системы формулируется следующим образом: необходимо найти такое размещение X резерва по узлам вычислительной сети, чтобы затраты ресурсов системы на обработку поступающих запросов не превышали некоторого лимита при максимально возможном значении коэффициента Кг готовности системы, т. е.:
К ^ тах
при ТР^) < £,
хк < Хк,
к = 1, N,
где X = (хк); хк — объем резерва, размещенного в к-м узле сети.
Значение коэффициента Кг определяется по формуле (2), а затраты ZP(X) — по формулам, полученным в работе [4] и приведенным в табл. 2.
Таблица 2
Зависимость затрат ресурсов системы от дисциплины обработки запросов
Дисциплина Затраты ТР
1 ТР = Е Е (+ У]Ук) Тр]к(Хк) ] = 1 к = 1
2 ТР N N = ЕЕ (Ч] + ]к) тРук( Хк) ] = 1 к = 1
3 ТР = Е Е (Ч + ¥]Ук)Тр]к(Хк) ] = 1 к = 1
4 Т= NN Г п (у, к) - 1 ■] ее-] и П [1 - г„ух]) Г]]] + ]кк(х*) ]=1 к =1 ^ 1 = 1 ^
л е N 1 1 К
Возможна также постановка обратной задачи оптимального распределения резерва ресурсов РСОД реального времени по узлам сети, в которой в качестве критерия оптимизации принят минимум затрат ТР^), а на значение коэффициента готовности системы наложены ограничения, т. е.:
при
ZP(X) ^ min
* K, j е Ъ
xk < xk, k = 1, N.
Здесь J — множество индексов узлов сети, в которых возникают запросы к системе.
ЗАКЛЮЧЕНИЕ
Кратко рассмотрены м етоды повышения надежности функционирования распределенных систем обработки данных, работающих на базе вычислительных сетей в режиме реального времени, путем резервирования информационных и программных ресурсов системы. Рассмотрены особенности и характеристики таких систем по сравнению с системами обработки данных, работающими в обычном режиме.
Для систем, построенных на базе вычислительной сетей, получены аналитические выражения для определения основного показателя надежности их функционирования — коэффициента готовности — с учетом жестких ограничений на время получения ответа на запрос. При этом учитывается возможность применения различных дисциплин
обработки запросов к системе. Сформулированы задачи оптимизации резервирования массивов данных в системе по критерию максимума коэффициента ее готовности и минимума затрат на обработку запросов. Приведенные результаты могут быть полезны при проектировании распределенных систем обработки д анных, работающих в рамках глобальных, корпоративных или вычислительных сетей специального назначения.
ЛИТЕРАТУРА
1. Козлов Б.А., Ушаков И.А. Справочник по расчету надежности аппаратуры радиоэлектроники и автоматики. — М.: Советское радио, 1975. — 472 с.
2. Кульба В.В., Мамиконов А.Г., Шелков А.Б. Резервирование программных модулей и информационных массивов в АСУ // Автоматика и телемеханика. — 1980. — № 8. — С. 133—141.
3. Надежность в технике. Термины и определения. ГОСТ 13377—75. — М.: Изд-во стандартов, 1975. — 28 с.
4. Кульба В.В., Сомов С.К., Шелков А.Б. Резервирование данных в сетях ЭВМ. — Казань: Изд-во Казанского ун-та, 1987. — 175 с.
5. Сомов С.К. Резервирование программных модулей и информационных массивов в сетях ЭВМ: дисс. ... канд. техн. наук. — М.: ИПУ РАН, 1983. — 217 с.
6. Клейнрок Л. Вычислительные системы с очередями — М.: Мир, 1979. — 600 с.
Статья представлена к публикации членом редколлегии В.В. Кульбой.
Микрин Евгений Анатольевич — академик РАН, ген. конструктор, ПАО «Ракетно-космическая корпорация «Энергия» им. С.П. Королева», г. Королев, Н [email protected],
Сомов Сергей Константинович — канд. техн. наук, вед. инженер, Институт проблем управления им. В.А. Трапезникова РАН, г. Москва, Н [email protected].
ioßaa книга
Финягина В.И. Анатолий Григорьевич Бутковский: ученый и человек / Под ред. академика РАН С.Н. Васильева. — М.: ФИЗМАТЛИТ, 2016. — 216 с. + 34 с. цв. вклеек. — ISBN 978-5-9221-1677-0.
А.Г. Бутковский — выдающийся ученый в области теории и систем управления и в первую очередь в области оптимального управления системами с распределенными параметрами. Он был уникален по широте своих научных и общегуманитарных интересов — от математических проблем управления с приложениями в физике, металлургии, теплотехнике, химических технологиях, авиапромышленности и других областях науки и техники до методологических и философских проблем образования, науки и культуры.
Книга содержит обзор научных достижений А.Г. Бутковского, воспоминания родных, друзей и коллег, а также его неопубликованные рукописи, завещанные читателям к использованию в научной и научно-исторической работе.
Для широкого круга читателей, интересующихся историей развития науки.