Появление новых или изменение информационных потребностей существующих приложений требуют определения для них корректных внешних моделей, при этом на уровне концептуальной и внутренней модели данных изменений не происходит. Изменения в концептуальной модели, вызванные появлением новых видов данных или изменением и структур, могут затрагивать не все приложения, т.е. обеспечивается определенная независимость программ от данных. Изменения в концептуальной модели должны отражаться и внутренней модели, и при неизменной концептуальной модели возможна самостоятельна модификация внутренней модели БД с целью улучшения ее характеристик (время доступа данным, расхода памяти внешних устройств и др.). Таким образом, БД реализует принцип относительной независимости логической и физической организации данных.
Понятие информационно-логической модели
Проектирование базы данных состоит в построении комплекса взаимосвязанных моделей данных.
Важнейшим этапом проектирования базы данных является разработка инфологической (информационно-логической) модели предметной области, не ориентированной на СУБД. В инфологической модели средствами структур данных в интегрированном виде отражают состав и структуру данных, а также информационные потребности приложение (задач и запросов).
Информационно-логическая (мифологическая) модель предметной области отражает предметную область в виде совокупности информационных объектов и их структурных связей.
Инфологическая модель предметной области строится первой. Предварительная инфологическая модель строится еще на пред проектной стадии и затем уточняется на более поздних стадиях проектирования баз данных. Затем на ее основе строятся концептуальная (логическая), внутренняя (физическая) и внешняя модели.
Обзор СУБД
Системой управления базами данных называют программную систему, предназначенную для создания на ЭВМ общей базы данных, используемой для решения множества задач. Подобные системы служат для поддержания базы данных в актуальном состоянии и обеспечивают эффективный доступ пользователей к содержащимся в ней данным в рамках предоставленных пользователям полномочий.
СУБД предназначена для централизованного управления базой данных в интересах всех работающих в этой системе.
По степени универсальности различают два класса СУБД:
· системы общего назначения;
· специализированные системы.
СУБД общего назначения не ориентированы на какую-либо предметную область или на информационные потребности какой-либо группы пользователей. Каждая система такого рода реализуется как программный продукт, способный функционировать на некоторой модели ЭВМ в определенной операционной системе и поставляется многим пользователям как коммерческое изделие. Такие СУБД обладают средствами настройки на работу с конкретной базой данных. Использование СУБД общего назначения в качестве инструментального средства для создания автоматизированных информационных систем, основанных на технологии баз данных, позволяет существенно сокращать сроки разработки, экономить трудовые ресурсы. Этим СУБД присущи развитые функциональные возможности и даже определенная функциональная избыточность.
Специализированные СУБД создаются в редких случаях при невозможности или нецелесообразности использования СУБД общего назначения.
СУБД общего назначения — это сложные программные комплексы, предназначенные для выполнения всей совокупности функций, связанных с созданием и эксплуатацией базы данных информационной системы.
Рынок программного обеспечения ПК располагает большим числом разнообразных по своим функциональным возможностям коммерческих систем управления базами данных общего назначения, а также средствами их окружения практически для всех массовых моделей машин и для различных операционных систем.
Используемые в настоящее время СУБД обладают средствами обеспечения целостности данных и надежной безопасности, что дает возможность разработчикам гарантировать большую безопасность данных при меньших затратах сил на низкоуровневое программирование. Продукты, функционирующие в среде WINDOWS, выгодно отличаются удобством пользовательского интерфейса и встроенными средствами повышения производительности.
Рассмотрим основные характеристики некоторых СУБД — лидеров на рынке программ, предназначенных как для разработчиков информационных систем, так и для конечных пользователей,
В рассматриваемую группу программных продуктов вошли:
dBASE IV 2.0, компании Borland International;
Microsoft Access 2.0;
Microsoft FoxPro 2.6 for DOS;
Microsoft FoxPro 2.6 for Windows, корпорации Microsoft Corp;
Paradox for DOS 4.5;
Paradox for Windows, версия 4.5 компании Borland.
Производительность СУБД
Производительность СУБД оценивается:
· временем выполнения запросов;
· скоростью поиска информации в неиндексированных полях;
· временем выполнения операций импортирования базы данных из других форматов;
· скоростью создания индексов и выполнения таких массовых операций, как обновление, вставка, удаление данных;
· максимальным числом параллельных обращений к данным в многопользовательском • режиме;
· временем генерации отчета.
На производительность СУБД оказывают влияние два фактора:
· СУБД, которые следят за соблюдением целостности данных, несут дополнительную нагрузку, которую не испытывают другие программы;
· производительность собственных прикладных программ сильно зависит от правильного проектирования и построения базы данных.
Самые быстрые программные изделия отнюдь не обладают самыми развитыми функциональными возможностями на уровне процессора СУБД.
Самой быстрой СУБД является FoxPro 2.6, однако она не обладает средствами соблюдения целостности данных в отличие от более медленной СУБД Access 2.0.
Обеспечение целостности данных на уровне базы данных
Эта характеристика подразумевает наличие средств, позволяющих удостовериться, что информация в базе данных всегда остается корректной и полной. Должны быть установлены правила целостности, и они должны храниться вместе с базой данных и соблюдаться на глобальном уровне. Целостность данных должна обеспечиваться независимо от того, каким образом данные заносятся в память (в интерактивном режиме, посредством импорта или с помощью специальной программы).
К средствам обеспечения целостности данных на уровне СУБД относятся:
• встроенные средства для назначения первичного ключа, в том числе средства для работы с типом полей с автоматическим приращением, когда СУБД самостоятельно присваивает новое уникальное значение;
• средства поддержания ссылочной целостности, которые обеспечивают запись информации о связях таблиц и автоматически пресекают любую операцию, приводящую к нарушению ссылочной целостности.
Некоторые СУБД имеют хорошо разработанный процессор СУБД для реализации таких возможностей, как уникальность первичных ключей, ограничение (пресечение) операций и даже каскадное обновление и удаление информации. В таких системах проверка корректности, назначаемая полю или таблице, будет проводиться всегда после изменения данных, а не только во время ввода информации с помощью экранной формы. Это свойство можно настраивать для каждого поля и для записи в целом, что позволяет контролировать не только значения отдельных полей, но и взаимосвязи между несколькими полями данной записи.
Access и Paradox for Windows гораздо ближе других СУБД соответствуют реляционной модели по надежности сохранения целостности данных на уровне базы данных; правила хранятся вместе с базой данных и автоматически соблюдаются.
СУБД dBASE IV и FoxPro 2.6 (DOS и WINDOWS) совсем не обладают средствами этого рода, и ввод в программу процедур, обеспечивающих выполнение правил целостности, возлагается на программиста.
Обеспечение безопасности
Некоторые СУБД предусматривают средства обеспечения безопасности данных. Такие средства обеспечивают выполнение следующих операций:
• шифрование прикладных программ;
• шифрование данных;
• защиту паролем;
• ограничение уровня доступа (к базе данных, к таблице, к словарю, для пользователя).
Самый высокий уровень безопасности данных реализован в СУБД dBASE IV. Администратор может назначать системе различные права доступа на уровне файла, поля, а также организовать автоматическое шифрование данных.
Хорошими характеристиками обеспечения безопасности отличается Access 2.0. Он предусматривает назначение паролей для индивидуальных пользователей или групп пользователей и присвоение различных прав доступа отдельно таблицам, запросам, отчетам, макрокомандам или новым объектам на уровне пользователя или группы.
Работа в многопользовательских средах
Практически все рассматриваемые СУБД предназначены для работы в многопользовательских средах, но обладают для этого различными возможностями.
Обработка данных в многопользовательских средах .предполагает выполнение программным продуктом следующих функций: :
• блокировку базы данных, файла, записи, поля;
• идентификацию станции, установившей блокировку;
• обновление информации после модификации;
• контроль за временем и повторение обращения;
• обработку транзакций (транзакция — последовательность операций пользователя над базой данных, которая сохраняет ее логическую целостность);
• работу с сетевыми системами (LAN Manager, NetWare, Unix).
Лучшими возможностями для работы в многопользовательских средах обладают СУБД Paradox for DOS 4.5, Access 2.0 и dBASE IV.