Распределенные информационные системы и сети. Афанасьев Олег Александрович



Структура курса. Лекции Распределенные системы: задачи, терминология принципы функционирования. Архитектура клиент-сервер. Типовые задачи. Области применения. Пример информационной системы (типичное приложение в архитектуре клиент- сервер). Многозвенная архитектура. Области применения. Краткий обзор современных технологий. XML, CGI/JSP, Servlets, DCOM, CORBA, RMI (.NET). Выделение слоев в многозвенной архитектуре (типичная архитектура). «Тонкие» и «Толстые» клиенты. Сервер приложения (Application server). Сервер базы данных (Database Server). Миграция объектов (вопросы распределения вычислительной нагрузки). Развертывание системы. Основы CORBA. CORBA и ООП. Язык определения интерфейсов IDL. Отображение IDL на C++. Отображение IDL на Java. ОRB. Динамическое взаимодействие клиентов и серверов. Сервисы именования CORBA. Пример информационной системы, выполненной в многозвенной архитектуре.


Структура курса. Практика Лабораторная работа 1 Система обслуживания дисконтных карт Необходимый инструментарий: сервер - Oracle (MSSQL Server 2000 sp3), клиент – Java (jdk, VisualCafe, MS J++,...) Лабораторная работа 2 WMS (Warehouse Management System) Тонкий клиент (Web, HandHeld, сотовый телефон, …). Сервер приложения. Взаимодействие клиент – сервер приложений. Сервер бизнес- логики. Вопросы распределения вычислительной нагрузки. Обеспечение отказоустойчивости. Необходимый инструментарий: сервер - Oracle (MSSQL Server 2000 sp3), Приложение/бизнес-логика – Java (jdk, VisualCafe, MS J++,...)










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


Последствия... Нет глобального времени –Асинхронная передача сообщений - –Ограниченная точность синхронизации часов Нет состояния системы –Нет ни одного процесса в распределенной системе, который бы знал текущее глобальное состояние системы Следствие параллелизма и механизма передачи данных


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


Принципы разделения Функциональное разделение: узлы выполняют различные задачи –Клиент / сервер –Хост / Терминал –Сборка данных/ обработка данных Решение - создание разделяемых сервисов Естественное разделение (определяемое задачей) –Система обслуживания сети супермаркетов –Сеть для поддержки коллективной работы


Принципы разделения Распределение нагрузки/балансировка: назначение задачи на процессора так, чтобы оптимизировать общую загрузку системы. Усиление мощности: различные узлы работают над одной задачей –Распределенные системы содержащие набор микропроцессоров, по мощности могут приближаться к суперкомпьютеру –10000 CPU, каждый 50 MIPS, вместе MIPS - > команда выполняется за nsec -> свет проходит 0.6 mm -> любой существующий чип - больше! команда выполняется за 0.002 nsec -> свет проходит 0.6 mm -> любой существующий чип - больше!">


Принципы разделения Физическое разделение: система строится в предположении, что узлы физически разделены (требования к надежности, устойчивости к сбоям). Экономические: набор дешевых чипов может обеспечить лучшие показатели отношения цена/производительность, чем мэйнфрэйм –Мэйнфрэйм: 10 раз быстрее, 1000 раз дороже














Разделение ресурсов Разделение ресурсов часто является одной из причин разработки распределенной системы –Уменьшается стоимость, (file и print сервера) –Разделение данных между пользователями (совместная работа над проектом) Сервисы –Управляют набором ресурсов –Представляют услуги пользователям


Разделение ресурсов Сервер используется для предоставления сервисов –Принимает запросы на обслуживание от клиентов вызов операции –Прием сообщения/ответ на сообщение полная реализация - удаленный вызов –Роли клиента и сервера меняются от вызова к вызову один и тот же процесс может быть как клиентом, так и сервером –Терминология Клиент/Сервер применяется к процессам, а не к узлам!!!




Распространение приложения Фрагментация –разделение приложения на модули для распространения Конфигурация –Связь модулей друг с другом (зависимости) Размещение –выгрузка модулей на целевую систему –Распределение вычислительных модулей между узлами (статическое или динамическое)






