Базы данных в управлении производственным процессом

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

Рубрика Программирование, компьютеры и кибернетика
Вид лекция
Язык русский
Дата добавления 14.08.2013
Размер файла 950,4 K

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

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

Размещено на http://www.allbest.ru/

Базы данных в управлении производственным процессом

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

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

Введение в базы данных

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

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

Чтобы понять движущую идею проектирования баз данных, необходимо уяснить различие между неупорядоченными данными и упорядоченными, структурированными данными. Неупорядоченные данные - это "сырье", необработанные сведения.

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

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

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

Как правило, эффективное управление данными предполагает использование компьютерных баз данных. База данных - это интегрированная компьютерная структура совместного доступа, в которой размещаются следующие сведения:

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

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

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

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

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

каковы результаты испытаний за последние несколько лет;

в скольких из них было превышение нормативных значений;

как диагностические признаки соотносятся с дефектами.

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

Рис. 1 иллюстрирует роль СУБД при взаимодействии между пользователем и базой данных. В сущности СУБД играет роль посредника между пользователем и БД, транслируя запросы пользователя в сложный код, необходимый для выполнения таких запросов. СУБД скрывает от прикладных программ, использующих БД, ее сложную внутреннюю структуру. Прикладные программы могут быть написаны программистом на каком-либо языке программирования (например, на VB) или созданы с помощью сервисных программ СУБД.

Рис. 1 СУБД управляет взаимодействием между конечным пользователем и БД

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

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

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

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

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

Прародителем БД была система файлов, которая фактически является электронным хранилищем данных, аналогичным традиционному хранению документов.

У системы файлов, так же как и у традиционного хранения документов в папках, имеются следующие недостатки.

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

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

Даже изменение свойств данных файла, например, изменение типа поля с integer (целое) на decimal (десятичное) потребует изменений во всех программах, использующих этот файл. Поскольку необходимо поменять все программы доступа к данным при любых изменениях характеристик данных файла, говорят, что система файлов обладает зависимостью по данным (data dependence).

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

Если в файловой системе возникли трудности с обработкой данных, то весьма вероятно, что в различных местах хранятся одинаковые данные. Если же они встречаются в нескольких местах, то имеет место избыточность данных.

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

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

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

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

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

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

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

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

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

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

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

Системное программное обеспечение управляет всеми компонентами оборудования и обеспечивает доступ к нему всем другим приложениям, работающим на компьютере. Примеры системного программного обеспечения: DOS, OS/2, операционные системы семейства Windows, UNIX.

Программное обеспечение СУБД управляет базой данных. Примерами СУБД являются приложения Access и SQL Server корпорации Microsoft, Oracle корпорации Oracle и DB2 фирмы IBM.

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

¦ Люди. Сюда относятся все пользователи системы базы данных.

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

Члены каждой группы выполняют не только свои основные, но и различные дополнительные функции.

Системные администраторы наблюдают за основными операциями системы.

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

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

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

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

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

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

Данные. Под термином "данные", "информация" или "сведения" понимается весь фактический материал, хранящийся в базе данных.

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

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

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

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

Типы систем управления базами данных

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

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

Возможно, классификация СУБД по способу применения и сфере использования базы данных является самым распространенным и общепризнанным способом. СУБД, которые управляют работой баз данных, спроектированных для транзакций "немедленного отклика", называются транзакционными СУ БД или рабочими СУБД1. В отличие от них база данных поддержки решений предназначена в основном для получения необходимой информации при выработке стратегических или тактических решений на уровне среднего и высшего руководства предприятия. Поддержка решений, обеспечиваемая системой поддержки решений, как правило, требует широкомасштабной обработки данных (манипулирования данными) для извлечения полезной информации из данных, полученных за некоторый длительный промежуток времени, с тем, чтобы принять верное решение. Поскольку основная часть информации извлекается из накопленных за некоторое время сведений, фактор времени, затраченного на получение данных в такой системе, не имеет столь существенного значения, как в транзакционных базах данных. К тому же информация таких систем, как правило, базируется на большом объеме данных, полученных из различных источников. Чтобы облегчить поиск в этом море информации, структура базы данных DSS несколько отличается от структуры транзакционных БД. На самом деле для обозначения таких баз данных используется термин хранилище данных или банк данных.

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

Предназначение СУБД

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

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

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

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

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

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

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

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

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

