Отдел сбыта
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
·а счет динамической реконфигурации, а на практике означает, что в конфигурацию системы динамически, без остановки серверов приложений, может быть добавлен, например, новый AS, дополнительный менеджер ресурсов или новый компьютер. Очевидно, что матричная масштабируемость практически неограниченно расширяет возможности управления параметрами системы для достижения требуемой производительности.
Оптимальное соотношение цена/производительность. ТРМ обладает возможностями, которые существенно снижают стоимость обработки данных в online-приложениях. Небольшие затраты на приобретение ТРМ с лихвой компенсируются экономией на СУБД. Дело в том, что, как правило, стоимость современных СУБД рассчитывается исходя их числа одновременных подключений. Клиент считается подключенным к СУБД, начиная с момента открытия сеанса с базой данных и заканчивая ее закрытием (хотя в рамках одного подключения некоторые СУБД, например, INGRES, позволяют открыть несколько сеансов с различными БД). В течение сеанса СУБД считает клиента активным и вынуждена хранить контекст его подключения, даже в том случае, если клиент вообще не направляет запросов СУБД, а выполняет свои внутренние функции, либо просто ждет ввода от пользователя (который, быть может, ушел пообедать).
Основная функция ТРМ - обеспечение быстрой обработки запросов, поступающих к AS от множества клиентов (от сотен до многих тысяч). ТРМ выполняет ее, мультиплексируя запросы на обслуживание, направляя их к AS, число которых контролируется им самим. Запросы на обработку данных формируются AS на языке SQL и адресуются СУБД. Между АС и СУБД появляется дополнительный слой (AS), которые выполняют роль мультиплексора. Действительно, АС подключается к AS, передает ему данные для обработки; после того, как AS выполнил требуемые действия, он получает результаты обработки и отключается. Контекст подключения не сохраняется, так как в этом нет никакой необходимости. В то же время клиент обращается с запросами на обслуживание не к СУБД, а к AS, следовательно, СУБД регистрирует и отслеживает подключения AS, но не АС.
Для понимания идей, заложенных в мониторы транзакций, важно рассмотреть модель обработки распределенных транзакций, которая была предложена USL и принята X/Open в качестве стандарта.
Модели транзакций. Рассмотрим две модели транзакций, используемые в большинстве коммерческих СУБД: модель автоматического выполнения транзакций и модель управляемого выполнения транзакций, обе основаны на инструкциях языка SQL - COMMIT и ROLLBACK.
Автоматическое выполнение транзакций. В стандарте ANSI/ISO зафиксировано, что транзакция автоматически начинается с выполнения пользователем или программой первой инструкции SQL. Далее происходит последовательное выполнение инструкций до тех пор, пока транзакция не завершается одним из двух способов:
инструкцией COMMIT, которая выполняет завершение транзакции: изменения, внесенные в БД, становятся постоянными, а новая транзакция начинается сразу после инструкции COMMIT;
инструкцией ROLLBACK, которая отменяет выполнение текущей транзакции и возвращает БД к состоянию начала транзакции, новая транзакция начинается сразу после инструкции ROLLBACK.Такая модель создана на основе модели, принятой в СУБД DB2.
Управляемое выполнение транзакций. Отличная от модели ANSI/ISO модель транзакций используется в СУБД Sybase, где применяется диалект Transact-SQL, в котором для обработки транзакций служат четыре инструкции:
инструкция BEGIN TRANSACTION сообщает о начале транзакции, т.е. начало транзакции задается явно;
инструкция COMMIT TRANSACTION сообщает об успешном выполнении транзакции, но при этом новая транзакция не начинается автоматически;
инструкция SAVE TRANSACTION позволяет создать внутри транзакции точку сохранения и присвоить сохраненному состоянию имя точки сохранения, указанное в инструкции;
инструкция ROLLBACK отменяет выполнение текущей транзакции и возвращает БД к состоянию, где была выполнена инструкция SAVE TRANSACTION (если в инструкции указана точка сохранения - ROLLBACK TO имя_точки_сохранения), или к состоянию начала транзакции.
2. ПРАКТИЧЕСКАЯ ЧАСТЬ
.1 Постановка задачи и описание предметной области
Создать приложение Отдел сбыта, которое содержит сведения об организациях, продукции, поставляемой этими организациями, на основе которого создается продажа.
Исходными данными описывающие предметную область являются таблицы:
Вся информация, которая должна храниться в создаваемой БД, можно разбить на три таблицы. Первая таблица "Организации" будет хранить информацию об организациях, приобретающих продукцию завода, вторая "Продукция" - информацию о продукции и третья "Продажа" - информацию о продажах.
Целесообразно будет, если включить в таблицу "Организации" следующие атрибуты:
"Имя_организации" - уникальное название организации, выступающее в роли первичного ключа таблицы (char 20);
"Адрес" - атрибут, имеющий символьный тип и содержит информацию о местонахождении организации (char 30);
"Активность" - содержит информацию о виде деятельности организации (char 20);
"Телефон" - контактирующий телефон (char 15);
"E_mail" - адрес электронной почты (char 20);
Таблица "Продукция" будет иметь следующие атрибуты:
"Имя_продукции" - является уникальным названием продукции, выступающим в роли первичного ключа таблицы (char 10);
"Цена_за_один" - цена за единицу (int);
"Количество" - количество единиц данной продукции на