Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Проектирование базы данных




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

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

Проектирование баз данных не может быть полностью автоматизированным. Значительное место в нем отводится интуиции и опыту специалиста-проектировщика. Однако за прошедшие десятилетия усилиями многих специалистов были созданы разнообразные CASE-технологии (Computer-Aided Software/System Engineering), позволяющие систематизированным образом поддерживать и автоматизировать разработки сложных систем программного обеспечения, информационных систем и систем баз данных. Сформировался рынок коммерческих инструментальных программных средств CASE, на котором представлен широкий спектр таких инструментов. Они предназначены для создания и поддержки разрабатываемой системы на протяжении всего ее жизненного цикла, т.е. периода от принятия решения о создании системы до снятия ее с эксплуатации, либо только для поддержки отдельных его этапов. Инструментарий CASE базируется на различных разновидностях структурных или объектно-ориентированных методов.

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

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

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

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

· выбор СУБД и других инструментальных программных средств ее реализации;

· логическое проектирование базы данных;

· физическое проектирование базы данных.

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

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

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

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

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

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

Однако в большинстве случаев в реальной практике проектировщики руководствуются лишь собственными интуитивными экспертными оценками требований к выбираемой системе по нескольким важнейшим количественным и качественным характеристикам. К числу таких характеристик относятся:

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

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

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

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

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

· удобство и надежность СУБД в эксплуатации.

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

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

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

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

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

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

Контрольные вопросы по теме.

1.Из каких этапов состоит процесс проектирования базы данных?

2.Каковы задачи этапа концептуального проектирования базы данных?

3.По каким критериям осуществляется выбор СУБД для реализации систем базы данных?

4.В чем заключаются задачи логического проектирования базы данных?

5.Какие задачи решаются на этапе физического проектирования базы данных?

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




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


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


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



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




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