Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Краткий обзор и анализ особенностей и возможностей СУБД




Иванова С.А. (Москва, МГТУ "Станкин")

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

и

2. Какими средствами разработки лучше всего пользоваться? Поэтому рассмотрим эти вопросы по порядку.

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

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

При рассмотрении требований конечных пользователей необходимо принимать во внимание следующее:

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

Рассмотрим средства разработки, которые предлагает Microsoft.

Эта компания в настоящий момент предлагает пять пакетов программ, которые могут быть использованы для создания пользовательского приложения по обработке данных: Access, SQL Server, Visual Basic, Visual C++ и Visual FoxPro. Эти средства могут быть использованы, так по отдельности - для решения конкретно поставленной задачи, как и в качестве интегрированного набора, каждый компонент которого может быть применен при разработке больших проектов масштаба предприятия. С этой точки зрения характеристика всех пяти продуктов приведена в следующей таблице 1.

Таблица 1.

Название продукта Основные преимущества Основное назначение
Access Простота освоения. Возможность использования непрофессиональным программистом. Имеет мощные средства подготовки отчетов из БД различных форматов. Создание отчетов произвольной формы на основании различных данных. Разработка не коммерческих приложений.
SQL-Server Высокая степень защиты данных. Мощные средства работы с данными. Высокая производительность. Хранение больших массивов данных. Хранение данных, требующих соблюдения режима секретности или при не допустимости их потери.
Visual Basic Универсальность. Возможность создания компонентов (OLE). Невысокие требования к мощности ПЭВМ. Создание приложений средней мощности, не связанных с большой интенсивностью обработки данных. Разработка компонентов OLE. Создание приложений для интеграции компонентов Microsoft Office.
Visual C++ Универсальность. Наибольшая скорость работы приложения. Неограниченная функциональность. Создание компонентов приложения для выполнения критических по скорости процессов или обеспечения функциональности, не достижимой в других средствах разработки.
Visual FoxPro Высокий уровень объектной модели. Высокая скорость обработки данных. Интеграция объектно-ориентированного языка программирования с Xbase и SQL. Многоплатформенность. Создание приложений масштаба предприятия. Создание приложений для работы на различных платформах (Windows 3.x, Windows 95, Macintosh и т. д.)


Рассмотрим более подробно перечисленные в таблице средства разработки за исключением пакета Visual C++, так как он требует более детального рассмотрения.
Какие общие черты имеют рассматриваемые средства разработки, подтверждающие наше утверждение о возможности их совместного использования для разработки пользовательских приложений различного уровня сложности? Это в основном, такие новые технологии, как OLE, ODBS, DAO, RDAO, ActiveX и пр., которые они поддерживают. Эти технологии закладывают возможность использования в одном приложении данных, хранящихся в различных форматах. Это обеспечивает разработку приложения, независимые от данных. Помимо этого, за счет OLE Automation, возможно приложение функциональных возможностей различных пакетов программ для выполнения с данными специфических операций. Классическим примером этого приложения является подготовка в приложении, написанном на Visual FoxPro, данных, хранящихся в формате Access, для вывода в виде сложного графика с использованием Мастера подготовки графиков Excel.

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

Таблица 2

Тип данных Visual FoxPro Access и Visual Basic MC SQL Server Длина Число десятичных разрядов Занимаемый объем
Binary Image Byte Character Text Нет Нет С dbLongBinary dbByte dbText bynary(n) tinyint char(n) varchar(n) n байт 1 n - - - до 1,2 Гбайт 1 байт 4 байта
Count Нет dbLong Нет - - 4 байта
Сurrency Y dbCurrency money - - 8 байт
             