Гетерогенность Middleware: промежуточный программный слой –позволяет гетерогенным узлам взаимодействовать –Определяет однородную вычислительную модель –Поддерживает один или несколько языков программирования –Обеспечивает поддержку распределенных приложений Вызов удаленных объектов Удаленный вызов SQL Распределенная обработка транзакций Примеры: CORBA, Java RMI, Microsoft DCOM


Гетерогенность Мобильный код: код разработан для миграции между узлами –Необходимо преодолевать аппаратные различия (разные наборы инструкций) Виртуальные машины –Компилятор «изготавливает» байт-код для VM –VM реализована для всех аппаратных платформ (Java) Методы грубой силы –Портируем код под каждую платформу...






Безопасность Сценарий 1: Доступ к результатам тестирования по NFS –Откуда мы знаем, что пользователь - преподаватель, имеющий доступ к данным? –Авторизация Сценарий 2: Посылка номера кредитной карты в интернет-магазин –Никто кроме получателя не должен прочитать данные –Криптография






Масштабируемость Стоимость физических ресурсов –Растет,при увеличении числа пользователей –Не должна расти быстрее, чем O (n), где n = количеству пользователей Потери производительности –Увеличиваются с ростом размера данных (и количества пользователей) –Время поиска не должно расти быстрее, чем O (log n), где n = размер данных










Параллелизм Контроль параллелизма –Обращение нескольких потоков к ресурсу Правильное планирование доступа в параллельных потоках (устранение взаимоисключений, транзакции) –Синхронизация (семафоры) Безопасно, но уменьшают производительность –Разделяемые объекты(ресурсы) должны работать корректно в многопоточной среде




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






Итоги Распределенная система: –Автономные (но соединенные средой передачи данных) узлы –Взаимодействие посредством передачи сообщений Много примеров того, что распределенные системы нужны и их нужно уметь строить Распределенные системы существуют и их нужно уметь развивать и поддерживать













Архитектура распределенных информационных систем и Web-приложений

Распределенная система - это набор независимых вычислительных машин, представляющийся их пользователям единой объединенной системой. Не смотря на то, что все компьютеры автономны, для пользователей они представляются единой системой.

К основным характеристикам распределенных систем:

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

2. Пользователи и приложения единообразно работают в распределенных системах, независимо от того, где и когда происходит их взаимодействие.

Распределенные системы должны также относительно легко поддаваться расширению, или масштабированию. Эта характеристика является прямым следствием наличия независимых компьютеров, но в то же время не указывает, каким образом эти компьютеры на самом деле объединяются в единую систему.

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

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

К особенностям функционирования распределенных систем относятся:

· наличие большого количества объектов;

· задержки выполнения запросов (так если локальные вызовы требуют порядка пары сотен наносекунд, то запросы к объекту в распределенных системах требует от 0.1 до 10 мс);

· некоторые объекты могут не использоваться на протяжении длительного времени;

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

· запросы в распределенных системах имеют большую вероятность отказов;

· повышенные требования к безопасности.

В связи наличием повышенных задержек интерфейсы в распределенной системе должны быть спроектированы так, чтобы снизить время выполнения запросов. Это можно достичь путем снижения частоты обращения, а также укрупнением выполняемых функций.

Для борьбы с отказами клиенты обязаны проверять факт выполнения запросов сервером. Безопасность в распределенных приложениях может быть повышена путем контроля сеансов связи (аутентификация, авторизация, шифрование данных).

Архитектура Web-приложений (Web -сервиса) широко применяется в настоящее время. Web-сервис – приложение, доступное через Интернет. Оно предоставляет услуги, форма которых не зависит от поставщика услуг, так как используется универсальная платформа функционирования и универсальный формат данных (XML). В основе Web –сервисов лежат стандарты, определяющие форматы и язык запросов, а также протоколы поиска этих сервисов в Интернете. Схема доступа к базе данных через Интернет показана на рис.1.12.


