Математика / 2.Перспективы
информационных систем
К.п.н. Иванова И.В., Абылхасенова Д.К.
Костанайский государственный университет
им.А.Байтурсынова, Казахстан
Адаптация
технологии параллельных вычислений к задачам корпоративных информационных
систем.
Сложности практического применения
В
современном мире любая крупная организация имеет в своем распоряжении
корпоративные информационные системы (далее – КИС), охватывающие все аспекты ее
хозяйственной деятельности. Наиболее известные КИС на российском рынке – SAP, Microsoft Dynamics, 1C и другие. Для
упрощения излагаемого материала, в статье мы будем рассматривать КИС на базе
наиболее распространенной платформы 1С:Предприятие, подразумевая под ней все
возможные КИС, так как подходы к применению параллельных вычислений при решении
задач в различных системах на самом деле схожи.
Итак,
наиболее популярная архитектура информационной системы имеет 3 уровня:
- сервер баз данных;
- сервер приложения;

- клиентские приложения.
Рис.
1. Типовая архитектура современных КИС
В
крупных КИС количество клиентских подключений может быть от 300 до нескольких тысяч, как в штатном
режиме, так и в пиковые моменты работы. Нагрузка на оборудование в пиковые
моменты увеличивается в несколько раз, в сравнении со штатным режимом. При этом,
увеличиваются длительности основных типовых операций, выполняемых в системе. В
определенный момент КИС может быть полностью не работоспособна.
Для обработки большого потока информации компании приобретают дополнительные
аппаратные ресурсы, сотни организаций разрабатывают решения для ускорения того
или иного отдельного компонента системы
(к примеру, oracle real application cluster). Но, есть ли уверенность, что закупка новых
аппаратных или программных ресурсов даст требуемый результат? Для ответа на этот
вопрос разберем несколько подходов, отраженных на следующем рисунке (см. на Рис.2):

Рис. 2.Типовой подход к
решению проблем производительности
При
вариантах «загрузить до определенных пределов» и «рассматривается покупка/добавление
новых аппаратных ресурсов» рассматривается возможность параллелизма. Но на
практике, в большинство проблем КИС, описанных в варианте «загрузить до
определенных пределов», решается подходом «рассматривается покупка/добавление
новых аппаратных ресурсов». При
этом, ни в том, ни в другом случае не используются параллельные вычисления.
Далее,
речь пойдет о нескольких популярных подходах к реализации и применению
параллельных вычислений. Предлагаются два подхода к реализации параллельных
вычислений в существующих КИС:
1.
Реализация
механизма параллельных вычислений средствами бизнес – логики
Преимущества:
·
Уменьшение длительности выполнения операций системы;
·
Предсказуемый уровень потребления ресурсов и
масштабирования системы, в случае отсутствия конкуренции за общие ресурсы.
Сложности:
·
Не все операции КИС поддаются распараллеливанию. Исходя
из этого, большое время тратиться на анализ логики работы;
·
Трудоемкость практической реализации. Так как основные
прикладные языки программирования не приспособлены для параллельного
программирования, то возникают сложности в практической реализации;
·

Потребуются
работы по адаптации механизма распараллеливания к привычным интерфейсным формам
пользователей.
Архитектура
решения: (см. Рис.3)
Рис. 3.Архитектура
решения для реализации механизма параллельных вычислений средствами бизнес -
логики
Примечание
к архитектуре решения:
·
Клиентское приложение – интерфейсное приложение, через
которое пользователь взаимодействует с КИС;
·
Координатор – модуль, осуществляющий анализ входных
данных клиентского приложения и распределение задач между параллельными
сессиями;
·
Сессии – экземпляры клиентских приложений для
параллельного выполнения;
·
Сервер приложения, сервер СУБД – основные звенья КИС.
Где
применимо:
·
Параллельный расчет заработной платы для сотрудников.
·
Распараллеливание регламентных процедур по закрытию
различных вида учетов (бухгалтерского, налогового).
2.Реализация механизма
параллельных вычислений системными средствами
Преимущества:
·
Независимость от определенной КИС. Позволяет использовать
технологию распараллеливания для других КИС.
·
Сравнительно простой процесс внедрения. Не обязательно
разбираться в логике работы КИС.
Сложности:
·
Техническая реализация в используемых КИС;
·
Балансировка нагрузки;
·

Требуемый
уровень отказоустойчивости.
Рис. 5.Архитектура
решения для реализации механизма параллельных вычислений системными средствами
Примечание
к архитектуре решения:
Координатор
– механизм интеллектуального распределения запросов между серверами СУБД.
Где
применимо:
·
В любых КИС, где процентное соотношение операций на
запись значительно меньше, чем операций на чтение.
Итак,
на основании вышесказанного заключаем, что существует множество подходов к
распараллеливанию операций в современных КИС, реализуемых различными
механизмами. Но, на практике их
использование ограничено. Обычно это обусловлено:
·
недостаточной осведомленностью о современных подходах к
распараллеливанию;
·
невозможностью либо значительной сложностью интеграции с
текущей аппаратной и программной инфраструктурой КИС;
·
необходимостью простого обслуживания;
·
большой стоимостью внедрения.
Основной
вывод заключается в том, что универсального механизма распараллеливания задач
для КИС, ни на аппаратном, ни на программном уровне, на данный момент нет. Но в
тоже время можно предложить универсальный подход (правило) на аудит любых задач
в КИС в плане реализации механизма распараллеливания.
Литература
1.
Воеводин В.В., Вл.В.Воеводин. Параллельные
вычисления.,2004 (ISBN 5-94157-160-7).
2.
Селище Н., Администрирование системы 1C:Предприятие
8.2,2012 (978-5-459-00657-5)