Date D Нет Нет - - 8 байт
DateTime T dbDate datetime - - 8 байт
Logical (Yes/No) L dbBoolean bit - - 1 байт
Numeric N Нет float n d от 1 до 20 байтов
Integer Integer Нет 1 dbInteger dbLong smallint int n - - 2 байта 4 байта
Double B dbDouble float - d 8 байт
Float F   float n - от 1 до 20 байтов
General (OLE Object) G dbLongBinary image   - 4байта
Memo M dbMemo text - - 4 байта
Single Нет dbSingle real     4 байта
Сharacter (binary) C Нет Нет n - 1байт на символ
Memo (binary) M Нет Нет - - 4 байта

 

Binary Image. Любые данные в двоичном виде. Используются для хранения изображений, файлов и т.д. Byte. Целое положительное число от 0 до 255. Character. Символьное выражение может содержать любые символы (до 254 для одного поля). Count. Счетчик, который автоматически наращивает свое значение при добавлении записи. Начальное значение 1. Currency. Денежное выражение для числовой величины. Выводит число с четырьмя десятичными разрядами и установленным обозначением применяемой денежной единицы. Date. Выражение для даты может содержать день, месяц и год. DateTime. Выражение дата и время может содержать время, день, месяц и год. Logical. Булево выражение для.T. или.F. Numeric. Числовое выражение может содержать целые или дробные числа со знаком. Integer (dbInteger). Целое число в диапазоне от -32,768 до +32,767. Integer (dbLong). Целое число. Можно хранить числа от -2147483647 до 2147483646. Double. Числа с плавающей точкой двойной точности. Можно хранить значения от 4.94065645841247Е-324 до 1.79769313486232Е308. Float. Тоже, что числовое выражение. Оставлено для совместимости. General. Поле для ссылки на объект OLE. Memo. Поле примечаний для ссылки на блок данных. Single. Число с плавающей точкой одинарной точности. Можно хранить отрицательные числа от -3.402823Е38. Character (binary). Символьное выражение, не подвергаемое трансляции в другую кодовую страницу. Memo (binary). Поле примечаний для ссылки на блок данных, не подвергаемых трансляции в другую кодовую страницу.

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

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

Visual FoxPro.

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

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

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

2. Обеспечение полного набора средств для управления событиями. Традиционно в Xbase от программиста требовалось написать собственный драйвер для обработки необходимого набора событий или положиться на READ-состояние ожидания, которое моделирует обработку события системой. В WINDOWS, число событий, к которым может обращаться пользователь, весьма велико, и, следовательно, обработка событий является непростой задачей. Visual FoxPro 3.0 имеет истинно управляемую событиями модель, так что по умолчанию система раньше, чем пользователи обрабатывает объектные события. Кроме того, программист теперь имеет полный доступ к набору стандартных на функционировании WINDOWS событий (например, движение мыши, которые допускают перетаскивание объектов).

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

4. Обеспечение полной интеграции Visual FoxPro 3.0 в семейство прикладных программ Micrpоsoft. Единый интерфейс с наиболее популярными прикладными программами Microsoft делает работу в интерактивном режиме интуитивно понятной. Поддержка правой кнопки мыши позволяет избежать долгих путешествий по системе меню и значительно облегчает изучение новых возможностей СУБД. Просто выберите курсором объект и нажмите правую кнопку мыши. На некоторых диалоговых окнах, которые часто используются в работе на полосе заголовка, появился переключатель в виде анимационной пиктограммы (push pin), позволяющий легко включить режим, при котором это окно будет всегда расположено на переднем плане. Visual FoxPro обеспечивает полную поддержку OLE 2.0, что облегчает взаимодействие с другим программным обеспечением в среде WINDOWS. Помимо оставшейся возможности загрузки внешних функций посредством команды SET LIBRARY появилась возможность обращения к функциям динамических DLL библиотек WINDOWS посредством команды DECLARE.

5. Совместимость с ранее разработанным обеспечением в среде FoxPro.

Access