Рисунок 1.12 – Схема доступа к серверу СУБД через Интернет

В настоящее время существуют три различных технологии, поддерживающие концепцию распределенных объектных систем: EJB, DCOM CORBA.

Основная идея, лежащая в разработке технологии EJB (Enterprise Java Beans ) – создать такую инфраструктуру для компонентов, чтобы они могли бы легко вставляться и удаляться из серверов, тем самым повышая или снижая функциональность сервера. EJB-компоненты являются Java-классами и могут работать на любом EJB-совместимом сервере даже без перекомпиляции. Основными целями EJB-технологии является:

1. Облегчить разработчикам создание приложений, избавив их от необходимости реализовать с нуля такие сервисы, как транзакции, нити, загрузки и др. Разработчики могут сконцентрировать свое внимание на описании логики своих приложений, перекладывая задачи по хранению, передаче и безопасности данных на EJB-систему.

2. Описать основные структуры EJB-системы и интерфейсы взаимодействия между ее компонентами.

3. Освободить разработчика от реализации EJB-объектов за счет наличия специального кодогенератора.

Благодаря используемойJava-модели, EJB является относительно простым и быстрым способом создания распределенных систем.

Технология DCOM (Distributed Component Object Model ) - программная архитектура, разработанная компанией Microcoft для распределения приложений между несколькими компьютерами в сети. Программный компонент на одном из компьютеров может использовать DCOM для передачи сообщений к компоненту на другом компьютере. DCOM автоматически устанавливает соединение, передает сообщение и возвращает ответ удаленного компонента. Способность DCOM связывать компоненты позволила Microcoft наделить Windows рядом дополнительных возможностей, в частности, реализовать сервер Microsoft Transaction Server, отвечающий за выполнение транзакций баз данных через Интернет.

Источник: Журнал «Перспективы науки и образования» Выпуск №6(12)/2014 http://cyberleninka.ru/article/n/problemy-raspredelennyh-sistem

Аннотация

Статья описывает особенности распределенных систем. Раскрывается понятие распределенной системы и распределенной информационной системы.

Дается классификация распределенных систем. В частности, по типу предоставляемых ресурсов: распределенные вычислительные системы, распределенные информационные системы, семантический Трид. По количеству элементов в системе: кластер, распределенная система корпоративного уровня, глобальная система.

Описаны требования, предъявляемые к распределенным системам: прозрачность распределенной системы, прозрачность местоположения, прозрачность доступа, прозрачность параллелизма доступа, прозрачность масштабируемости распределенной системы, прозрачность репликации, открытость системы, безопасность, надежность РС.

Статья описывает проблемы при создании и эксплуатации распределенных систем, такие как: проблемы администрирования системы, проблемы балансирования нагрузки, проблемы восстановления данных в случае возникновения ошибок, проблемы ограниченности масштабируемости (проблема увеличения количество узлов системы, проблема ограниченности возможностей сервера, проблема ограниченности сетей передачи данных, проблема ограниченности алгоритмов обработки данных), проблема переносимости ПО.

Ключевые слова: вычисления,распределенные системы,распределенные вычислительные системы,распределенные информационные системы

Введение

В современном обществе существует необходимость в повышении качества и скорости обработки в первую очередь «больших данных» и во вторую очередь данных в распределенных системах . В связи с этим возрастает значение распределенных систем хранения и обработки данных , как средства решения этой проблемы. Одной из основных задач любой распределенной системы является анализ свойств полученных данных, которые, в силу ряда причин, не могут быть оценены на одном узле. Для достижения поставленной цели и ускорения времени обработки необходимо на первом этапе разослать данные на распределенные узлы системы, а на втором собрать данные из распределенных узлов и агрегировать эти данные в общее глобальное представление. Это является сложной задачей из-за часто встречающего в таких типах задач динамики, что накладывает очень частые изменения в локальные значения, которые влияют на общие глобальные свойства всей задачи. Создание эффективных и адаптивных распределенных систем позволяет значительно ускорить скорость обработки данных. С целью рассмотрения данного вопроса проведем анализ проблем возникающих в ходе проектирования и эксплуатации распределенных систем.