Языки доступа к данным и интерфейсы прикладного программирования. СУБД обеспечивает доступ к данным с помощью языка запросов. Язык запросов это не процедурный язык, т.е. он предоставляет пользователю возможность определять, что необходимо выполнить, без необходимости указывать, как это нужно выполнять. В состав языка запросов СУБД входят два основных компонента: язык определения данных (data definition language, DDL) и язык манипулирования данными (data manipulation language, DML). DDL определяет структуры, в которых размещаются данные, a DML позволяет конечным пользователям извлекать данные из БД. СУБД также предоставляет программистам доступ к данным из процедурных языков третьего поколения (3GL), таких как С, PASCAL, Visual Basic и др. В составе СУБД имеются административные утилиты, предназначенные для администраторов базы данных (DBA) и проектировщиков БД, для внедрения, текущего контроля и обслуживания базы данных.

¦ Интерфейсы взаимодействия с базой данных. Текущее поколение СУБД обеспечивает специальные программы взаимодействия, разработанные для того, чтобы БД могла принимать запросы конечных пользователей в сетевом окружении. Фактически возможности взаимодействия с базой данных являются неотъемлемой составляющей современных СУБД. Например, СУБД предоставляет функции взаимодействия для получения доступа к базе данных, используя в качестве внешнего интерфейса Интернет-браузер (такой как Netscape или Internet Explorer). В подобной среде взаимодействие может осуществляться несколькими способами:

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

с помощью СУБД можно автоматизировать публикацию форм отчетов в Интернете с помощью Web-форматирования, что позволяет просматривать их с помощью любого браузера;

с помощью СУБД можно подключаться к независимым системам для распространения информации по электронной почте (e-mail) или с помощью других приложений, например, Lotus Notes.

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

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

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

Модели баз данных

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

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

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

¦ основное внимание уделяется тому, что представлено в БД, а не как это, представлено. К концептуальным моделям относятся модель "сущность - связь" (ER-модель), и объектно-ориентированная модель.

¦ В отличие от концептуальной модели, модель реализации ставит во главу угла способ представления данных в БД или то, как реализовать структуры данных, чтобы получить представление о том, что мы моделируем. К моделям реализации БД относятся иерархическая модель, сетевая модель, реляционная модель и объектно-ориентированная модель.

Разработчики баз данных берут концептуальную модель за основу для проектирования БД. В концептуальной модели используются три типа связей для описания отношений между данными: один-ко-многим, многие-ко-ногим и один-к-одному. Проектировщики баз данных обычно используют для этого сокращенные обозначения - 1: М, M: N и 1: 1 соответственно (хотя стандартным обозначением для связи "многие-ко-многим" является M: N, можно использовать и обозначение М: М). Следующие примеры показывают, в чем состоит разница между этими связями.

¦ Один-ко-многим. Специалист химической лаборатории может выполнить много различных испытаний, но каждое из них выполнено одним специалистом. Следовательно, специалист ("один") связан с испытаниями ("многие"). Поэтому проектировщик баз данных обозначает связь "СПЕЦИАЛИСТ выполняет ИСПЫТАНИЕ" как 1: М.

¦ Многие-ко-многим. Студент может изучать несколько предметов, ли на занятиях по каждому предмету может быть много студентов, поэтому связь "СТУДЕНТЫ изучают ПРЕДМЕТ" следует обозначить как M: N.

¦ Один-к-одному. Трансформатор устроен так, что содержит только одно устройство регулирования под нагрузкой (РПН), соответственно одно РПН соотносится только с одним трансформатором. Поэтому связь "ТРАНСФОРМАТОР содержит РПН" обозначается как 1: 1.

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

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

В связи со значительным усложнением приложений появились две новые модели данных: объектно-ориентированная модель (OODM) и расширенная реляционная модель данных (Extended Relational Data Model - ERDM). Модель ERDM вышла победителем в соревновании этих двух моделей по признанию многих исследователей баз данных и стала ответом на вызов, сделанный приверженцами объектно-ориентированной модели. Эта модель включила в себя основные достоинства объектно-ориентированной модели, унаследовав простоту структуры реляционных баз данных. Вот почему СУБД, основанные на ERDM, часто называют объектно-реляционными системами управления базой данных (ОРСУБД). Принимая во внимание огромное количество установленных реляционных баз и появление ERDM, объектно-ориентированная модель встретила сильное сопротивление. Однако идеи объектно-ориентированной модели стали основой многих систем анализа баз данных и процедур проектирования. Вдобавок объектно-ориентированный подход используется во многих генераторах приложений и других инструментальных средствах.