Microsoft Access - это самая популярная сегодня настольная система управления базами данных. Ее успех можно связывать с великолепной рекламной компанией, организованной Microsoft, или включением ее в богатое окружение семейства Microsoft Office. Вполне возможно, что это так. Но корень успеха скорее всего заключается в прекрасной реализации продукта, рассчитанного как на начинающего, так и на квалифицированного пользователя. Не будем сейчас вдаваться в подробности сравнения отдельных характеристик Access, и его основных конкурентов, например Paradox for Windows или Lotus Approach. Эта система прекрасно освещена в периодической компьютерной печати.

СУБД Access 7.0 для работы с данными использует процессор баз данных Microsoft Jet 3.0, объекты доступа к данным и средства быстрого построения интерфейса - Конструктор форм. Для получения распечаток используются Конструкторы отчетов. Автоматизация рутинных операций может быть выполнена с помощью макрокоманд. На тот случай, когда не хватает функциональности визуальных средств пользователи Access могут обратиться к созданию процедур и функций. При этом как в макрокомандах можно использовать вызовы функций, так и из кода процедур и функций можно выполнять макрокоманды.
Несмотря на свою ориентированность на конечного пользователя в Access присутствует язык программирования Visual Basic for Application, который позволяет создавать массивы, свои типы данных, вызывать DLL-функции, с помощью OLE Automation контролировать работу приложений, которые могут функционировать как OLE -серверы. Можно целиком создавать базы данных с помощью кодирования, когда в этом появляется необходимость. MS Access из всех рассматриваемых средств разработки имеет, пожалуй, самый богатый набор визуальных средств. Тем не менее кодировать в Access приходится. Так как ни одно приложение не предназначенное для себя лично, создать хотя бы без одной строчки кода невозможно. Для коммерческого распространения приложений, разработанных на Access, как мы уже писали, предназначен пакет Access Developer Toolkit, вместе с которым поставляются и несколько дополнительных объектов ActiveX.

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

Вся работа с базой данных осуществляется через контейнеры базы данных. Отсюда осуществляется доступ ко всем объектам, а именно: таблицам, запросам, формам, отчетам, макросам, модулям. Посредством драйверов ISAM можно получить доступ к файлам таблиц некоторых других форматов: DBASE, Paradox, Excel, текстовым файлам, FoxPro 2.x, а посредством технологии ODBC - и к файлам многих других форматов.

Access 7.0 может выступать как в роли OLE- контролера, так и OLE сервера. Это значит, что можно контролировать работу приложений Access из любого приложения, при условии, что оно может выступать в роли OLE контролера и наоборот

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

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

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

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

А также Access обладает лучшей встроенной системой защиты среди всех настольных приложений СУБД. Вы можете создавать группы, пользователей, присваивать права доступа ко всем объектам, в том числе и модулям. Кстати, это решает вопрос закрытия ваших процедур и функций от чужих глаз. Так как для Access нет компилятора, то необходимость защиты становится очень актуальной для разработчиков. Система защиты доступна только при открытой базе данных. Каждому пользователю можно предоставить индивидуальный пароль. Система защиты доступна как с помощью визуальных средств, так и программным путем. Если вы хотите защитить вашу базу данных даже от пользователя с именем Admin, то пользуйтесь услугами настройки Sequrity, которая поставляется вместе с Access Developer Toolkit. Помимо этого вы можете закрыть вашу базу данных от просмотра внешними программами.

Visual Basic

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

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

Основные возможности Visual Basic, применяемые в разработке приложений для обработки информации, могут быть реализованы благодаря наличию в нем объектов для доступа к данным - Data Access Object (DAO), 32-разрядного процессора данных- JET 3.0 и предназначенных специально для работы с данными элементов управления

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

Формат БД процессора данных Visual Basic соответствует формату Access. JET 3.0 также обеспечивает поддержку целостности и проверку вводимых и изменяемых данных на уровне полей и записей. Для изменения данных JET 3.0 позволяет использовать язык SQL.