Понятие распределенной системы

На сегодняшний момент в литературе существует большое количество определений понятия «распределенная система». Наиболее полное определение предложил AS Tanenbaum : «Распределенная система (РС) – это набор независимых компьютеров, который воспринимается его пользователям как единственная последовательная система.» Другое определение предложено в работе : Распределенными системами называются программно-аппаратные системы, в которых исполнение операций (действий, вычислений), необходимых для обеспечения целевой функциональности системы, распределено(физически или логически) между разными исполнителями. В вычислительной сфере под РС в нашем исследовании будем понимать программно–аппаратную систему, созданную для конкретного практического применения, функционал которой распределен на различных узлах.

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

  • распределенные вычислительные системы (Computational Grid)
  • распределенные информационные системы (Data Grid)
  • семантический Грид (Semantic Grid)

Основная характеристика вычислительных систем (Computational Grid) заключается в том, что в качестве основного ресурса предоставляется вычислительная мощность всей системы. Основное направление развития систем подобного типа заключается в наращивании вычислительных мощностей системы, посредством увеличения числа вычислительных узлов. Примером распределенных вычислительных систем являются кластеры.

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

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

Основные требования, предъявляемые к распределенным системам

Основными требованиями, предъявляемыми к распределенным системам, являются: прозрачность, открытость системы, безопасность, масштабируемость РС, надежность. Рассмотрим каждую характеристику подробнее.

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

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

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

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

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

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

  • РС должны соответствовать четко определенными интерфейсами
  • Системы, входящие в состав РС должны легко взаимодействовать между собой
  • Системы должны обеспечивать переносимость приложений.

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

Безопасность. Особое место в современных распределенных системах занимает их безопасность. Безопасность РС является, в общем случае, совокупностью 3 факторов :

  • Обеспечение конфиденциальности данных и ресурсов;
  • Обеспечение конфиденциальности доступа к ресурсам для множества пользователей;
  • Обеспечение целостности ресурсов и данных.

Необходимость создания распределенных систем, которые обеспечивают необходимую безопасность данных и всей структуры РС, возникает повсеместно. Многие вопросы безопасности могут быть решены на уровне отдельных узлов РС, например, путем установки фаерволов и антивирусного ПО на отдельные узлы системы, введением политики аутентификации пользователей и другими методами. Но в силу особенности архитектуры большинства РС, данный подход не всегда является эффективным. Программное обеспечение не всегда может обеспечить необходимую конфиденциальность данных в распределенной системе. Например, программное обеспечение не всегда может полноценную защиту от MIMT и DDOS атак на распределенную сеть. Зачастую методы защиты от подобных атак не всегда являются приемлемыми для узлов вычислительной сети. Важным показателем, при организации защиты РС, является уровень доступности системы. Уровень доступности распределенной системы определяется не только доступностью ресурса в момент времени t, но и принципами организации защиты РС, так как большинство программных средств, обеспечивающие защиту от атак, направлены на отказ в обслуживании. Большое внимание данному вопросу уделяется многими производителями антивирусного ПО.

Надежность РС. В связи с появлением новых методов и алгоритмов, требовательных к вычислительным ресурсам и, самое главное, к ресурсам времени, необходимость в доступности распределенных систем в момент времени t становится крайне актуальным. Основным показателем, определяющим надежность всей РС, является отказоустойчивость. Отказоустойчивость это важнейшее свойство вычислительной системы, которое заключается в возможности продолжения действий, заданных программой, после возникновения неисправностей.

Проблемы эксплуатации распределенных систем

Несмотря на все достоинства распределенных систем по сравнению с традиционными централизованными системами (РС обеспечивают значительно меньшую стоимость развертывания и простоту реализации), РС имеют и ряд существенных недостатков. Основными проблемами распределенных систем по сравнению с традиционными системами являются:

  • проблемы администрирования системы;
  • проблемы ограниченности масштабируемости РС;
  • проблемы переносимости программного обеспечения.

