- •Введение
- •1. Структура и классификация сапр
- •1.1.Разновидности сапр
- •1.2.Функции, характеристики и примеры cae/cad/cam-систем
- •1.3.Понятие о cals-технологии
- •1.4.Комплексные автоматизированные системы
- •1.5.Системы управления в составе комплексных автоматизированных систем
- •1.6.Автоматизированные системы делопроизводства (асд)
- •2.Системы автоматизированного проектирования и их место среди других автоматизированных систем
- •3.Системные среды и программно-методические комплексы сапр
- •3.1.Функции сетевого программного обеспечения
- •3.1.1.Системы распределенных вычислений
- •3.1.2.Прикладные протоколы и телекоммуникационные информационные услуги
- •3.1.3.Информационная безопасность
- •3.2.Назначение и состав системных сред сапр
- •3.2.1.Системные среды автоматизированных систем
- •3.2.2.Подходы к интеграции по в сапр
- •3.2.3.Технологии интеграции по типа dde и ole
- •3.2.4.Управление данными в сапр
- •3.2.5.Варианты управления данными в сетях ас
- •3.2.6.Интеллектуальные серверы бд
- •3.2.7.Распределенные базы данных (рбд)
- •3.2.8.Программные средства управления проектированием в сапр
- •3.2.9.Примеры подсистем управления данными и проектированием
- •3.3.Инструментальные среды разработки программного обеспечения
- •3.3.1.Среды быстрой разработки приложений
- •3.3.2.Компонентно-ориентированные технологии
- •3.3.3.Пример реализации компонентно-ориентированной технологии в сапр
- •4.Системный подход к проектированию
- •4.1.Понятие инженерного проектирования
- •4.2.Принципы системного подхода
- •4.3.Основные понятия системотехники
- •5.Структура процесса проектирования
- •5.1.Иерархическая структура проектных спецификаций и иерархические уровни проектирования.
- •5.2.Стадии проектирования
- •5.3.Содержание технических заданий на проектирование
- •5.4.Классификация моделей и параметров, используемых при автоматизированном проектировании
- •5.5.Типовые проектные процедуры
- •6.Виды обеспечения и требования к их компонентам (гост 23501.101-87)
- •6.1.Программное обеспечение сапр
- •6.2.Информационное обеспечение сапр
- •6.3.Методическое обеспечение сапр
- •6.4.Математическое обеспечение сапр
- •6.5.Лингвистическое обеспечение сапр
- •6.6.Техническое обеспечение сапр
- •6.7.Организационное обеспечение сапр
- •7.Математическое моделирование автоматизированных систем
- •7.1.Математическое обеспечение анализа проектных решений
- •7.1.1.Математический аппарат в моделях разных иерархических уровней
- •7.1.2.Требования к математическим моделям и численным методам в сапр.
- •7.1.3.Место процедур формирования моделей в маршрутах проектирования
- •7.2.Математические модели в процедурах анализа на макроуровне
- •7.2.1.Исходные уравнения моделей
- •7.2.2.Примеры компонентных и топологических уравнений
- •7.2.3.Представление топологических уравнений
- •7.2.4.Особенности эквивалентных схем механических объектов.
- •7.2.5.Характеристика методов формирования ммс
- •7.2.6.Узловой метод
- •7.3.Методы и алгоритмы анализа на макроуровне
- •7.3.1.Выбор методов анализа во временной области
- •7.3.2.Алгоритм численного интегрирования соду
- •7.3.3.Методы решения систем нелинейных алгебраических уравнений
- •7.3.4.Методы решения систем линейных алгебраических уравнений
- •7.3.5.Анализ в частотной области
- •7.3.6.Многовариантный анализ
- •7.3.7.Организация вычислительного процесса в универсальных программах анализа на макроуровне.
- •7.4.Имитационное моделирование
- •7.4.1.Имитационное моделирование систем массового обслуживания
- •7.4.2.Событийный метод моделирования
- •7.4.3.Краткое описание языка срss
- •7.4.4.Сети Петри
- •7.4.5.Анализ сетей Петри
- •7.5.Математическое обеспечение синтеза проектных решений
- •7.5.1.Постановка задач параметрического синтеза
- •7.5.1.1.Место процедур синтеза в проектировании
- •7.5.1.2.Критерии оптимальности
- •7.5.1.3.Задачи оптимизации с учетом допусков
- •7.5.2.Обзор методов оптимизации
- •7.5.2.1.Классификация методов математического программирования
- •7.5.2.2.Методы одномерной оптимизации
- •7.5.2.3.Методы безусловной оптимизации
- •7.5.2.4.Необходимые условия экстремума
- •7.5.2.5.Методы поиска условных экстремумов.
- •7.5.3.Постановка задач структурного синтеза
- •7.5.3.1.Процедуры синтеза проектных решений
- •7.5.3.2.Задача принятия решений
- •7.5.3.3.Представление множества альтернатив
- •7.5.3.4.Морфологические таблицы
- •7.5.3.5.Альтернативные графы
- •7.5.3.6.Исчисления
- •7.5.4.Методы структурного синтеза в сапр
- •7.5.4.1.Системы искусственного интеллекта.
- •7.5.4.2.Дискретное математическое программирование
- •7.5.4.3.Элементы теории сложности
- •7.5.4.4.Эволюционные методы.
- •7.5.4.5.Постановка задачи поиска оптимальных решений с помощью генетических алгоритмов
- •7.5.4.6.Простой генетический алгоритм
- •7.5.4.7.Разновидности генетических операторов
- •7.5.4.8.Генетический метод комбинирования эвристик
- •8.Эффективность сапр
- •9.Понятие об открытых системах
- •9.1.История развития открытых систем
- •9.2.Существующие определения открытых систем и терминология
- •9.3.Различные подходы к понятию "открытые системы"
- •10.Технологии и стандарты информационной поддержки жизненного цикла изделий
- •Заключение
- •Библиографический список
- •Оглавление
- •394026 Воронеж, Московский просп., 14
3.2.7.Распределенные базы данных (рбд)
В крупных АС, построенных на основе корпоративных сетей, не всегда удается организовать централизованное размещение всех баз данных и СУБД на одном узле сети. Поэтому появляются распределенные базы данных.
При построении РБД приходится решать ряд сложных проблем, связанных с минимизацией трафика, обеспечением интероперабельности обработки данных и целостности данных.
Минимизация трафика нужна в связи с тем, что при обслуживании запроса могут потребоваться данные из многих узлов, пересылаемые по сети. Возможности минимизации видны из примера обработки данных нескольких таблиц из разных узлов. Очевидно, что целесообразна однократная пересылка таблиц (причем таблиц именно меньшего размера) на один узел, на котором и будет обрабатываться запрос.
Серверы
Рисунок 3.5 – Структура ODBC
Прикладная программа имеет ODBC-интерфейс, не зависимый от особенностей различных СУБД. Менеджер драйверов реализует на базе унифицированного языка SQL все нюансы доступа к БД, общие для разных СУБД. Драйвер конкретной
СУБД преобразует инвариантные к СУБД запросы в форму, принятую в данной СУБД. В трехзвенной структуре менеджер драйверов может быть размещен ан промежуточном сервере.
Обеспечение целостности в РБД намного сложнее, чем в одноузловых БД. Различают два подхода к построению РБД:
1) тиражирование (репликация), при котором на нескольких серверах (узлах) сети расположены копии БД;
2) полномасштабная распределенность, при которой разные части БД находятся на разных серверах сети (классическая распределенность).
Применяют два способа тиражирования.
Способ, называемый репликацией первой копии, основан на выделении среди серверов с копиями БД одного первичного сервера (репликатора). Внесение изменений пользователями возможно только в БД первичного сервера, который в дальнейшем осуществляет тиражирование. Тиражирование – это перенос изменений БД из первичного сервера во все вторичные (локальные) серверы, которые используются клиентами только для чтения данных. Репликатор реагирует на события, фиксируемые триггерами, периодически пересылает обновленные данные в копии БД. Недостаток способа – невысокая надежность, присущая любым централизованным структурам.
Надежность повышается при использовании способа голосования. Здесь изменения посылаются не в один первичный, а в некоторые N серверов. При этом любой запрос на чтение направляется к некоторым М серверам, причем N+M > К, где К – общее число серверов. Принимается последняя по времени обновления версия ответа.
Тиражирование вносит избыточность в хранимые данные, появляются трудности с разрешением конфликтов из-за возможных несогласованных изменений в локальных БД. Однако по сравнению с классическими РБД, в которых данные не дублируются, заметно уменьшается трафик, надежнее и проще работа с локальными БД. Обеспечение надежности и удобства работы особенно актуально в случае ненадежных и медленных каналов связи, что имеет место во многих сетях в России.
В классических распределенных СУБД (СУБД) необходимо управлять одновременным доступом, что должно гарантировать целостность (сериализуемость) БД. Наиболее широко используются алгоритмы управления, основанные на механизме блокировки. При этом блокировкой называют ситуацию, при которой некоторая транзакция объявила о желании получить полномочия на доступ к странице памяти и, следовательно, другие транзакции не имеют права занимать этот ресурс.
Одним из способов управления является централизованное блокирование, при котором на одном из узлов поддерживается единая таблица блокировок. Такой узел устанавливает очередность выполнения транзакций, что исключает конфликты. Однако при централизованном управлении невысока надежность и требуется мощный сервер.
В РСУБД с репликацией нет проблемы согласования при записи действий многих узлов. Собственно тиражирование чаще всего выполняется по правилу полной эквивалентности – обновленные данные сразу же после изменившей их транзакции рассылаются по всем локальным БД. Чтение же выполняется из БД одного конкретного узла, наиболее близкого к пользователю в функциональном или географическом смысле.
Сложнее решать проблемы распределенного управления, что требуется в РСУБД без тиражирования. Одним из распространенных протоколов распределенного управления является протокол двухфазной фиксации транзакций (2РС). На первой фазе инициатор транзакции (координатор) рассылает участникам выполнения транзакции оповещения о блокировке. В ответ узлы сообщают о своей готовности или неготовности. На второй фазе координатор сообщает либо о "глобальной фиксации", т.е. о выполнении транзакции, либо об откате транзакции. Неприятности возможны при сбоях, которые могут оставить некоторый узел в заблокированном состоянии: он не может ни выполнять транзакцию, ни отменять ее в одностороннем порядке.