Управление базой данных обеспечивается процессором данных с помощью объектов для доступа к данным. Эти объекты позволяют разработчику программным путем, с помощью соответствующих свойств и методов DAO, как манипулировать данными так и управлять структурой БД, включая ее создание. По сравнению с предыдущей версией Visual Basic возможности объектов для доступа к данным теперь существенно расширены. В Visual Basic для работы с данными можно применять для работы с данными несколько рабочих областей, поддерживать целостность данных, включая каскадное удаление и обновление, и обеспечивать их защиту от несанкционированного доступа. Кроме этого применение коллекций существенно сокращает программный код.

Уникальным свойством JET 3.0 является возможность создания копий данных (репликации БД). Для создания копий БД разработчику достаточно воспользоваться методом MakeReplica при задании метода Synchronize выполняется согласование данных в обновляемой и оригинальной БД. Причем эти операции могут выполняться как с файлами формата БД процессора данных, так и с БД других форматов, поддерживаемых через ODBC.

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

В Visual Basic Enterprice Edition включены объекты для доступа к внешним данным - Remote Data Object (RDO) и соответствующие элементы управления- Remote Data Control (RDC). Это позволяет, не прибегая к помощи процессора данных JET 3.0, использовать все возможности работы с курсорами на сервере, достигая максимально возможной скорости доступа к данным минимизируя сетевой трафик.

MS SQL Server

Microsoft SQL Server 6.5 - одна из наиболее мощных СУБД архитектуры клиент - сервер. Эта СУБД позволяет удовлетворять такие требования, предъявляемые к системам распределенной обработке данных, как тиражирование данных, параллельная обработка, поддержка больших баз данных на относительно не дорогих аппаратных платформах при сохранении несмежного управления.

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

Сервер имеет средства удаленного администрирования и управления операциями, организованные на базе объектно - ориентированной распределенной среды управления. Microsoft SQL Server 6.5 входит в состав семейства Microsoft BackOffice, объединяющего 5 серверных приложений, разработанных для совместного функционирования в качестве интегрированной системы.

Microsoft SQL Server 6.5 предназначен исключительно для поддержки систем, работающих в среде клиент-сервер. Он поддерживает широкий спектр средств разработки и максимально прост в интеграции с приложениями, работающими на ПК.

Построенная на основе технологических решений, появившихся в Microsoft SQL Server 6.0, версия 6.5 демонстрирует много значительных нововведений. SQL Server 6.5 превосходит предыдущую версию с точки зрения применения многопоточной параллельной архитектуры операционной системы для повышения производительности и масштабируемости, когда на компьютере установлено несколько процессоров.

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

SQL Server может тиражировать информацию в БД иных форматов включая Oracle, BM DB2, Sybase, Microsoft Access и другие СУБД (при наличии ODBC драйвера, отвечающего определенным требованиям).

Хранимые процедуры, поддерживающие OLE Automation, позволяют разработчику применять практически любой инструмент из тех, что поддерживают OLE, в целях создания хранимых процедур для SQL Server. Visual Basic 4.0 поддерживается посредствам новой 32-разрядной DB-Library (OCX). Многочисленные расширения языка Transact-SQL включают расширенную поддержку курсоров, возможность использования команд определения данных внутри транзакций и т.д.

Microsoft SQL Server 6.5 содержит Ассистент администратора. Этот инструмент позволяет назначать основные процедуры сопровождения базы данных и определять для них график выполнения. Операции по сопровождению баз данных включают проверку распределения страниц, целостности указателей в таблицах (включая системные) и индексах, обновления информации, необходимой оптимизатору, реорганизацию страниц в таблицах и индексах, создание страховочных копий таблиц и журналов транзакций. Все эти операции могут быть установлены для автоматического выполнения по заданному администратором графику.

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

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

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

· дополнять или замещать существующие данные;

· уничтожать объекты в базе-приемнике перед копированием схемы;

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

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

· определять момент выполнения переноса объектов: немедленно однократно в определенный момент времени, многократно по определенному графику.