Проблемы администрирования системы включают проблемы: проблемы балансирования нагрузки на узлы системы; проблемы восстановления данных в случае возникновения ошибок. Фрагментация ресурсов в распределенных системах предписывает необходимость создания гибких настраиваемых средств администрирования. Так как в глобально распределенных системах администрирование должно происходить в автоматическом режиме, то в связи с этим возникают следующие основные проблемы администрирования распределенных систем:

  • балансировка нагрузки на узлы системы;
  • восстановление данных в случае возникновения ошибки;
  • сбор статистики с узлов системы;
  • обновление программного обеспечения на узлах системы в автоматическом режиме.

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

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

В общем случае можно выделить обобщенную классификацию методов балансировки загрузки вычислительных узлов. По характеру распределения нагрузки на вычислительные узлы различают: динамическую балансировку (перераспределение); статическую балансировку.

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

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

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

Проблемы ограниченности масштабируемости. Масштабируемость распределенных систем одна из первоочередных задач при проектировании РС. Распределенные системы позволили избежать главного недостатка централизированных систем – ограниченности наращивания вычислительных мощностей системы. Существуют три основных показателя масштабируемости системы:

  • масштабируемость РС по отношению к ее размеру. Система считается масштабируемой по отношению к ее размеру, если она обеспечивает простоту подключения к ней новых узлов.
  • Географическая масштабируемость. Система считается географически масштабируемой, если к ее сети возможно подключение новых узлов, без привязки к конкретной географической зоне (страна, город, дата – центр и т.д.), то есть глобально распределенных узлов.
  • Масштабируемость управления. Система считается масштабируемой в плане управления ресурсами, если при росте общего количества узлов системы, администрирование системы не усложняется.

При решении задачи масштабируемости системы необходимо решить множество проблем. Выделим основные проблемы масштабируемости распределенных систем.

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

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

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

Проблема ограниченности алгоритмов обработки данных. Необходимо использовать методы и алгоритмы сбора данных с узлов системы, которые минимально перегружают коммуникационную сеть.

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

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

Заключение

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

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

ЛИТЕРАТУРА

  1. Tsvetkov V. Yа., Lobanov A. A. Big Data as Information Barrier // European Researcher. 2014. Vol.(78). № 7-1. p. 1237-1242.
  2. Мартин Д. Вычислительные сети и распределенная обработка данных: Программное обеспечение, методы и архитектура: [В 2-х вып.]: Пер. с англ. Вып. 1. Финансы и статистика, 1985.
  3. Цветков В.Я. Базы данных. Эксплуатация информационных систем с распределенными базами данных. М.: МИИГАиК, 2009. 88 с.
  4. Шокин Ю.И. и др. Распределенная информационно-аналитическая система для поиска, обработки и анализа пространственных данных // Вычислительные технологии. 2007. Т. 12. №. 3. С. 108-115.
  5. Tanenbaum A., Van Steen M. Distributed systems. Pearson Prentice Hall, 2007.
  6. И.Б. Бурдонов, А.С. Косачев, В.Н. Пономаренко, В.З. Шнитман. Обзор подходов к верификации распределенных систем. М.: Российская Академия Наук. Институт системного программирования (ИСП РАН) 2003. 51 с.
  7. Вовченко А.Е., Калиниченко Л.А., Ступников С.А. Семантический грид, основанный на концепции предметных посредников. Институт проблем информатики РАН. URL: http://83.149.245.107/synthesis/publications/10semgrid/10semgr id.pdf (дата обращения 20.09.2014).
  8. Родин А.В., Бурцев В.Л. Параллельные или распределенные вычислительные системы? // Труды Научной сессии МИФИ- 2006. Т. 12 Информатика и процессы управления. Компьютерные системы и технологии. с. 149-151.
  9. George Coulouris, Jean Dollimore, Tim Kindberg, “Distributed Systems Concepts and Design” 3 rd edition, Addison-Wesley.
  10. Blaze M. et al. The role of trust management in distributed systems security // Secure Internet Programming. Springer Berlin Heidelberg, 1999. С. 185-210.
  11. Бабич А.В., Берсенев Г.Б. Алгоритмы динамической балансировки нагрузки в распределенной системе активного мониторинга // Известия ТулГУ. Технические науки. 2011. №. 3. С. 251-261.
  12. Daryapurkar A., Deshmukh M. V. M. Efficient Load Balancing Algorithm in Cloud Environment // International Journal Of Computer Science And Applications. 2013. Т. 6. №. 2. p. 308-312.
  13. Распределенные системы. Принципы и парадигмы Э. Таненбаум, М. Bан Стеен. СПб.: Питер, 2003.
  14. Tanenbaum A. S., Klint P., Bohm W. Guidelines for software portability // Software: Practice and Experience. 1978. Т. 8. №. 6. С. 681-698.
  15. James D. Mooney. "Bringing Portability to the Software Process". Technical Report TR 97-1, Dept. of Statistics and Computer Science, West Virginia University, Morgantown WV, 1997.

    Архитектура распределенных систем и основные понятия распределенной обработки данных……………………………………………………………….2

    Концепция открытых систем…………………………………………….12

    Преимущества идеологии открытых систем……………………………17

    Открытые системы и объектно-ориентированный подход……………19

    Компьютерные (информационные) сети…………………………………21

    Глобальные сети…………………………………………………………..24

    Локальные сети……………………………………………………………..27

    Многопроцессорные компьютеры………………………………………..31

    Взаимодействующие процессы…………………………………………..36

  1. Архитектура распределенных систем и основные понятия распределенной обработки данных

