Содержание к диссертации
Введение
1 Модели вычислительных процессов в системах сбора данных 9
1.1 Краткое описание автоматизированных диспетчерских систем 9
1.2 Современное состояние и проблемы организации вычислительных процессов в scada-системах 14
1.3 Цели улучшения работы в адаптивных системах сбора дані іьіх 18
1.4 Повышение эффективности вычислительных процессов 22
1.5 Основные выводы по главе 25
2 Исследование процессов обработки в системе сбора данных 27
2.1 Анализ особенностей обработки событий 27
2.2 Порядок обработки информации в системе сбора данных 30
2.3 Алгоритм обработки информации в системе сбора данных 31
2.4 Оценка частоты входных событий в системах обработки данных 35
2.5 Описание параллельной обработки информации в системе сбора данных 37
2.6 Определение скорости обработки событий с использованием бесконечнозначной логики 46
2.7 Учет особенностей псевдопараллельной обработки 51
2.8 Анализ временных зависимостей при обработке событий 52
2.8 основные выводы по главе 56
3 Методы кэширования информации о событиях 58
3.1 Цель и задачи кэширования информации о событиях 58
3.2 Особенности организации кэширования данных о событиях 60
3.3 Методика оценки систем сбора данных 62
3.4 Стратегии работы кэш-памяти 66
3.5 Вероятностная модель процессов обращения к кэш-памяти 68
3.6 Вероятностная модель процессов заполнения кэш-памяти 72
3.7 Организация работы кэш-памяти даііньіх для событий 75
3.8 Стратегия заполнения заблаговременно загружаемого буфера 81
3.9 Анализ функционирования системы сбора данных с кэш-буфером 91
3.10 Основные выводы по главе 94
4 Методы адаптации системы сбора данных к входным перегрузкам 96
4.1 Особенности обработки перегрузок в системах сбора данных 96
4.2 Модель обработки данных при перегрузках 97
4.3 Структура процесса обработки событий при перегрузке 100
4.4 Основные характеристики процесса обработки событий 102
4.5 Определение размера демпфирующего буфера 108
4.6 Алгоритм адаптивного регулирования размера буфера 110
5 Практическая реализация автоматизированной диспетчерской системы 119
5.1 Состав и характеристики программного обеспечения для автоматизированной диспетчерской системы 119
5.2 Алгоритмы и характеристики процесса обработки информации 125
5.3 Основные выводы по главе 131
Заключение 132
Обозначения и сокращения 136
Список использованных источников
- Современное состояние и проблемы организации вычислительных процессов в scada-системах
- Алгоритм обработки информации в системе сбора данных
- Особенности организации кэширования данных о событиях
- Структура процесса обработки событий при перегрузке
Введение к работе
Актуальность проблемы. Для построения современных автоматизированных диспетчерских систем (SCADA) чаще всего используются унифицированные программные средства. Их параметры настраиваются на характеристики контролируемых систем при подготовке к эксплуатации. Программное ядро SCADA-системы должно обеспечить высокую скорость и надежность обработки данных с минимальным использованием ресурсов компьютера при различных характеристиках контролируемых систем. Наиболее важна эффективность реализации процессов реального масштаба времени: сбора и первичной обработки данных из контролируемой системы.
Одна из основных причин недостаточной эффективности систем сбора данных заключается в следующем. При проектировании и фактическом создании их программного обеспечения параметры для процессов обработки определяются на основе теории массового обслуживания или иных абстрактных методов. Этим достигаются удовлетворительные характеристики в заданном спектре приложений. Однако в каждом отдельном случае характеристики можно улучшить посредством учета специфических особенностей контролируемой системы. Для этого необходимо измерить реальные характеристики обработки данных, а затем подстроить параметры под конкретную систему. Из-за изменчивости характеристик систем во времени подстройка требуется регулярно или непрерывно. Неточная настройка приводит к существенному снижению эффективности работы из-за завышения требований к компьютеру и неполному использованию его лимитируемых ресурсов (оперативной памяти, процессорного времени и др.).
Автоматическая (автоматизированной) адаптация параметров ядра SCADA-системы позволяет кардинально повысить эффективность его работы. Ядро при этом становится своеобразным инструментом исследования; измерение характеристик обработки, выполняемое на компьютере, используемом ядром, позволяет комплексно учесть все фактически влияющие на обработку факторы.
Таким образом, для создания высокоэффективных SCADA-систем является актуальной разработка адаптивных систем сбора данных, работающих в реальном масштабе времени, с автоматической или существенно автоматизированной адаптацией параметров к условиям работы.
Цель работы - повышение эффективности вычислительных процессов при обработке событий из контролируемой системы посредством автоматической адаптации параметров обработки к характеристикам потоков событий.
Согласно поставленной цели в работе решаются следующие задачи:
Анализ алгоритма, выявление особенностей и создание модели для процесса обработки информации в системе сбора данных. Оценка влияния длительности отдельных стадий алгоритма на общую производительность.
Разработка методики для оценки целесообразности средств дополнительного кэширования в системах сбора данных. Классификация систем с использованием этой методики.
Выбор структуры специализированного кэш-буфера событий и разработка алгоритмов для его обслуживания. Оценка эффективности предложенных средств кэширования.
Выбор структуры обработки для эффективного демпфирования перегрузочных потоков. Анализ факторов, влияющих на размер демпфирующего буфера; разработка алгоритма адаптивного регулирования его размера. Оценка эффективности предложенных мер по обработке перегрузок.
Предметом исследования являются особенности организации вычислительных процессов в системах сбора данных, работающих в режиме реального времени, при автоматической настройке (адаптации) их параметров.
Методы исследования включают общую теорию систем, теорию вычислительных систем, теорию массового обслуживания, теорию расписаний и теорию дискретных автоматов.
Научная новизна результатов работы заключается в следующем:
1. Проведен анализ и создана модель параллельной обработки информации в системе сбора данных, отличающаяся от известных использованием бесконечно-
значнош логики № логических определителей, что позволило* провести качественный, т количественный* анализ; влияниям отдельных стадий алгоритма' на общие, характеристики- обработки событий. Впервые предложен критерий для» оценки-применимости описанной методики анализа при псевдопараллельном' режиме . работы, системьксбора данных.-
Впервые, разработан ш применен: на? практике: формальный < критерий. для: оценки целесообразности дополнительного кэширования, что; позволило- обосновать необходимость дополнительного кэшированиям в наиболее распространенных. классах контролируемых, система
Впервые: предложена, модифицированная-: структура обработки данных,, использующая трехэлементный, буфер-для;кэширования информации; о событиях,, с уникальными:стратегиями заполнения и регулирования^ размера дляг каждой-изї частей буфера; Это;..как показали аналитические исследования;, позволило -повысить вероятность .удачного обращения к. буферу.
Предложена: структурам процесса обработки; событий; отличающаяся ют известных ТЄМ, ЧТОПереГруЗОЧНЫе ПОТОКИ-ДЄМПфируЮТСЯ:В:прОМЄЖуТОЧНОМ.ібуферЄ:;
первичных: событий; размер- которого- регулируется посредством; адаптивного-алгоритма;учитывающего'достигнутые.характеристики процессаобработки; Это позволило обеспечить высокую> эффективность., обработки:; событий при минимальном использовании ресурсовкомпьютера;
Практическая, значимость, работы заключается; в том; что ее результаты^ использованы-в ;ряде программных систем промышленного применения:
порядок и структурасобработка данных, соответствующие рассмотренным в данной работе;
алгоритм адаптивного- регулирования? размера демпфирующего буфера* по измеренным характеристикам обработки и-свойствам потоков;
алгоритм кэширования; базирующийся? на измерении характеристик* потоков событий из контролируемой системы..
Реализациями внедрение результатов работы; Результаты, работы использованы; при создании: ряда программных комплексов^ промышленного примене-
ния: «Графика-АДС» для программного обеспечения комплекса технических средств (КТС) «Энергия» версии 5, базового программного обеспечения версии 6 для КТС «Энергия+» и других. Указанные комплексы более 10 лет эксплуатируются на нескольких сотнях крупных промышленных предприятий России и ближнего зарубежья.
На защиту выносятся следующие положения:
Обобщенный алгоритм и модель обработки данных в диспетчерской системе (SCADA).
Методика анализа процессов при обработке событий и критерий ее применимости при псевдопараллельном режиме работы системы.
Критерий для оценки целесообразности дополнительных средств кэширования данных о событиях и методика его практического применения.
Модифицированная структура обработки событий в системах сбора данных, использующая трехэлементный кэш-буфер с особыми стратегиями заполнения и адаптивным алгоритмом регулирования размера буфера.
Модифицированная структура обработки событий, использующая для демпфирования перегрузочных потоков промежуточный буфер первичных событий и алгоритм адаптивного регулирования его размера.
Апробация работы. Основные результаты диссертационной работы докла
дывались на I и II международных научно-технических конференциях «Новые
информационные технологии и системы» (г. Пенза, 1994 и 1996). Базовое про
граммное обеспечение (БПО) версии 6 для КТС «Энергия+», в котором использо
ваны результаты работы, в 2006 и 2008 гг. успешно сертифицировано независи
мой экспертной организацией «VeriTest» (), подразделением
корпорации «LioNBRIDGE» (США). Проверка требований «Microsoft Platform
Test for ISV Solutions» проводилась в разделе «Windows Server 2003 and Windows
Client». Указанное программное обеспечение занесено в список продуктов, со
вместимых с Microsoft Windows Server 2003
().
Публикации. По материалам работы опубликовано 13 печатных работ, в том числе 5 статей, 5 тезисов докладов и 3 свидетельства регистрации программного обеспечения и баз данных. Из них в изданиях, рекомендованных ВАК, опубликованы 2 статьи.
Объем и структура работы. Работа состоит из введения, пяти глав, заключения, списка литературы из 126 наименований. Работа содержит 147 страниц машинописного текста, 34 рисунка и 18 таблиц.
Современное состояние и проблемы организации вычислительных процессов в scada-системах
Для преодоления как описанных выше, так и ряда других сложностей, в настоящее время для построения SCADA-систем преимущественно используется [21], [22], [23], [24] специальное программное обеспечение. Оно содержит - в том или ином виде - унифицированное программное ядро, реализующее основные алгоритмы приема и обработки данных. Параметры настройки ядра на конкретную контролируемую систему задает конечный пользователь. Преимущества такого подхода очевидны [25]: низкая стоимость из-за большого тиража, обеспечение масштабного тестирования, централизованного сопровождения и модификации программного обеспечения. Средства создания SCADA-систем - одна из важных и быстро развивающихся [26], [27], [28], [29] частей рынка современного программного обеспечения. Среди лидеров этой отрасли можно упомянуть ряд продуктов и фирм-разработчиков, приведенных в таблице 1.1.
Перечисленные системы используют разнотипные компьютеры и системное программное обеспечение. Например, SCADA-система "Factory Link" (фирмы "United States Data Co") может эксплуатироваться в нескольких операционных системах, приведенных в таблице 1.2. Таблица 1.2 - Некоторые характеристики SCADA-системы "Factory Link"
К сожалению, подробное описание процессов обработки информации в ядрах промышленных SCADA-системах зачастую недоступно, т.к. является предметом "know-how" фирм-разработчиков. Даже в т.н. "открытых системах" открытость, фактически, означает доступность спецификаций системных (в смысле SCADA-системы) вызовов, реализующих тот или иной сервис обработки данных.
Операционная система Компьютерная платформа DOS/MS Windows IBM PC OS/2 IBM PC SCO UNIX, Linux IBM PC VMS VAX AIX RS6000 HP-UX HP 9000 MS Windows NT /2000/ XP В основном - на IBM PC-платформе. Автор провел анализ доступной информации по структуре обработки информации в описанных системах [30]; [31], [32], [33], [34], [35] и других. При этом были выявлены следующие основные особенности организации вычислительных процессов в унифицированных ядрах SGADA-систем:
- отсутствуют данных о (конкретной) контролируемой системе при создании программного обеспечения ядра. Не известны число и состав событий, интенсивность и характер входных потоков объем описательных данных и прочие характеристики. Как правило известны диапазоны значений этих параметров для предполагаемых контролируемых систем; .
- достаточно широк спектр характеристик компьютеров, используемый для работы программного обеспечения SGADA-систем. В?первую очередь это обусловлено быстрым развитием компьютерной техники при большом сроке "жизни" промышленного программного обеспечения - не менее 10-hl5 лет. За такой истекший период, например, для компьютеров типа IBM-PC: типичный объем ОЗУ увеличился от 1Мбайт до 1Гбайт, т.е: прирост - в 1000 раз: Тактовая частота процессоров фирмы Intel за этот же период возросла от Ї386 (16 МГц) до Pentium (3 ГГц и более) - примерно в 200 раз. Получили широкое распространение многопроцессорные (многоядерные) компьютеры. Поэтому вычислительные процессы ядра должны быть организованы таким образом, чтобы использовать возможности экстенсивного развития: при совершенствовании компьютеров нужно обеспечить пропорциональное улучшение характеристик применения.
В процессе анализа также были выявлен; ряд основных проблем (перечисленных ниже) при обработке данных в унифицированных ядрах SGADA-систем:
-быстродействие при обработке существенно зависит, от времени доступа к данным, хранимым на НЖМД или на ином энергонезависимом носителе. На практике это становится основным лимитирующим фактором производительности, с учетом высокого быстродействия современных процессоров и относительно небольшого количества, вычислительных операций в процессах обработки событий. Хранению всех данных в ОЗУ препятствует его меньшая-емкость и высокая стоимость. Кроме того, так или иначе, записи о входных сигналах должны попадать в энергонезависимую память, для сохранности их при отключении питания компьютера;
- штатные (из состава операционной системы, компьютера) средства кэширования чтения информации с НЖМД не позволяют исключить задержку начала обработки событий, поступающих в случайном порядке. Они также не используют информацию о функциональной важности событий, что затрудняет ускорение отработки событий согласно их приоритету;
- использование в системе сбора данных буфера (буферов) необработанных событий постоянного размера снижает эффективность работы. Для менее производительных компьютеров и НЖМД в момент перегрузки по входу возможна потеря событий вследствие переполнения указанного буфера. И наоборот, буфер такого же размера на более производительном компьютере никогда не будет использован полностью.
В исследованных программных пакетах специальные меры для устранения описанных выше проблем применяются весьма редко. Отсутствие средств самонастройки подтверждается, в первую очередь, отсутствием сведений об улучшении параметров обработки данных по мере наработки систем. Помимо стандартных средств кэширования, имеющихся в компьютере и операционной системе, изредка используются особые компоненты в общем программном обеспечении. Например, в сервере распределенной базы данных реального времени "Opus" (основной компонент SCADA-продуктов "Phocus" и "Sitex") используются адаптивные средства работы с ретроспективой событий и сигналов. Работа с ретроспективой в упомянутой базе данных реализована в двух задачах, "HistWriter" и "HistReader". Первая из них - "HistWriter" - через специальный механизм очереди информируется центральной задачей "Opus" о записях, которые должны сохраняться на НЖМД. "HistWriter" получает эти данные в блоках, сортирует их и записывает в отдельные ежедневные файлы, снабженные меткой даты. "HistWriter" использует адаптивную настройку предварительного размещения блоков записи в зависимости от того, как часто они записываются, что значительно повышает эффективность чтения
Алгоритм обработки информации в системе сбора данных
Информация от контролируемой системы поступает в дискретные моменты времени. Функция T(i) задает связь между порядковым номером события (і) и временем его свершения. Состояние контролируемой системы в момент времени t(i) описывается матрицей K(i)=\\ku, .., ку, .. кіС\\, элемент которой ку- состояниеj-го входного канала в t(i) момент времени (fe{J,CJ, С - число источников информации). Выделим следующие этапы в автоматической обработке событий, безотносительно к эффективности их реализации.
1 этап. Обнаружение изменений входных сигналов происходит при сравнении пар элементов из матрицы состояний входных сигналов в последовательные моменты времени K(i) и K(i-l)- текущий и предшествующий ему, соответственно. Результатом является матрица D размерностью 2х-С, содержащая либо оба изменившихся значения, либо "nil" - условное значение для неизменного сигнала: этап. Формирование первичных событий выполняется при последующем сканировании матрицы D, полученной-по формуле (2.1). Для каждой строки матрицы (т.е. для- каждого источника входного сигнала) вызывается обработчик, в общем случае - уникальный. Ему передаются величины dIn, d2n, пє{1,С}. В зависимости от априорной информации о входном канале формирователь первичных событий исключает неинформативные изменения сигналов. На выходе формиро-вателясоздается множество из {0..С} элементов - перечень "активных" изменений входных сигналов, т.е. собственно "первичных событий". Каждое событие имеет вид [dilt, d2lb п, t(i), s, р] - это запись с указанием-на изменение сигнала в источнике информации с определенным номером (п) в какой-либо момент времени (t(i)), статус этого изменения (s) и приоритет (р). Статус определяется способом генерации конкретного первичного события. Например, события могут создаваться-как по изменению сигнала, так и при отсутствии такового в интервале времени ожидания (события типа "потеря- связи" или "подтверждение текущего состояния"). Для каждого входного канала в один момент времени- создается не более одного первичного события.
3 этап. Сортировка первичных событий в соответствии с их априорными приоритетами р(п), пе{1,С}. Эта операция.может не выполняться, в явном виде при фиксированных приоритетахp(n)=const. Например, если при-последовательной обработке источников их номера заранее определены согласно приоритету.
4 этап. Обработка первичных событий - автоматический анализ полученной информации. Интерпретация производится с использованием априорных данных об источниках сигналов, текущего состояния модели контролируемой системы» и параметров первичного события. Априорные данные вводятся при настройке системы. В них определяется взаимосвязь между информацией и состояниями реальных объектов, например, в виде таблично заданной функции. По результатам обработки по каждому первичному событию генерируется {0..т} "вторичных" событий, адресованных соответствующим объектам информационной модели контролируемой системы. Для "холостых" первичных событий не генерируется ни одного вторичного. Вторичные события могут быть представлены в виде записи [obj(] ), parm(k), stat, t(i), s , p J,je{l,N}, кє{1,М@)}, где N - общее количество объектов в контролируемой системе, Мф - количество параметров у у -го объекта. Во вторичном событии указывается измененное значение (stat) параметра рагт(к) объекта obj(j) информационной модели. Кроме того, фиксируется время обнаружения t(i), статус (s) и приоритет (р). Последние две величины могут отличаться от аналогичных характеристик первичного события. В статусе вторичного события указываются дополнительные данные для последующей обработки: уникальный индекс, условия протоколирования и другие.
5 этап. Сортировка вторичных событий с одинаковой величиной "время обнаружения t(i)" в выходном списке формирователя согласно приоритетам (р) отдельных событий.
6 этап. Обработка вторичных событий - фиксация полученных данных в информационной модели контролируемой системы, посредством изменения значений параметров в соответствующих моделях объектов и записи в оперативную базу данных.
Согласно описанному порядку обработки информации в системе сбора данных, предлагается выделить следующие функциональные компоненты: - формирователь первичных событий, выделяющий подлежащую учету информацию; - обработчик первичных событий, обеспечивающий автоматический анализ, интерпретацию и формирование вторичных событий из полученной информации; - обработчик вторичных событий, отображающий полученную и декодированную информацию в базу оперативных данных.
Помимо поступающей извне информации в SCADA-системе могут иметься и внутренние источники событий. К таковым относятся: специальные события, отображающие факты сбоев в обработке данных; введенные "вручную" параметры; события из списка грядущих событий и другие. (Список грядущих событий позволяет, например, отследить не только свершение какого-либо события, но и факт отсутствия такового в интервале времени ожидания.)
Особенности организации кэширования данных о событиях
Известно [83], что характеристики вычислительного процесса с буферизацией данных разделяются на две группы: внешние и внутренние. Эффективное быстродействие и стоимость буфера представляют собой внутренние характеристики. К числу внешних характеристик относятся следующие: вероятность удачного обращения; емкость буфера; размер хранимого элемента данных; алгоритмы управления; эффективная задержка (время ожидания) получения данных и другие. При проектировании кэш-памяти вычислительных систем общего назначения практически все эти характеристики устанавливаются опытным путем и задаются в качестве исходных данных. Анализ способов проектирования и порядка эксплуатации средств кэширования для систем сбора данных, проведенный автором, позволил выявить следующие особенности [84]:
- вероятность удачного обращения, задающую эффективность обращений к кэш-памяти, нельзя точно определить на стадии проектирования программного обеспечения для систем сбора данных. Поскольку этот параметр существенно зависит от состава и свойств событий, то он может быть определен только для конкретной контролируемой системы. Проектные решения приходится принимать исходя из гипотетической характеристики - прогноза распределения плотности для вероятности удачного обращения к данным. При этом должно обеспечиваться ускорение обработки, если поведение реальных систем более или менее соответствует прогнозам и отсутствие ухудшения при всех прочих вариантах. Исходным (наихудшим) случаем считается длительность процесса обслуживания, когда для каждого события требуется выполнение в полном объеме операций чтения с НЖМД при максимальных задержках;
- требуемый размер буфера для хранения кэшируемой информации зависит от состава, количества и характеристик (например, частот свершения) обрабатываемых событий. Эти характеристики не известны на этапе проектирования программного обеспечения. Поэтому размер буфера целесообразно корректировать на этапе эксплуатации SCADA-системы. Он зависит не только от упомянутых особенностей контролируемой системы, он и от характеристик компьютера (объ ем памяти, быстродействие и другие). Для автоматической адаптации размера необходимо задать способ оценки эффективности используемого буфера;
- штатные системы кэширования компьютеров используют предположение [85] о преимущественно последовательной выборке из памяти команд (данных) при работе программ. Это, в общем случае, верно и для систем сбора данных, если рассматривать процессы выборки данных" на уровне операций чтения-записи. Более того, для улучшения работы кэш-систем такого рода, необходимо применять соответствующие виды запросов и структуры данных - потоковые файлы и т.п. Однако, по отношению к порядку возникновения»событий указанное предположение, в общем случае, неверно. Согласно теореме Григелиониса [86], входной поток SCADA-системы близок по характеру к пуассоновскому потоку. (Эта теорема утверждает, что суперпозиция большого числа взаимно независимых потоков малой интенсивности при некоторых регулярных условиях приближается к пуассоновскому потоку.) В таком потоке события приходят в случайном порядке, что затрудняет уменьшение задержки начала их обработки;
- частоты f(i) свершения отдельных событий Ev(i) в контролируемой системе, как правило, невелики (см. выше, таблицы 2.1 и 2.2). Интервалы между одинаковыми событиями T(i) определяются свойствами контролируемых объектов (процессов) и могут быть от долей секунд до нескольких месяцев. Несмотря на это, результирующий поток всех входных событий [87] в системе сбора данных достаточно велик. При этом известно [88], что для многозадачных операционных систем в типичном случае менее 20% слов, связанных с предыдущим заданием, остаются в универсальном кэш-буфере при переключении на выполнение нового задания, причем слова эти, скорее всего, относятся к самой системе. Поэтому, при малой абсолютной частоте появления запросов данных для отдельных событий, вероятность удержания их описаний в штатных кэш-буферах компьютера весьма невелика, особенно при параллельной работе других приложений;
- в системе сбора имеется важная информация, которую штатные средства кэширования использовать не могут. Например: распределение фактических частот свершения отдельных событий за предшествующий период эксплуатации; функциональный приоритет событий; перечень грядущих (достоверно ожидаемых) событий; перечень прогнозируемых событий (вероятно ожидаемых в текущем состоянии контролируемой системы) и другие.
Как следует из сказанного выше, введение дополнительных средств кэширования в SCADA-системах может способствовать повышению их производительности. Оценим, в каких случаях, для каких классов систем сбора данных реализация таких средств целесообразна.
Первый вопрос при проектировании дополнительных средств кэширования -нужны ли они вообще. Если все рабочие данные системы сбора помещаются в ОЗУ компьютера (небольшая контролируемая система и мощный компьютер) и, следственно, обращений к НЖМД нет, то не нужно и кэширование данных. Более того, в таком случае возможно даже замедление работы из-за накладных расходов при работе системы кэширования. Фактически, с учетом затрат на создание и отладку ненужного программного кода, дополнительное кэширование может оказаться вредным.
Для решения вопроса о целесообразности кэширования автором предложена методика, учитывающая соотношение объема обрабатываемой информации и характеристики компьютера. Достоверность методики соответствует точности данных о параметрах компьютера и контролируемой системы. На ранних этапах проектирования средств автоматизации, как следствие, она не высока, но вполне достаточна для предварительной оценки.
Рассмотрим предлагаемую методику подробнее. Компьютер, на котором функционирует система сбора данных, представляется как идеализированная вычислительная машина, имеющая быструю (ОЗУ) и медленную память, например - на НЖМД. Скорость выполнения вычислительных операций процессором полагаем бесконечно большой. Компьютер может обладать несколькими штатными механизмами кэширования разного уровня (см. выше, рисунок 3.1).
Структура процесса обработки событий при перегрузке
Как уже упоминалось ранее (см. рисунок 3.5), в предложенной автором структуре обработки событий демпфирующий буфер, накапливающий перегрузочные потоки, размещен на выходе формирователя первичных событий. В модели СМО этому буферу соответствует элемент "очередь первичных событий". Выбор данного этапа обработки для накопления поступающих "перегрузочных" событий был проведен после анализа.всех возможных мест положения буфера: и обусловлен следующими факторами: - стратегией;работьГсистемы пришерегрузке подходу; -размеромг и количеством; элементов обрабатываемой-информации на раз-личныхэтапах;: - скоростью заполнения различныхбуферовщри,перегрузке.
Рассмотрим подробнее влияние этих факторов: на; структуру процесса обрат.. ботки и характеристики буфера:.
Єтратегияї обработки перегрузки определяет поведение системы сбора дант ных прш ее возникновении. Особенностью- БЄАВА-систем является то; что задержка обработки: полученною информации менее критична; нежели1 потеря: данг ных. Поэтому прием: входных сигналов, безусловно; важнее генерациши обработки вторичных событий. Это правило4 и определяет основную стратегию? работы, системы;сбора.данных: генерация .и обработка вторичных: событий выполняется5 по остаточному принципу после обработки сигналов:; ш первичных событий; В? этой связи; наиболее важны размеры буферов-для-входных сигналовш/илш для»: первичных;.событий;, поскольку при? перегрузках, будет изменяться- содержимое только этих буферов;
Количество;обрабатываемых злементовіинформации зависит от:.стадии процесса. Дляткаждоговходногосигнала формирователь; первичныхсобытийсоздает не более одного первичного: события? (см; выше, раздел 2, описание процесса обработки). Вследствие этого; заодинциклопроса сигналов1 в очередь первичных событий может поступить n(t)= 0-г Ninp событий- где.Д ;/, - число каналов информации; Вобщем случае «( Ninp, за-счет следующих факторов:: - исключения-каналов; сигналы в;которых не изменились (n(t)= n(t-l))\ -отсеивания холостых изменений входных, сигналов
Из-за. наличия; этой существенной разницы,, прямое накопление входных сигналов менее:эффективно чем» накопление первичных, событий. Количество вторичных событий:рассчитать сложнее;.По; каждому первичному событию создается п2 = 0-нп вторичных событий. Причем количество их специфично;для каж дого из объектов конкретной контролируемой системы и фактически определяется уже на этапе эксплуатации. Чаще всего п2=1; с учетом других источников вторичных событий (служебных, грядущих и других) п2 1) т.е. вторичные события имеют тенденцию к "размножению". Поэтому наименьшее количество элементов информации - на уровне первичных событий.
Размер описания вторичного события, как правило, существенно больше описания первичного события (см. выше, пример из раздела 3.3).
Скорость заполнение очереди первичных событий заметно больше скорости заполнения очереди вторичных событий. Это обусловлено как меньшим размером сохраняемых данных, так и тем, что в большинстве систем формирование первичных событий ведется только с использованием ОЗУ (см. выше, таблица 3.1). Для заполнения очереди вторичных событий могут потребоваться данные, хранимые на НЖМД, что заметно снижает скорость обработки на этом этапе.
Совокупность всех перечисленных факторов позволила автору сделать вывод о том, что в структуре обработки для демпфирования перегрузочных потоков оптимально использовать промежуточный буфер хранения первичных событий. Рассмотрим теперь численные характеристики системы при обслуживании перегрузочных потоков и влияние их на размер демпфирующего буфера.
Как указывалось ранее (см. раздел 3), в общем случае входной поток системы сбора данных формируется наложением потоков событий слабой интенсивности от множества независимых объектов контролируемой системы. В первом приближении поток можно считать пуассоновским - прямое следствие упомянутой выше теоремы Григелиониса. Предположение о пуассоновском характере входного потока весьма важно, поскольку позволяет напрямую использовать известные [114] аналитические результаты для моделей систем массового обслуживания, приведенные ниже. Основными характеристиками процесса обслуживания событий в системе сбора данных являются норма и интенсивность обслуживания. 102 Норма обслуживания // есть число событий (заявок), обработанных в единицу времени: ju = 1/E(tb) , где E(tb) - величина математического ожидания времени обработки. Интенсивность обслуживания р есть мера загрузки системы при обслуживании потока заявок: р = Я/ і , где Л - интенсивность потока, математическое ожидание числа заявок, поступающих в единицу времени.
В соответствии с классической теоремой [115] о максимальном потоке и минимальном разрезе сети, результирующая производительность системы сбора данных - по представленной модели СМО - определяется блоком с наименьшей производительностью. Как правило, норма обслуживания (///) формирователя первичных событий превосходит нормы обслуживания формирователя (/ ) и обработчика вторичных событий (//Д Это, в частности, обусловлено более сложным характером обработки на последующих этапах, а также тем, что на них может потребоваться обращение к НЖМД, Соответственно снижаются приведенные к первичным событиям нормы обслуживания.