Сервер, который получает объекты, должен быть Microsoft SQL Server версии 6.5.Сервер-источник может быть Microsoft SQL Server версии 4.х или 6.х или сервер Sybase.
SQL Server предоставляет возможность создания страховочных копий и восстановления индивидуальных таблиц. Загрузка таблицы может быть выполнена либо из копии индивидуальной таблицы, либо из копии базы данных. Загрузка индивидуальных таблиц может оказаться хорошим решением при необходимости восстановления данных после сбоя, когда загрузка всей базы данных неэффективна.

Вывод:
На основании проведенного анализа СУБД можно сказать, что:

· Microsoft Access наиболее удобен не только для программиста. Но и для пользователя из-за наличия русифицированного интерфейса.

· Другие СУБД могут найти широкое применение в определенных условиях.

Информационные системы

Теория баз данных

1. Краткая терминология

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

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

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

 

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

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

 

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

Сущность – отображение объекта в памяти компьютера.

Параметр — конкретное значение любого из свойств объекта.

Атрибут — конкретное значение любого из свойств сущности.

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

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

Поле — это один элемент записи, в котором хранится конкретное значение атрибута.

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

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

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

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

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

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

· Родительская сущность.

· Дочерняя (зависимая) сущность.

· Мощность связи — это отношение количества родительских сущностей к соответствующему количеству дочерних сущностей.

Хранимая процедура – это приложение (программа), объединяющая запросы пользователя и процедурную логику и хранящаяся в базе данных.

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

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

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

· правила или ограничения,

· событие, которое требует проверки правил и ограничений,

· предусмотренные действия, которые выполняются с помощью процедуры или последовательности процедур.

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

· отсутствие проверки,

· проверка допустимости,

· запрет операции,

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

· установка пустого (null) значения по умолчанию.

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

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

1.1. ИНФОРМАЦИОННЫЕ МОДЕЛИ

При создании баз данных рассматривают два вида информационных моделей: информационная модель предприятия и информационная модель данных.

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

Информационная модель данных имеет более сложную структуру. Здесь отображаются:

· источники возникновения информации,

· структурные подразделения фирмы, которые создают или используют информацию,

· переходы от одного типа модели к другому,

· подразделения потребителей информации.

Подразделение 1,... Подразделение N — структурные подразделения фирмы. В левой части рисунка эти подразделения выступают как источники концептуальных требований, то есть предоставляют сведения для создания базы данных (рис. 1.1). В верхней части рисунка эти же подразделения выступают как потребители информации и источники данных для базы данных.

Концептуальная модель данных — это совокупность концептуальных требований, выдвинутых сотрудниками структурных подразделений фирмы. В результате отображения концептуальной модели на СУБД будет получена логическая модель данных. В процессе отображения концептуальной модели подбирается такая СУБД, которая в полной мере может удовлетворить требования заказчика. Если по каким-либо причинам выполнить требования заказчика не удается, то разработчик должен предоставить заказчику убедительные аргументы и убедить заказчика снизить концептуальные требования. Процесс согласования концептуальных требований трудоемкая и длительная процедура. После построения логической модели необходимо составить письменный протокол, в котором перечислить все концептуальные требования и операции по обработке информации в базе данных [5].

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

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

1.2. ТИПЫ ЛОГИЧЕСКИХ МОДЕЛЕЙ

Существует три типа логических моделей: иерархическая, сетевая и реляционная.

1.2.1. Иерархическая модель

Модель этого типа жестко структурированная, то есть взаимосвязь между объектами внутри модели подчинена строгому ранжиру (рис. 1.2). Подчинение объектов разделено на уровни. На первом уровне представлен один главный объект, которому подчиняются объекты второго уровня. Причем объект первого уровня не может напрямую управлять объектом третьего уровня. Управление объектом третьего уровня возможно только через объект второго уровня. Также запрещены взаимосвязи на одном уровне.

 

1.2.2. Сетевая модель

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

1.2.3. Реляционная модель

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

Лекция 1 Информационные системы и их классификации




Поделиться с друзьями:


Дата добавления: 2014-01-13; Просмотров: 1412; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.12 сек.