Под распределенными понимаются ИС, которые не располагаются на одной контролируемой территории, на одном объекте.

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

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

Сосредоточенными ИС могут быть:

    отдельные ЭВМ, в том числе и ПЭВМ,

    вычислительные системы и комплексы,

    локальные вычислительные сети (ЛВС).

В настоящее время практически не используются неинтеллектуальные абонентские пункты, не имеющие в своем составе ЭВМ . Поэтому правомочно считать, что наименьшей структурной единицей РИС является ЭВМ (рис. 1).

Распределенные ИС строятся по сетевым технологиям и представляют собой вычислительные сети (ВСт).

Термин «распределенная система», подразумевает взаимосвязанный набор автономных компьютеров, процессов или процессоров. Компьютеры, процессы или процессоры упоминаются как узлы распределенной системы. Будучи определенными как «автономные», узлы должны быть, по крайней мере, оборудованы своим собственным блоком управления. Таким образом, параллельный компьютер с одним потоком управления и несколькими потоками данных (SIMD) не подпадает под определение распределенной системы. Чтобы быть определенными как «взаимосвязанными», узлы должны иметь возможность обмениваться информацией.

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

Коммуникационная подсистема включает в себя:

    коммуникационные модули (КМ);

    каналы связи;

    концентраторы;

    межсетевые шлюзы (мосты).

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

Рис. 1. Фрагмент распределенной информационной системы

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

Концентраторы используются для уплотнения информации перед передачей ее по высокоскоростным каналам.

Межсетевые шлюзы и мосты используются для связи сети с ЛВС или для связи сегментов глобальных сетей. С помощью мостов связываются сегменты сети с одинаковыми сетевыми протоколами.

В любой РИС в соответствии с функциональным назначением может быть выделено три подсистемы:

    пользовательская подсистема;

    подсистема управления;

    коммуникационная подсистема.

Пользовательская или абонентская подсистема включает в себя информационные системы пользователей (абонентов) и предназначается для удовлетворения потребностей пользователей в хранении, обработке и получении

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

Коммуникационная подсистема обеспечивает передачу информации в сети в интересах пользователей и управления РИС.

Функционирование РИС можно рассматривать как взаимодействие удаленных процессов через коммуникационную подсистему .

Процессы вычислительной сети порождаются пользователями (абонентами) и другими процессами.

