Технологии баз данных в информационных экономических системах

Системы управления базами данных (СУБД), понятие и виды. Microsoft Access как реляционная СУБД, работа с данными в Microsoft Access. Виды корпоративных СУБД, их характеристика. Различие между МА и MS SQL Server. Объекты и термины базы данных Oracle.

Рубрика Программирование, компьютеры и кибернетика
Вид учебное пособие
Язык русский
Дата добавления 28.03.2020
Размер файла 3,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Представления (виды).

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

- ограничивать доступ к таблице выборкой только ее отдельных столбцов/строк;

- объединять несколько таблиц в одну структуру;

Снимки.

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

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

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

Применение снимков имеет ряд ограничений:

· невозможность изменения удаленных данных, используемых в снимке, на локальном компьютере, так как снимок - это запрос с режимом доступа только для чтения;

· для автоматического обновления снимка требуется соединение с удаленным сервером;

· снимки не могут содержать столбцов типа LONG (большие объекты).

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

Последовательности.

Последовательность (sequence) - это объект базы данных, аналогичный объекту "Счетчик" СУБД MS Access. Каждое следующее или текущее значение последовательности, с учетом заданного шага приращения, получается, используя псевдостолбцы NEXTVAL или CURVAL. Как правило, последовательности создаются для формирования значений столбца, который используется как первичный ключ.

Синонимы.

Синоним (synonym) определяет дополнительное имя, используемое для доступа к объекту. Синонимы могут быть общедоступные или индивидуальные, которые может применять только пользователь, владеющий объектом. Все общедоступные синонимы принадлежат схеме PUBLIC, объекты которой доступны всем зарегистрированным пользователям базы данных Oracle.

Пакеты, хранимые процедуры, функции, триггеры.

Триггер - это блок инструкций PL/SQL, связанный с определенной таблицей и автоматически запускаемый Oracle при попытке выполнить один из следующих SQL-операторов: DELETE, INSERT или UPDAТЕ. Хранимые процедуры/функции - это программы на PL/SQL, хранимые в самой базе данных и выполняющие определенные действия над ней. Хранимые процедуры могут использоваться наравне с инструкциями SQL, при работе с данной конкретной базой данных, а хранимые функции могут также использоваться в самих инструкциях SQL, в условиях отбора. Возможен вызов одной хранимой процедуры/функции из другой, или вызов хранимой процедуры из триггера.

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

· более удобное управление полномочиями;

· возможность изменения объектов пакета без изменения зависимых объектов схемы;

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

· возможность перегрузки (overloading) процедур и функций, имеющих одинаковые имена, но разные списки аргументов (по количеству и/или по типу).

Словарь данных.

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

Распределенные транзакции.

Сервер Oracle позволяет выполнять распределенные транзакции, или транзакции, которые изменяют данные в нескольких базах данных. Для завершения распределенной транзакции достаточно выполнить оператор COMMIТ, как и для обычной транзакции. После этого каждый компонент распределенной транзакции завершается на каждой включенной в транзакцию базе данных. При возникновении сбоя в сети или на одной из машин во время процесса завершения транзакции состояние такой транзакции становится неопределенно. Говорят, что распределенная транзакция находится в сомнительном состоянии (in-doubi). После консультаций с администраторами других баз данных, вовлеченных в транзакцию, можно выполнить принудительное завершение или откат транзакции на отдельной локальной базе данных. Для принудительного отката транзакции используется оператор COMMIТ с фразой FORCE.

3.3 СУБД Progress

3.3.1 Архитектура СУБД Progress

СУБД Progress - это SQL-совместимая реляционная система управления базами данных, поддерживающая многосерверную и многопоточную организацию доступа к данным. СУБД имеет шлюзовую архитектуру, показанную на рис.1.

Рис.1 Архитектура СУБД Progress

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

DataServer - шлюз нижнего уровня для доступа к другим источникам данных, в том числе и к распределенным.

