|
Наращивание экономической и статистической информации в двухструктурных реляционных базах данных
Наращивание экономической и статистической информации в двухструктурных реляционных базах данных
1 Наращивание экономической и статистической информации в двухструктурных реляционных базах данных - Введение
- 1. Понятие информационной системы.
- 2. Понятие базы данных.
- 3. Эволюция концепций баз данных
- 4. Требования, которым должна удовлетворять организация базы данных.
- 4.1. Установление многосторонних связей
- 4.2. Производительность
- 4.3. Минимальные затраты
- 4.4. Минимальная избыточность
- 4.5. Возможности поиска
- 4.6. Целостность
- 4.7. Безопасность и секретность
- 4.8. Связь с прошлым
- 4.9. Связь с будущим
- 4.10. Простота использования
- 5. Модели представления данных
- 5.1. Иерархическая модель данных
- 5.2. Сетевая модель данных
- 5.3. Реляционная модель данных
- 5.3.1. Таблицы
- 5.3.2. Ключевые поля
- 5.3.3. Индексы
- 5.3.4. Отношения предок/потомок
- 5.3.5. Внешние ключи
- 5.3.6. Реляционная алгебра
- 5.3.7. Нормализация базы данных
- 5.3.7.1. Первая нормальная форма
- 5.3.7.2. Вторая нормальная форма
- 5.3.7.3. Третья нормальная форма
- 5.3.7.4. Четвертая нормальная форма
- 5.3.7.5. Пятая нормальная форма
- 6. Язык SQL как стандартный язык баз данных.
- 6.1. Язык SQL
- 6.2. Достоинства SQL
- 6.2.1. Независимость от конкретных СУБД
- 6.2.2. Переносимость с одной вычислительной системы на другие
- 6.2.3. Стандарты языка SQL
- 6.2.4. Одобрение SQL компанией IBM (СУБД DB2)
- 6.2.5. Протокол ODBC и компания Microsoft
- 6.2.6. Реляционная основа
- 6.2.7. Высокоуровневая структура, напоминающая английский язык
- 6.2.8. Интерактивные запросы
- 6.2.9. Программный доступ к базе данных
- 6.2.10. Различные представления данных
- 6.2.11. Полноценный язык для работы с базами данных
- 6.2.12. Динамическое определение данных
- 6.2.13. Архитектура клиент/сервер
- 7. Архитектуры баз данных
- 7.1. Локальные базы данных и архитектура "файл-сервер"
- 7.2. Удаленные базы данных и архитектура "клиент-сервер"
- 8. Среда Delphi как средство для разработки СУБД
- 8.1. Высокопроизводительный компилятор в машинный код
- 8.2. Мощный объектно-ориентированный язык
- 8.3. Объектно-ориентированная модель программных компонент
- 8.4. Библиотека визуальных компонент
- 8.5. Формы, модули и метод разработки “Two-Way Tools”
- 8.6. Масштабируемые средства для построения баз данных
- 8.7. Настраиваемая среда разработчика
- 8.8. Незначительные требования к аппаратным средствам
- 9. Проектирование базы данных
- Инфологическая модель данных
- 9.2. Инфологическая модель данных "сущность-связь"
- 9.3. Даталогическая модель данных
- 9.4. Переход от ER - модели к реляционной.
- 9.5. Физическая модель данных
- 9.6. Этапы проектирования базы данных
- 10. Практическая часть
- 10.1. Предметная область и задачи, возложенные на базу данных
- 10.2. Определение объектов базы данных
- 10.3. Инфологическая и даталогическая модели базы данных
- 10.4. Физическое описание модели
- 10.5. Програмная реализация
- Заключение
- Список литературы
ВВЕДЕНИЕ Опыт применения компьютеров для построения прикладных систем обработки данных показывает, что самым эффективным инструментом здесь являются системы управления базами данных (СУБД, англ. DBMS - DataBase Management System ). Потоки информации, циркулирующие в мире, который нас окружает, огромны. Во времени они имеют тенденцию к увеличению. Поэтому в любой организации, как большой, так и маленькой, возникает проблема такой организации управления данными, которая обеспечила бы наиболее эффективную работу. Некоторые организации используют для этого шкафы с папками, но большинство предпочитают компьютеризированные способы - базы данных, позволяющие эф-фективно хранить, структурировать и систематизировать большие объемы дан-ных. И уже сегодня без баз данных невозможно представить работу большинства финансовых, промышленных, торговых и прочих организаций. Не будь баз данных, они бы просто захлебнулись в информационной лавине. Существует много веских причин перевода существующей информации на компьютерную основу. Сейчас стоимость хранения информации в файлах на компьютере дешевле, чем на бумаге. Базы данных позволяют хранить, структурировать информацию и извлекать оптимальным для пользователя образом. Использование клиент/серверных технологий позволяют сберечь значительные средства, а главное и время для получения необходимой информации, а также упрощают доступ и ведение, поскольку они основываются на комплексной обработке данных и централизации их хранения. Кроме того компьютер позволяет хранить любые форматы данных текст, чертежи, данные в рукописной форме, фотографии, записи голоса и т.д. Для использования столь огромных объемов хранимой информации, помимо развития системных устройств, средств передачи данных, памяти необходимы средства обеспечения диалога человек-компьютер, которые позволяют пользователю вводить запросы, читать файлы, модифицировать хранимые данные, добавлять новые данные или принимать решения на основании хранимых данных. Для обеспечения этих функций созданы специализированные средства - системы управления базами данных (СУБД). Современные СУБД - многопользовательские системы управления базой данных, которые специализируется на управлении массивом ин-формации одним или множеством одновременно работающих пользователей. Наращивание экономической и статической информации происходит ежедневно и ежесекундно. Если раньше, в связи с недостаточной компьютеризацией экономики, информации в электронном виде было очень мало, то сегодня это уже обычное дело. В связи с этим возникает новая проблема - поиск и отбор нужной информации среди того океана данных, которые мы можем сегодня наблюдать в Интернете и локальных корпоративных сетях. Поэтому правильная организация наращивания экономической и статической информации для дальнейшего её быстрого извлечения и эффективного использования - очень актуальная тема сегодня. Цель данной дипломной работы - дать оценку новым технологиям организации накопления, сбережения, быстрого поиска, отбора и извлечения информации, которые базируются на реляционной концепции моделей данных, и на конкретном примере показать преимущества одной из рассмотренных технологий. Реализация данной задачи проводится в системе программирования Delphi 5.0, располагающей широкими возможностями по созданию приложений баз данных, необходимым набором драйверов для доступа к самым известным форматам баз данных, удобными и развитыми средствами для доступа к информации, расположенной как на локальном диске, так и на удаленном сервере, а также большим коллекцией визуальных компонент для построения отображаемых на экране окон, что необходимо для создания удобного интерфейса между пользователем и исполняемым кодом. 1. Понятие информационной системыВеками человечество накапливало знания, навыки работы, сведения об окружающем мире, другими словами - собирало информацию. Вначале информация передавалась из поколения в поколение в виде преданий и устных рассказов. Возникновение и развитие книжного дела позволило передавать и хранить информацию в более надежном письменном виде. Открытия в области электричества привели к появлению телеграфа, телефона, радио, телевидения - средств, позволяющих оперативно передавать и накапливать информацию. Развитие прогресса обусловило резкий рост информации, в связи с чем, вопрос о ее сохранении и переработке становился год от года острее. С появлением вычислительной техники значительно упростились способы хранения, а главное, обработки информации. Развитие вычислительной техники на базе микропроцессоров приводит к совершенствованию компьютеров и программного обеспечения. Появляются программы, способные обработать большие потоки информации. С помощью таких программ создаются информационные системы. Целью любой информационной системы является обработка данных об объектах и явлениях реального мира и предоставление человеку нужной информации о них.[11]. Если мы рассмотрим совокупность некоторых объектов, то сможем выделить объекты, обладающие одинаковыми свойствами. Такие объекты выделяют в отдельные классы. Внутри выделенного класса объекты можно упорядочивать как по общим правилам классифицирования, например по алфавиту, так и по некоторым конкретным общим признакам, например по цвету или материалу. Группировка объектов по определенным признакам значительно облегчает поиск и отбор информации. Все эти сведения накапливаются в совокупности файлов называемой базой данных, а для управления этими файлами создаются специальные программы - системы управления базами данных (СУБД).[10]. Информационные системы (ИС) можно условно разделить на фактографические и документальные. В фактографических ИС регистрируются факты - конкретные значения данных (атрибутов) об объектах реального мира. Основная идея таких систем заключается в том, что все сведения об объектах (фамилии людей и названия предметов, числа, даты) сообщаются компьютеру в каком-то заранее обусловленном формате (например дата - в виде комбинации ДД.ММ.ГГГГ). Информация, с которой работает фактографическая ИС, имеет четкую структуру, позволяющую машине отличать одно данное от другого, например фамилию от должности человека, дату рождения от роста и т.п. Поэтому фактографическая система способна давать однозначные ответы на поставленные вопросы. Документальные ИС обслуживают принципиально иной класс задач, которые не предполагают однозначного ответа на поставленный вопрос. Базу данных таких систем образует совокупность неструктурированных текстовых документов (статьи, книги, рефераты и т.д.) и графических объектов, снабженная тем или иным формализованным аппаратом поиска. Цель системы, как правило, - выдать в ответ на запрос пользователя список документов или объектов, в какой-то мере удовлетворяющих сформулированным в запросе условиям. Указанная классификация ИС в известной мере устарела, так как современные фактографические системы часто работают с неструктурированными блоками информации (текстами, графикой, звуком, видео), снабженными структурированными описателями. При известных факторах фактографическая система может превратиться в документальную (и наоборот).[1,11]. Для систем обработки экономической и статистической информации больше подходят фактографические ИС, которые используются буквально во всех сферах человеческой деятельности. 2. Понятие базы данных.Существует хорошо известное, но трудно реализуемое на практике понятие базы данных как большого по объему хранили-ща, в которое организация помещает все необходимые ей данные и из которого различные пользователи могут эти данные получать. Устройства памяти, в которых хранятся все данные, могут быть расположены в одном или нескольких местах; в последнем слу-чае они должны быть связаны средствами передачи данных. К дан-ным должны иметь доступ программы. Действительно, большинство существующих на сегодняшний день баз данных предназначено для ограниченного ряда приложений. Часто на одном компьютере создается несколько баз данных. Со временем базы данных, предназначенные для реализа-ции отдельных родственных функций, можно будет объединить, если такое объединение будет способствовать увеличению эффективности и интенсивности использования всей системы. Базу данных можно определить как совокупность взаимосвя-занных хранящихся вместе данных при наличии такой минималь-ной избыточности, которая допускает их использование оптималь-ным образом для одного или нескольких приложений; данные за-поминаются так, чтобы они были независимы от программ, использующих эти данные; для добавления новых или модифика-ции существующих данных, а также для поиска данных в базе данных применяется общий управляемый способ. [1,12]. Говорят, что система содержит совокупность баз данных, если эти базы дан-ных структурно полностью самостоятельны. В системах с простой организацией данных для каждого при-ложения создается своя совокупность записей. Назначение базы данных заключается в том, чтобы одну и ту же совокупность дан-ных можно было использовать для максимально возможного числа приложений. Исходя из этого, базу данных часто разрабатывают в качестве хранилища такой информации, необходимость в котором возникает в процессе выполнения определенных функ-ций на заводе, правительственном учреждении или какой-либо другой организации. Такая база данных должна обеспечивать возможность не только получения информации, но также постоян-ной ее модификации, необходимой для процессов управления в данной организации, может оказаться, что для получения информации для целей планирования или ответов на вопросы потребу-ется осуществлять поиск в базе данных. Совокупностью данных могут пользоваться несколько ведомств независимо от того, име-ются ли при этом между ними ведомственные барьеры.[12]. База данных может разрабатываться для пакетной обработки данных, обработки в реальном времени или оперативной обработ-ки (в этом случае обработка каждого запроса завершается к определенному моменту времени, но при этом на время обра-ботки не накладывается жестких ограничений, существующих в системах реального времени). Во многих базах данных преду-смотрена совокупность этих методов обработки, а во многих си-стемах с базами данных обслуживание терминалов в реальном времени происходит одновременно с пакетной обработкой данных.[2]. Большая часть дисковых или ленточных библиотек, которые существовали до использования средств управления базами дан-ных, содержали большое количество повторяющейся информации. При запоминании многих элементов данных допускалась избы-точность, так как на носители информации для различных целей записывались одни и те же данные и, кроме того, хранились различные варианты модификаций одних и тех же данных. База данных предоставляет возможность в значительной степени изба-виться от такой избыточности. Базу данных иногда определяют как неизбыточную совокупность элементов данных. Однако в действительности для уменьшения времени доступа к данным или упрощения способов адресации во многих базах данных избыточ-ность в незначительной степени присутствует. Некоторые записи повторяются для того, чтобы обеспечить возможность восстанов-ления данных при их случайной потере. Чтобы база данных была неизбыточной и удовлетворяла другим требованиям, приходится идти на компромисс. В этом случае говорят об управляемой, или минимальной, избыточности или о том, что хорошо разрабо-танная база данных свободна от излишней избыточности. Неуправляемая избыточность имеет несколько недостатков. Во-первых, хранение нескольких копий данных приводит к допол-нительным затратам. Во-вторых, при обновлении, по крайней мере, нескольких избыточных копий необходимо выполнять многократные операции обновления. Из-быточность поэтому обходится значительно дороже в тех случаях, когда при обработке файлов обновляется большое количество ин-формации или, что еще хуже, часто вводятся новые элементы или уничтожаются старые. В-третьих, вследствие того, что различные копии данных могут соответствовать различным стадиям обнов-ления, информация, выдаваемая системой, может быть противо-речивой.[12]. Если не использовать базы данных, то при обработке большого количества информации появится так много избыточных данных, что фактически станет невозможным сохранять их все на одном и том же уровне обновления. Очень часто пользователи обнаружи-вают явные противоречия в данных и поэтому испытывают недо-верие к полученной от компьютера информации. Невозможность хране-ния избыточных данных на одинаковом уровне обновления явля-ется основным препятствием в обработке данных с помощью компьютера. Одной из наиболее важных характеристик большинства баз данных является их постоянное изменение и расширение. По мере добавления новых типов данных или при появлении новых прило-жений должна быть обеспечена возможность быстрого изменения структуры базы данных. Реорганизация базы данных должна осу-ществляться по возможности без перезаписи прикладных про-грамм и в целом вызывать минимальное количество преобразова-ний. Простота изменения базы данных может оказать большое влияние на развитие приложений баз данных в управлении про-изводством.[10]. О независимости данных часто говорят как об одном из основ-ных свойств базы данных. Под этим подразумевается независи-мость данных и использующих их прикладных программ друг от друга в том смысле, что изменение одних не приводит к измене-нию других. В частности, прикладной программист изолирован от влияния изменений данных и их организации, а также от изме-нения характеристик физических устройств, на которых они хра-нятся. В действительности же полностью независимыми данные бывают так же редко, как и полностью неизбыточными. Как мы увидим ниже, независимость данных определяется с различных точек зрения. Сведения, которыми должен располагать програм-мист для доступа к данным, различны для различных баз данных. Тем не менее, независимость данных--это одна из основных причин использования систем управления базами данных. В том случае, когда один набор элементов данных использу-ется для многих приложений, между элементами этого набора устанавливается множество различных взаимосвязей, необходи-мых для соответствующих прикладных программ. Организация базы данных в значительной степени зависит от реализации взаи-мосвязей между элементами данных и записями, а также от того, как и где эти данные хранятся. В базе данных, используемой мно-гими приложениями, должны быть установлены многочисленные промежуточные взаимосвязи между элементами. В этом случае при хранении и использовании данных контролировать их пра-вильность, обеспечивать их защиту и секретность труднее, чем при хранении данных в простых, несвязанных файлах. Что касается обеспечения секретности данных и восстановления их после сбоев, то этот вопрос является очень важным при конструировании баз данных.[8]. В некоторых системах средства управления базами данных применяются для того, чтобы пользователи могли использовать данные таким путем, который не был предусмотрен разработчи-ками системы. Администраторы или сотрудники могут обращаться к вы-числительной системе с вопросами, которые заранее в ней не пре-дусматривались. Наличие этой возможности означает такую орга-низацию данных в системе, при которой доступ к ним можно осу-ществлять по различным путям, причем одни и те же данные могут использоваться для ответов на различные вопросы. Вся существенная информация об объектах запоминается одновременно и полностью, а не только та ее часть, которая необходима для одного приложения. [10]. В настоящее время существуют СУБД, реализующие эти возможности как на уровне локальных баз данных, расположенных на одном диске (Paradox, Dbase), так и промышленных баз данных (Acsess, Oracle, FoxPro). 3. Эволюция концепций баз данныхПонятие база данных появилось в конце 60-х годов. До этого в сфере обработки данных говорили о файлах данных и о наборах данных. До появления компьютеров третьего поколения (первые из них были установлены в 1965 г.) программное обеспечение обработки данных осуществляло в основном операции ввода-вывода. 0б организации данных приходилось заботиться при напи-сании прикладных программ, и делалось это элементарным спо-собом, т. е. данные обычно организовывались в виде простых последовательных файлов на магнитной ленте. Независимость данных отсутствовала. Если организация данных или запоминаю-щие устройства изменялись, прикладной программист должен был соответствующим образом модифицировать программы, заново их компилировать и затем отлаживать. Для того чтобы обновить файл, нужно было записать новый. Старый файл сохранялся и назывался исходным. Предыдущий вариант также сохранялся, а нередко сохранялись и более ранние версии файла. Многие файлы использовались для одного приложения. Для других приложений часто использовали те же самые данные, но обычно в другой форме, с другими полями, и поэтому приходилось из одних и тех же данных создавать различные файлы. Вследствие этого уровень избыточности в системе был очень высок и существовали различные файлы, содержащие одни и те же элементы дан-ных. Иногда использовались файлы с произвольным досту-пом к данным, которые позволяли пользователю получить непосредственный доступ к любой записи в файле вместо того, чтобы последовательно просматривать весь файл. Средства адресации записей обеспечивались прикладным программистом при написа-нии программы. Если изменялись запоминающие устройства, в прикладную программу необходимо было вносить большие изме-нения. На практике изменение запоминающих устройств неизбеж-но. Новая технология привела к значительному уменьшению за-трат на хранение одного бита информации, а размеры файлов сегодня часто превышают по объему использовавшиеся ранее за-поминающие устройства.[7]. Этап 2 (конец 60-х годов) характеризуется изменением по сравнению с этапом 1 как природы файлов, так и устройств, на которых они запоминались. Предпринимается попытка оградить прикладного программиста от влияния изменений в аппаратуре. Программное обеспечение допускает возможность изменения физического расположения данных без изменения при этом их логического представления при условии, что содержимое записей или основная структура файлов не изменяется. Файлы, соответствующие этому этапу развития средств обра-ботки данных, подобно файлам этапа 1, предназначаются для одного приложения или для тесно связанных между собой прило-жений. По мере развития средств обработки коммерческих данных становилось ясно, что прикладные программы желательно сделать независимыми не только от изменений в аппаратных средствах хранения файлов и от увеличения размеров файлов, но также и от добавления к хранимым данным новых полей и новых взаимо-связей.[7]. Известно, что база данных представляет собой постоянно развивающийся объект, который используется возрастающим количеством приложений. К базе данных добавляются новые записи, а в существующие записи включаются новые элементы данных. Структура базы данных будет изменяться с целью повышения эффективности ее функциони-рования и при добавлении новых типов запросов. Пользователи будут изменять требования и модифицировать типы запросов на данные. Структура базы данных является менее статичной, чем файло-вая структура. Элементы хранимых данных и способы их запоми-нания непрерывно изменяются. Если на организацию данных со стороны вычислительной системы накладывается ограничение в виде требования постоянства файловой структуры, то это приво-дит к тому, что в случае ее изменения программисты тратят много времени на модификацию существующих программ, вместо того чтобы заниматься разработкой новых приложений. В одном случае может сообщаться только имя элемента данных или записи, которую он хочет по-лучить. В другом случае (при наличии другого программного обеспечения) он должен был сообщать идентификацию элемента данных и имя набора, в котором этот элемент данных содержится. Добавление новых элементов данных в записи без изменения прикладных программ возможно при том условии, что программ-ное обеспечение связано с данными на уровне элементов данных (полей), а не на уровне записей. Это часто приводит к созданию сложных структур дан-ных. Однако хорошее программное обеспечение баз данных из-бавляет прикладного программиста от трудностей, связанных со сложностью структуры. Независимо от того, каким образом дан-ные организованы на самом деле, прикладной программист дол-жен представлять себе файл в виде сравнительно простой струк-туры, которая спланирована в соответствии с его требованиями. Программное обеспечение баз данных этапа 3 (начало 70-х годов) распо-лагало средствами отображения файловой структуры прикладного программиста в такую физическую структуру данных, которая запоминается на реальном носителе и наоборот. В зависимости от уровня программного обеспече-ния прикладной программист эле-мента данных должен также знать организацию файла данных. В этом случае ему, возможно, придется задать машинный адрес данных. Если отсутствует независимость данных, прикладному программисту необходимо знать точный физический формат запи-си. Самый худший вариант -- это случай, когда программист дол-жен быть «навигатором».[7]. Процесс преобразования обращения прикладного программи-ста к логической записи или к элементам логической записи в машинные обращения к физической записи и ее элементам называется привязкой. Привязка -- это связь физического представле-ния данных с программой, которая эти данные использует. После выполнения процесса привязки программа уже не будет незави-симой от физических данных.[7, 3]. Итак, для 3-го этапа: Различные логические файлы могли быть получены из одних и тех же физических данных. Доступ к одним и тем же данным осуществлялся различными приложениями различными путями, отвечающими требованиям этих приложений. Программное обеспечение содержало средства уменьшения избыточно-сти данных. Элементы данных являлись общими для различных приложений. Физическая структура данных независима от прикладных программ. Ее можно было изменять с целью повышения эффективности базы данных, не вызывая при этом модификации прикладных программ, Данные адресуются на уровне полей или групп. [7]. По мере накопления опыта использования первых систем управления базами данных довольно скоро стало очевидно, что не-обходим дополнительный уровень независимости данных. Общая логическая структура данных, как правило, сложная, и по мере роста базы данных она неизбежно изменяется. Поэтому важно обеспечить возможность изменения общей логической структуры без изменения используемых при этом многочисленных приклад-ных программ. В некоторых системах изменение общей логиче-ской структуры данных составляет форму ее существования, т. е. эта структура находится в состоянии постоянного развития. По-этому требуются два уровня независимости данных. Их называют логической и физической независимостью данных. Логическая независимость данных означает, что общая логи-ческая структура данных может быть изменена без изменения при-кладных программ (изменение, конечно, не должно заключаться в удалении из базы данных таких элементов, которые использу-ются прикладными программами). Физическая независимость данных означает, что физическое расположение и организация данных могут изменяться, не вызы-вая при этом изменений ни общей логической структуры данных, ни прикладных программ.[7, 8, 3]. Этап 4 характеризуется идей логической и физи-ческой независимости данных; логическая структура данных может сильно отличаться от физической структуры данных и от их пред-ставлений в конкретных прикладных программах. Программное обеспечение баз данных будет фактически преобразовывать пред-ставление данных прикладного программиста в общее логическое представление, а затем будет отображать логическое представле-ние в физическое представление данных. Назначение такой структуры обеспечивает максимум свободы в изменении структур данных без переделки при этом выполненной ранее работы по формированию и использованию базы данных. База данных может развиваться без больших затрат на ведение. Средства, предусмотренные для администратора данных, позволяют ему выполнять функции контроллера и обеспечивать сохранность данных. Обеспечиваются эффективные процедуры управления защитой секрет-ности, целостности и безопасности данных. В некоторых системах используются инвертированные файлы, позво-ляющие осуществлять быстрый поиск данных в базе данных. Базы данных конструируются для выдачи ответов на не планируемые заранее информационные запросы. Обеспечиваются средства перемещения данных.[7]. 4. Требования, которым должна удовлетворять организация базы данных.Изучением этого вопроса долгое время занимались различные группы людей в учреждениях, использующих компьютеры, в правитель-ственных комиссиях, на вычислительных центрах коллективного пользования. Комитет CODASYL опубликовал отчеты на эту тему (CODASYL--организация, разработавшая язык КОБОЛ). Организации пользователей IBM SHARE и GUIDE в своем отчете сформулировали требования к системе управления базами дан-ных. Организация ACiM (Association for Computing Machi-nery) также занималась изучением этого вопроса. Ниже перечислены основные требования к организации базы данных. 4.1. Установление многосторонних связейРазличным программистам требуются различные логические файлы. Эти файлы получаются из одной и той же совокупности данных. Между элементами запоминаемых данных могут суще-ствовать различные связи. Некоторые базы данных будут содер-жать сложные переплетения взаимосвязей. Метод организации данных должен быть таким, чтобы обеспечивалась возможность удобного представления этих взаимосвязей и быстрого согласова-ния вносимых в них изменений. Система управления базами дан-ных должна обеспечивать возможность получения требуемых логи-ческих файлов из имеющихся данных и существующих между ними связей. Необходимо, чтобы существовало хотя бы небольшое сходство между представлением логического файла в прикладной программе и способом физического хранения данных.[7, 10, 11]. 4.2. ПроизводительностьБазы данных, специально разработанные для использования их оператором терминала, обеспечивают время ответа, удовлет-ворительное для диалога человека -- терминал. Кроме того, система баз данных должна обеспечивать соответствующую пропуск-ную способность. В системах, рассчитанных на небольшой поток запросов, пропускная способность накладывает незначительные ограничения на структуру базы данных. В системах с большим потоком запросов, например в системах резервирования авиа-билетов, пропускная способность оказывает решающее влияние на выбор организации физического хранения данных. В системах, предназначенных только для пакетной обработки, время ответа не так важно и метод физической организации мо-жет выбираться из условий обеспечения эффективной пакетной обработки.[7, 10, 11]. 4.3. Минимальные затратыДля уменьшения затрат на создание и эксплуатацию базы данных выбираются такие методы организации, которые миними-зируют требования к внешней памяти. При использовании этих методов физическое представление данных в памяти может сильно отличаться от того представления, которое использует прикладной программист. Преобразование одного представления в другое осу-ществляют программное обеспечение либо, если возможно, аппа-ратные или микропрограммные средства. В таких случаях прихо-дится выбирать между затратами на алгоритм преобразования и экономией памяти.[7, 10, 11]. 4.4. Минимальная избыточностьВ системах обработки, существовавших до использования си-стем управления базами данных, информационные фонды облада-ли очень высоким уровнем избыточности. Большинство ленточных библиотек содержало большое количество избыточных данных. Даже при использовании баз данных по мере возрастания инфор-мации, объединяемой в интегрированные базы данных, потен-циальная возможность появления избыточных данных постепенно увеличивается. Избыточные данные дороги в том смысле, что они занимают больше памяти, чем это необходи-мо, и требуют более одной операции обновления. Целью организации базы данных должно быть уничтожение избыточных данных там, где это выгодно, и контроль за теми про-тиворечиями, которые вызываются наличием избыточных данных.[7, 10, 11]. 4.5. Возможности поискаПользователь базы данных может обращаться к ней с самыми различными вопросами по поводу хранимых данных. В большин-стве современных коммерческих приложений типы запросов предо-пределены, и физическая организация данных разрабатывается для их обработки с требуемой скоростью. Возросшие требования к системам заключаются в обеспечении обработки таких запро-сов или формирования таких ответов, которые заранее не запла-нированы. [7, 10, 11]. 4.6. ЦелостностьЕсли база данных содержит данные, используемые многими пользователями, очень важно, чтобы элементы данных и связи между ними не разрушались. Необходимо учитывать возможность возникновения ошибок и различного рода случайных сбоев. Хра-нение данных, их обновление, процедуры включения данных должны быть такими, чтобы система в случае возникновения сбоев могла восстанавливать данные без потерь. Необходимо, чтобы вы-числительная система гарантировала целостность хранимых в ней данных.[7, 10, 11]. 4.7. Безопасность и секретностьДанные в системах баз данных должны храниться в тайне и сохранности. Запоминаемая информация иногда очень важна для использующего ее учреждения. Она не должна быть утеряна или похищена. Для увеличения жизнестойкости информации в базе данных важно защищать ее от аппаратных или программных сбоев, от катастрофических и криминальных ситуаций, от неком-петентного или злонамеренного использования лицами, которые могут ее неправильно употребить. Под безопасностью данных понимают защиту данных от слу-чайного или преднамеренного доступа к ним лиц, не имеющих на это право, от неавторизованной модификации данных или их унич-тожения. Секретность определяют как право отдельных лиц или орга-низаций определять, когда, как и какое количество соответствую-щей информации может быть передано другим лицам или орга-низациям.[7, 10, 11]. 4.8. Связь с прошлымОрганизации, которые в течение какого-то времени эксплуати-руют системы обработки данных, затрачивают значительные сред-ства на написание программ, процедур и организацию хранения данных. В том случае, когда фирма начинает использовать на вычислительной установке новое программное обеспечение управ-ления базами данных, очень важно, чтобы при этом она могла работать с уже существующими на этой установке программами, обрабатываемые данные можно было бы соответствующим образом преобразовывать. Такое условие требует наличия програм-мной и информационной совместимости, и ее отсутствие может стать основным сдерживающим фактором при переходе к новым системам управления базами данных. Важно, однако, чтобы про-блема связи с прошлым не сдерживала развитие средств управ-ления базами данных. [7, 10, 11]. 4.9. Связь с будущимОсобенно важной представляется связь с будущим. В будущем данные и среда их хранения изменятся по многим направлениям. Любая коммерческая организация со временем претерпевает из-менения. Особенно дорогими эти изменения оказываются для пользователей системами обработки данных. Огромные затраты, которые требуются для реализации самых простых изменений, сильно тормозят развитие этих систем. Эти затраты расходуются на преобразование данных, перезапись и отладку прикладных программ, явившихся результатом внесения изменений. Со време-нем число прикладных программ в организации растет, и поэтому перспектива перезаписи всех этих программ кажется нереальной. Одна из самых важных задач при разработке баз данных--запла-нировать базу данных таким образом, чтобы изменения ее можно было выполнять без модификации прикладных программ.[7, 10, 11]. 4.10. Простота использованияСредства, которые используются для представления общего логического описания данных, должны быть простыми и изящны-ми. Интерфейс программного обеспечения должен быть ориентирован на конечного пользователя и учитывать возможность того, что пользователь не имеет необходимой базы знаний по теории баз данных. [7, 10, 11]. 5. Модели представления данныхС ростом популярности СУБД в 70-80-х годах появилось множество различных моделей данных. У каждой из них имелись свои достоинства и недостатки, которые сыграли ключевую роль в развитии реляционной модели данных, появившейся во многом благодаря стремлению упростить и упорядочить первые модели данных. Современные БД основываются на использовании моделей данных (МД), позволяющих описывать объекты предметных областей и взаимосвязи между ними существуют три основные МД и их комбинации, на которых основываются БД: реляционная модель данных (РМД), сетевая модель данных (СМД), иерархическая модель данных (ИМД). Основное различие между этими моделями данных состоит в способах описания взаимодействий между объектами и атрибутами. Взаимосвязь выражает отношение между множествами данных. Используют взаимосвязи "один к одному", "один ко многим" и "многие ко многим". "Один к одному" - это взаимно однозначное соответствие, которое устанавливается между одним объектом и одним атрибутом. "Один ко многим" - это соответствие между одним объектом и многими атрибутами. "Многие ко многим" - это соответствие между многими объектами и многими атрибутами. [10, 11, 12]. Рассмотрим эти модели данных более подробно. 5.1. Иерархическая модель данныхИМД основана на понятии деревьев, состоящих из вершин и ребер. Вершине дерева ставится в соответствие совокупности атрибутов данных, характеризующих некоторый объект. Вершины и ребра дерева как бы образуют иерархическую древовидную структуру, состоящую из n уровней. Первую вершину называют корневой вершиной. Он удовлетворяет условиям: Иерархия начинается с корневой вершины. Каждая вершина соответствует одному или нескольким атрибутам. Hа уровнях с большим номером находятся зависимые вершины. Вершин предшествующего уровня является начальной для новых зависимых вершин. Каждая вершина, находящаяся на уровне i, соединена с одной и только одной вершиной уровня i-1, за исключением корневой вершины.
Страницы: 1, 2, 3, 4
|
|