Взаимодействие удаленных процессов заключается в:

    обмене файлами,

    пересылке сообщений по электронной почте,

    посылке заявок на выполнение программ и получение результатов,

    обращении к базам данных и т. д.

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

    аппаратных вычислительных средств и собственно вычислительной мощности;

    баз данных;

    управление системой.

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

Доступ к ресурсам (вычислительным мощностям, программам, данным и т. п.) с терминалов и из пользовательских программ в режиме «файл-сервер»;

    выполнение заданий и интерактивное общение пользователей с запущенными по их требованию программами в режиме «клиент-сервер»;

    сбор статистики о функционировании системы;

    обеспечение надежности и живучести системы в целом.

В настоящее время применяют различные подходы к классификации распределенных информационных систем по разным критериям.

По степени однородности различают:

    полностью неоднородные РИС;

    частично неоднородные РИС;

    однородные РИС.

Полностью неоднородные РИС характеризуются тем, что в них объединены ЭВМ , построенные на основе различных архитектур и функционирующие п од управлением разных операционных систем (ОС ).

Как правило, РИС этого типа в качестве коммуникационной службы используют глобальные сети , базирующиеся на протоколах Х.25, Frame relay , ATM , Internet -технология.

Частично неоднородные РИС строят на базе однотипных ЭВМ , работающих под управлением различных ОС , либо они включают в себя компьютеры различных типов, работающие под управлением одной ОС.

Например , IBM PC компьютеры управляются различными ОС; MS DOS , OS /2, Windows 95, Windows NT .

Однородные распределенные системы строятся на однотипных вычислительных средствах, оснащенных одинаковыми операционными системами.

По архитектурным особенностям выделяют:

    РИС на основе систем телеобработки ;

    РИС на основе сетевой технологии .

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

В отличие от таких систем РИС на основесистем телеобработки не обес печивают полного, симметричного и независимого взаимодействия процессов.

По степени распределенности с позиций пользователя РИС делятся на 2 группы:

региональные и локальные.

К региональным РИС относятся распределенные конфигурации, ха рактеризующиеся следующими основными параметрами :

Неограниченной географической распределенностью;

Наличием тех или иных механизмов маршрутизации;

Каждые два узла связаны собственным каналом, и отсутствует проблема его разделения;

Широким диапазоном скоростей передачи - 10 3 ... 10 8 бит/с;

Произвольной топологией.

В них можно выделить несколько способов организации взаимодействия между ЭВМ:

    коммутация каналов;

    коммутация сообщений;

    коммутация пакетов;

    коммутация фреймов - Frame relay ;

    коммутация ячеек - ATM -технология .

Основу локальных РИС составляют локальные сети со следующими ха рактеристиками:

    небольшая географическая распределенность;

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

    высокие и очень высокие скорости обмена - 10 7 ... 10 9 бит/с;

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

    ограниченность возможных топологий.

Под архитектурой РИС понимают взаимосвязь еёлогической , физи ческой и программной структур .

Логическая структура РИС отражает состав сетевых служб и связи между ними (рис. 2).

В данной структуре информационно-вычислительная служба предназначена для решения задач пользователей сети.

Терминальная служба обеспечивает взаимодействие терминалов с сетью.

В эту службу входит:

    преобразование форматов и кодов,

    управление разнотипными терминалами,

    обработка процедур обмена информацией между терминалами и сетью и т. д.

Транс портная служба предназначена для решения всех задач, связанных с передачей сообщений в сети.

Она управляет:

    маршрутами,

    потоками и данными,

    декомпозицией сообщений на пакеты и рядом других функций.

Интерфейсная служба решает задачи обеспечения взаимодействий разнотипных ЭВМ, функциониру ющих под управлением различных ОС , имеющих разную архитектуру, длину слова, форматы представления данных и др.

Кроме того, служба управления интерфейсами осуществляет взаимодействие ЭВМ, входящих в состав различных сетей.

Административная служба

    управляет сетью,

    реализует процедуры реконфигурации и восстановления,

    собирает статистику о функционировании сети,

    осуществляет тестирование сети.