При работе приложения через DataServer можно использовать специфические для конкретного сервера СУБД возможности, синтаксис и команды (например, использовать преимущества хранимых процедур Oracle, синтаксис PL-SQL, интерфейс SQL*Net) и/или расширять функциональность, используя специфические средства Progress, например триггеры.

Собственный сервер баз данных Progress.

На рис.2 показана структура собственного сервера баз данных Progress в общем случае.

Рис.2 Сервер СУБД Progress.

3.3.2 Основные компоненты СУБД Progress

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

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

Progress Монитор - утилита, показывающая производительность и полезную информацию о статусе базы данных и активности.

Progress Watchdog - утилита, определяющая некорректно завершенные процессы и разблокирующая записи базы данных, структуры в разделяемой памяти и т. д.

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

? APWs (Asynchronous page writers) постоянно записывают измененные блоки базы данных на диск.

? BIWs (Before-image writers) постоянно записывают на диск заполненные буферы журнала активных транзакций, служащего для отката базы назад в случае системных сбоев.

? AIWs (After-image writers) постоянно записывают на диск заполненные буферы журнала завершенных транзакций. Используя резервную копию базы и журнал завершенных транзакций, всегда можно восстановить текущее состояние базы в случае аппаратных сбоев. Создание резервных копий баз данных и восстановление баз может производиться как в off-line-, так и on-line-режимах.

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

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

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

Блокировки в Progress поддерживаются вплоть до уровня записей. Существует два типа блокировок: разделяемая (shared) и монопольная (exclusive). Тип и время, на которое блокируется запись, определяются по умолчанию, но могут быть и явно указаны разработчиком. Блокирование доступа возможно на уровне записи, таблицы и базы данных.

3.3.3 Возможности СУБД Progress

Администрирование СУБД.

Сервер баз данных Progress достаточно прост в администрировании, благодаря большому количеству умолчаний и тому, что многие процессы, такие как APWs, автоматически настраивают свое поведение, основываясь на активности использования базы данных, даже если активность принципиально изменяется при переходе с дневной обработки в режиме on-line на пакетную обработку в ночное время. Всего СУБД имеет около50 конфигурационных опций и параметров, позволяющих оптимально настроить систему для конкретной программно-аппаратной платформы и сетевого взаимодействия.

Некоторые особенности функционирования СУБД Progress.

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

Для эффективной работы с документами в Progress существует механизм word indexing - возможность построения индексов по словам в символьном поле.

Приложение может также использовать данные из мета-схемы базы (т. е. само описание базы данных может быть доступно в виде обычной базы) и виртуальные run-time-таблицы (magic tables), содержащие данные об активных блокировках записей, работающих пользователях, параметрах базы данных. Для поддержания семантической целостности базы данных, для различных событий, таких как добавление, удаление, нахождение записи в базе и т. д., можно определить триггеры, выполняемые в ответ на эти события. Механизм триггеров можно использовать для дополнительной журнализации событий в базе, ограничения видимости записей, соответствующих некоторым критериям для определенных групп пользователей. Например, для события find record для таблицы "Зарплата" можно создать триггер, который позволит просматривать записи о зарплате только тех сотрудников, сумма зарплаты которых не превышает определенного для данного пользователя значения, хранимого в другой таблице. Пользователь может даже не догадываться, что просматривает только часть записей. Все триггеры пишутся в виде обычныхGL-процедур, могут работать с любым источником данных, поддерживаемым Progress, и до сих пор обладали только тем недостатком, что в отличие от хранимых процедур исполнялись на клиентской стороне. Но с появлением в сентябре996 года нового продукта Progress AppServer - компонентного сервера приложений - триггеры могут выполняться в любом узле вычислительной сети, в том числе и на самом сервере базы данных.

Компонентный сервер приложений AppServer.