Рис. 2 Эволюция моделей данных

Модель ERDM в основном приспособлена для бизнес-приложений, в то время как OODM используется в весьма специальных инженерных и научных приложениях. Наиболее вероятным сценарием завершения борьбы двух подходов представляется вариант постепенного слияния объектно-ориентированных и реляционных концепций, а также связанных с ними процедур.

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

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

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

Устойчивость и целостность любых моделей данных должны быть согласованы с представлением о преобразованиях в реальном мире.

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

Таблица 1. Свойства моделей данных

Модель базы данных

Независимость по данным

Структурная независимость

Преимущества

Недостатки

Иерархическая

Да

Нет

Обеспечивает совместное использование данных Концептуальная простота обеспечивается отношениями предок/ потомок Целостность базы данных обеспечивается отношениями предок/потомок Эффективная работа с постоянными связями 1: М

Навигационная система усложняет проектирование, внедрение, разработку приложений и использование

Ограничения в реализации (отсутствие связей M: N и связей с несколькими предками)

Отсутствие в СУБД языка определения данных или языка манипулирования данными

Отсутствие стандартизации

Сетевая

Да

Нет

Концептуальная простота, сравнимая с иерархической моделью Обработка большего числа типов связей, таких как M: N и связей со многими предками Отношения владелец/член обеспечивают целостность базы данных Стандартизация В СУБД включены язык определения данных и язык манипулирования данными

Сложность системы снижает ее эффективность

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

Реляционная

Да

Да

Табличное представление существенно улучшает концептуальную простоту, 'прощая проектирование, внедрение, управление и использование БД

Возможность обработки нерегламентированных запросов на основе SQL

Мощная РСУБД упрощает реализацию и внедрение

Мощная РСУБД предъявляет повышенные требования к оборудованию и системному программному обеспечению

Концептуальная простота допускает возможность использования системы слабо подготовленным пользователем

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

С'ущность-свячь (KR-модель)

Да

Да

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

Недостаточные возможности представления ограничений и связей

Отсутствие языка манипулирования данными

Недостаток семантического наполнения, поскольку атрибуты обычно удаляются, чтобы избежать избыточной информации на ER-диаграмме

Объекгно-ориенти-рованная

Да

Да

Добавляет семантическое наполнение В визуальное представление включается семантическое наполнение Наследование обеспечивает целостность базы данных

Недостаточная стандартизация

Сложная навигационная система доступа к данным Сложность обучения

Повышенные требования к системе приводят в общем случае к замедлению выполнения транзакций

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


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

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

    реферат [1,9 M], добавлен 27.12.2013

  • Классификация баз данных. Выбор системы управления базами данных для создания базы данных в сети. Быстрый доступ и получение конкретной информации по функциям. Распределение функций при работе с базой данных. Основные особенности иерархической модели.

    отчет по практике [1,2 M], добавлен 08.10.2014

  • Процессы обработки информации. Эффективность автоматизированной информационной системы. Система управления базой данных. Локальная и распределенная система банков и баз данных. Этапы проектирования базы данных. Различие уровней представления данных.

    контрольная работа [75,7 K], добавлен 07.07.2015

  • Формы представляемой информации. Основные типы используемой модели данных. Уровни информационных процессов. Поиск информации и поиск данных. Сетевое хранилище данных. Проблемы разработки и сопровождения хранилищ данных. Технологии обработки данных.

    лекция [15,5 K], добавлен 19.08.2013

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

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

  • Система управления базой данных (СУБД), централизованное обеспечение безопасности и целостности данных, защита от несанкционированного доступа. Построение концептуальной и реляционной моделей. Процесс нормализации. Проектирование базы данных в ACCESS.

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

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

    курсовая работа [50,0 K], добавлен 22.02.2011

  • Понятие базы данных, модели данных. Классификация баз данных. Системы управления базами данных. Этапы, подходы к проектированию базы данных. Разработка базы данных, которая позволит автоматизировать ведение документации, необходимой для деятельности ДЮСШ.

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

  • Появление системы управления базами данных. Этапы проектирования базы данных "Строительная фирма". Инфологическая и даталогическая модель данных. Требования к информационной и программной совместимости для работы с базой данных "Строительная фирма".

    курсовая работа [93,0 K], добавлен 31.03.2010

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

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

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