Приведенный полный состав элементов логической структуры не является обязательным для всех реальных систем .

Так, в однородных сетях отпадает необходимость в интер фейсной службе , в простейших сетях может отсутствовать административная служба и т. д.

Информационно-вычислительная (ИВС) и терминальная службы образуют абонентскую службу .

Интерфейсная и транспортная службы образуют коммуникаци онную службу.

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

Распределение элементов логической структуры по различным ЭВМ задает физическую структуру РИС (рис.3).

Элементами такой структуры являются ЭВМ, связанные между собой и с терминалами.

В зависимости от реализации в ЭВМ той или иной сетевой служ бы в физической структуре можно выделить:

1 - главные ЭВМ;

2 - коммуникационные ЭВМ;

3 - интерфейсные ЭВМ;

4 - терминальные ЭВМ;

5 - административные ЭВМ.

В одной ЭВМ могут реализовываться несколько служб.

Программная структура РИС отражает состав компонентов сетевого программного обеспечения (ПО) и связи между ними .

Очевидно, что состав сетевого ПО определяется логической структурой, т. е. функциями, выполняемыми ее службами,

В то же время связи между компонентами ПО во многом зависят от физической структуры.

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

Сетевое ПО имеет многоуровневую иерархическую организацию, что обус ловлено двумя факторами:

    необходимостью минимизации затрат на модификацию сетевого ПО при изменении состава используемого оборудования;

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

Для иерархической организации необходимо четкое описание интерфейсов и протоколов, т.е. правила взаимодействия:

    программ, выполняемых в одной ЭВМ и находящихся на различных уровнях,

    и программ, находящихся на одном уровне, но расположенных в различных ЭВМ.

Стремление создать единую, универсальную и открытую к изменениям логической и физической структур сетевую архитектуру обусловило стандарти зацию уровней иерархии ПО сетей ЭВМ.

Распределенные информационные системы

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

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

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

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

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

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

В качестве примера рассмотрим корпоративную информационную систему - Региональную распределенную информационную систему образования (РРИСО).

Задачи РРИСО (рис. 5.1):

  • 1. Ведение централизованной базы данных для обеспечения управления системой.
  • 2. Интеграция неоднородных баз данных педагогической и управленческой информации.
  • 3. Обеспечение единого интерфейса пользователя и формирования типовых документов.
  • 4. Создание централизованной электронной библиотеки и поддержка работы учащихся, преподавателей с периферийными электронными библиотеками.
  • 5. Поддержка дистанционного обучения и независимого тестирования.
  • 6. Совместное использование вычислительных ресурсов и оборудования.
  • 7. Автоматический обмен электронной информацией между учреждениями образования, автоматизация процессов создания, обработки и хранения информации.
  • 8. Защита информации, размещенной в РРИСОН, и авторских прав разработчиков БД, электронных учебных материалов и приложений.
  • 9. Поддержка групповой работы при подготовке электронных учебных материалов, обучении, научных исследованиях.
  • 10. Интеграция с аналогичными информационными системами зарубежных и отечественных компьютерных сетей.

Рис. 5.1.

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

Рис. 5.2.

Целью функционирования информационной системы является мониторинг в сфере образования (рис. 5.3).

Рис. 5.3.

Региональная распределенная информационная система имеет иерархическую организацию (рис. 5.4).

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

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


Рис. 5.4.

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

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

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


Рис. 5.5.

Архитектура ИС соответствует многоуровневой структуре системы образования региона. Система включает подсистемы нескольких уровней (рис. 5.5):

  • · Информационные системы образовательных учреждений различных типов и видов.
  • · Информационные системы муниципальных (территориальных, районных) органов управления образованием.
  • · Информационную систему органов управления образованием регионального уровня.

В системе регионального масштаба должна поддерживаться возможность распределенного хранения и распределенной обработки данных.

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

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

Интеграция подсистем реализуется на основе технологии BizTalk Server .

Программная платформа технологии - Microsoft .NET .


Рис. 5.6.

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

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

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

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







2024 © gtavrl.ru.