Одним из важных шагов, предпринятых Progress Software в направлении создания распределенных приложений в N-уровневой архитектуре клиент-сервер, является введение в язык понятия удаленных процедур (remote procedures), разрабатываемых на языкеGL и используемых для разделения приложения на компоненты. Каждый из этих компонентов запускается на своем сервере приложений в непосредственной близости от данных, с которыми он работает, тем самым выделяя сегмент бизнес-логики из приложения - по сути инкапсулируя его функции в различных компонентах, каждый из которых может быть запущен на разных серверах в различных узлах сети. В приложении, написанном с использованием запускаемых на компонентном сервере удаленных процедур, клиентское приложение может вызвать удаленную процедуру и, не дожидаясь возврата из нее, сразу же перейти к следующей процедуре. Работа клиента будет прервана только по окончании выполнения удаленной процедуры для возвращения результата. Очевидно, что при этом общая производительность приложения значительно возрастает.

Progress/4GL

Компонентный языкGL - ядро разработки критически важных приложений, которое позволяет управлять всеми уровнями приложения: пользовательским интерфейсом, бизнес-логикой приложения и данными. Он обеспечивает управление транзакциями, генерацию отчетов, определение механизмов безопасности и целостности данных. В приложении наGL для работы с данными можно использовать SQL. Progress/SQL удовлетворяет стандарту ANSI SQL89 Level. Также в приложение могут быть интегрированы вставки С, на объекты ActiveX, OLE, механизмы DDL, DDE, Unix named pipes и другие.

Переносимость.

Progress функционирует более чем на60 программно-аппаратных платформах и поддерживает различные сетевые протоколы - TCP/IP, SPX/IPX, SNA, DecNet, NetBIOS. Приложения, разработанные на одной платформе, могут эксплуатироваться на любой другой из поддерживаемых платформ. Среди них MS-DOS, Novell, Windows, OS/2, Unix (UnixWare, SCO Unix, Interactive, Sun Solaris, AIX, HP-UX, IRIX), Windows NT (Intel, Alpha), OSF/1, OpenVMS, OS/400. Одним из уникальных свойств Progress является то, что одно и то же приложение может работать как в графической среде (Motif, Windows), так и на алфавитно-цифровых терминалах. Разработчик может создавать и различные экранные формы для каждого из типов пользовательского интерфейса.

Интернационализация.

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

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

Системные сообщения.

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

Одновременная поддержка нескольких языков.

Все более актуальной становится возможность использования одного и того же приложения в различных странах на разных языках с учетом национальных традиций и особенностей. В России разработчикам также приходится решать такого рода задачи. Российские приложения хотят эксплуатировать на Украине, в Казахстане, в других странах бывшего Советского Союза. При этом встает вопрос поддержки национальных алфавитов каждой из этих стран. Progress Software разработала специальный продукт Translation Manager для решения этих вопросов. В его состав входят два основных компонента - Translation Manager и Visual Translator.

Описание процесса перевода приложения.

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

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

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

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

Разработчиком Progress является американская компания Progress Software Corporation (Бедфорд), имеющая представительства в4 странах мира. На Progress создано более000 приложений, среди которых крупные банковские системы, системы управления промышленными, торговыми предприятиями. На территории СНГ дистрибьютором Progress Software является компания CSBI EE.

Для создания отчетов в интерактивном режиме существует специальная компонента Progress - Report Builder (до версии.1 включительно, в последующих версиях - Actuate). Заметим, что Report Builder требует отдельного connect с базой данных, поэтому в однопользовательском сеансе перед входом в среду Report Builder следует отсоединиться от базы данных.

Список литературы

1. Бобровски С. Огасlе8. Архитектура. -- М.: ЛОРИ,999.

2. Вейскас Д. Эффективная работа с Microsoft Access7 - СПб: ЗАО «Издательство «Питер»,

1999. -76 с.

3. М. Ф. Гарсиа, Дж. Рединг, Э. Уолен, С. А. ДеЛюк «Microsoft SQL Server000. Справочник

администратора». ЭКОМ,002

4. Д. Дэвитт, Д. Грей. Параллельные системы баз данных: будущее высокоэффективных баз

данных. СУБД, вып.,995

5. А.Г. Ляхевич Обзор баз данных. Учебное пособие. Минск,002

6. Мамаев Е., Шкарина Л. «Microsoft SQl Server000 для профессионалов». СПб:Питер,001

7. Ю.Пуха Объектные технологии построения распределенных информационных систем.

СУБД вып.3,997.

8. Пейдж В., Хьюз Н., Остин Д. Использование Огасlе8. -- К.; М.; СПб.: Вильямc,998.

9. Хоторн Роб «Разработка баз данных, Micrososoft SQL Server000». Вильямс,001

10. Шарон Б., Мэйбл Грэг «Sql Server000, Энциклопедия программиста» ДиаСофт,001.

Размещено на Allbest.ru


Подобные документы

  • Понятие и сущность базы данных, их классификация и характеристика. Системы управления базами данных. СУБД структуры "сервер-клиент", его суть. Microsoft Access - функционально полная реляционная СУБД. Предназначение СУБД Access, и описание ее работы.

    реферат [44,3 K], добавлен 27.02.2009

  • Microsoft Access как система управления базами данных (СУБД), ее предназначение. Организованная структура для хранения данных. Типы данных при работе с Microsoft Access 2003 и Microsoft Access 2007. Проектирование баз данных и построение ER-диаграммы.

    контрольная работа [16,3 K], добавлен 10.10.2010

  • Изучение основных понятий баз данных: структура простейшей базы данных, компоненты базы данных Microsoft Access. Проектирование базы данных "Туристическое агентство" в СУБД Access 2010, в которой хранятся данные о клиентах, которые хотят поехать отдыхать.

    курсовая работа [3,3 M], добавлен 20.09.2013

  • Системы управления базами данных: сущность и характеристика. Типы данных и свойства полей СУБД Access. Объекты базы данных: таблицы, схемы данных, формы, запросы, отчеты. Разработка и проектирование базы данных "Продажи книг" в среде Microsoft Access.

    курсовая работа [1,8 M], добавлен 04.02.2013

  • Базы данных и системы управления базами данных. Структура простейшей базы данных, свойства полей. Понятие языка SQL. Проектирование баз данных, режимы работы, объекты. СУБД Microsoft Access. Создание базы данных "Электротовары" средствами Visual FoxPro.

    курсовая работа [5,7 M], добавлен 29.04.2014

  • Программные продукты компании Microsoft: Access, Visual FoxPro7.0, dBASE. Возможности интеграции, совместной работы и использования данных. Системы управления базами данных (СУБД), их основные функции и компоненты. Работа с данными в режиме таблицы.

    курсовая работа [805,5 K], добавлен 15.12.2010

  • Особенности СУБД Microsoft Access, ее ориентация на рядовых потребителей, возможность легко выполнять основные операции с БД: создание, редактирование и обработка данных. Информационная модель задачи, работа с конструктором запросов и отчетов базы данных.

    курсовая работа [758,6 K], добавлен 30.06.2015

  • Базы данных с двумерными файлами и реляционные системы управления базами данных (СУБД). Создание базы данных и обработка запросов к ним с помощью СУБД. Основные типы баз данных. Базовые понятия реляционных баз данных. Фундаментальные свойства отношений.

    реферат [57,1 K], добавлен 20.12.2010

  • Состав, расширение баз данных Access (Microsoft Office). Выполнение запросов, заполнение форм и таблиц. Типы данных Microsoft Access. Средства создания объектов базы данных СУБД. Дополнительные возможности запросов. Свойства полей. Режим работы с формами.

    презентация [3,0 M], добавлен 28.10.2014

  • Операции в системе управления базами данных (СУБД). MS Access как функционально полная реляционная СУБД. Разработка реляционных моделей баз данных экономического направления. Применение прикладных программ для решения экономико-управленческих задач.

    курсовая работа [2,1 M], добавлен 14.01.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.