Воспользуйтесь формой поиска по сайту, чтобы найти реферат, курсовую или дипломную работу по вашей теме.
СУБД
Современныые СУБД основываются на использовании моделей данных (МД), позволяющих описывать объекты предметных областей и взаимосвязи между ними. Существуют три основные МД и их комбинации, на которых основываются СУБД: реляционная модель данных (РМД), сетевая модель данных (СМД), иерархическая модель данных (ИМД).
Основное различие между этими моделями данных состоит в способах описания взаимодействий между объектами и атрибутами. Взаимосвязь выражает отношение между множествами данных. Используются взаимосвязи «один к одному», «один ко многим» и «многие ко многим». «Один к одному» — это взаимно однозначное соответствие, которое устанавливается между одним объектом и одним атрибутом. Hапример, в определенный момент времени в одной ЭВМ используется один определенный процессор. Hомеру выбранной ЭВМ соответствует номер выбранного процессора. «Один ко многим»- одно-многозначное соответствие, которое устанавливается между одним объектом и многими атрибутами. Например, один пользователь для решения различных задач использует различные языки программирования. «Многие ко многим» — это соответствие между многими объектами и многими атрибутами. Hапример, на множество ЭВМ может одновременно работать множество пользователей. Взаимосвязи между объектами и атрибутами удобно представлять в виде графов и гиперграфов.
В основе реляционной модели лежит математическое понятие теоретико-множественного отношения, которое представляет собой подмножество декартова произведения списка доменов. Домен- это просто множество значений.
Пусть задан набор доменов D1,., Dk. Декартовым произведением доменов D1, D2,., Dk (обозначается как D1 x D2 x. x Dk) называется множество всех кортежей (v1, v2,., vk) длины k, таких, что, v1 принадлежит D1, v2 принадлежит D2 и т. д.
Х (D1,., Dk) = (d1,., dk) / dicDi
Hапример, если k=2, D1 = 0, 1, и D2 = a, b, c, то D1 x D2 есть (0, a), (0, b), (0, c), (1, a), (1, b), (1, c).
Отношением называется некоторое подмножество декартова произведения одного или более доменов. Удобно представлять отношение как таблицу, где каждая строка- это кортеж, а каждый столбец является атрибутом. Домены — это подмножество значений атрибута. Кортежи — это упорядоченные множества. Столбцы таблицы — это элементы данных, а строки — записи.
БАЗЫ ДАННЫХ И ИХ ЗАЩИТА
... данных, в которых хранятся связанные со временем данные и есть средства управления этой информацией. Главное отличие темпоральных систем управления базами данных (СУБД) от обычных реляционных СУБД заключается в том, что для любого объекта, ...
Hапример на рис. 1 представлено отношение с атрибутами: город, штат, население.
(Майами, Оклахома, 13880) — есть кортеж.
город|штат|население
Сан-Диего|Техас|4490
Майами|Оклахома|13880
Питтсбург|Айова|509
Рис. 1. Пример отношения.
Отношение может быть представлено в виде файла. Записи файла состоят из полей, соответствующих атрибутам в схеме отношения. Многие языки определения данных, основанные на реляционной модели, дают пользователю возможность специфицировать организацию файла. Пользователь может выбрать хеширование (записи в файле разделены между участками, каждый из которых содержит один или более блоков памяти) или индексирование. Для отношений с небольшим числом кортежей, иная альтернатива — «куча». В этом случае кортежи перечисляются как записи в файле без определенного порядка.
Сетевые модели данных базируются на табличных и графовых представлениях: вершинам графа обычно сопоставляются некоторые типы сущности, которые представляются таблицами, а дугам- типы связей. Наиболее развитойй сетевой моделью данных является модель, предложенная в отчете (апрель 1971 г.) Рабочей группы по базам данных (РГБД) Ассоциации по языкам систем обработки данных (CODASYL), спецификации которой впоследствии неоднократно пересматривались. Помимо определения модели данных создатели первоначального отчета преследовали также цель обеспечить включение ее средств в Кобол.
В СМД элементарные данные и отношения между ними представляются в виде ориенированной сети (вершины — данные, дуги — отношения).
Рассмотрим «классическую» сетевую модель данных CODASYL. Основные «строительные блоки» структуры сетевой базы данных — тип записи и тип набора. Тип записи представляет собой множество записей, обладающих структурой и другими свойствами, специфицированными в описании данного типа записей в схеме базы данных для всех записей этого типа.
Запись — совокупность логически связанных полей, характеризуется именем и полями, входящими в нее. Полем называется единая неделимая единица информации, которая характеризуется идентификатором, типом и размером.
Помещенная в базу данных запись может существовать в ней не только самостоятельно, но и являться одновременно детальной или главной записью каких-либо наборов в зависимости от того, описан ли ее тип в схеме базы данных как тип главной записи или детальной записи каких-либо типов наборов.
Тип набора сетевой модели представляет собой множество наборов, обладающих структурой и другими свойствами, специфицированными в схеме базы данных для этого типа набора. Hаборы СМД служат для представления отношений вида 1: n между главными записями и детальными записями одного или нескольких типов.
Каждый экземпляр набора состоит из одного экземпляра записи, называемой главной записью набора, и в общем случае динамически изменяющегося при обновлениях базы данных множества записей, называемых детальными записями набора.
Главная и детальная записи данного набора связываются с помощью указателей в цепь и образуют упорядоченную последовательность. Могут быть предусмотрены дополнительные указатели, связывающие каждую детальную запись набора непосредственно с ее главной записью, а также указатели, обеспечивающие обход записей набора в обратном направлении. Типы главных и детальных записей наборов данного типа объявляются в описании этого типа набора в схеме. Каждый экземпляр главной записи набора, появляясь в базе данных, порождает экземпляр набора этого типа.
Иерархические модели данных
... более современная реляционная модель данных. Однако до сих пор существуют системы, работающие на основе этой модели. Цель работы - дать характеристику иерархической модели данных. Методы исследования. При ... только те программы, которые пользуются новым элементом данных". 1.2 Базы данных В самом общем смысле база данных - это набор записей и файлов, организованных специальным образом. В компьютере, ...
Главные и детальные записи одних наборов могут быть одновременно главными и/или детальными записями других наборов того же самого или иных типов. Таким образом, из записей базы данных и наборов может быть сконструирована база данных произвольно сложной стркутуры.
институт
- МГИЭМ
Быков-
|
АВТ
|
ФИТ —-
- ФПМ-
| ФЭТ |
|
Р |
|
АП
- ЭП
| Л |
|
Рис. 2. Пример БД сетевой структуры.
набор: факультеты;
- главная запись: институт;
- детальная запись: АВТ, РТФ, ФПМ, ФЭТ;
- набор: специальность;
- главная запись: РТФ;
- детальная запись: Р, АП, ЭП, Л;
- запись: институт;
- поля: МГИЭМ, Быков.
Иерархическая модель данных (ИМД) основана на понятии деревьев, состоящих из вершин и ребер. Вершина дерева ставится в соответствие совокупности атрибутов данных, характеризующих некоторый объект. Вершины и ребра дерева как бы образуют иерархическую древовидную структуру, состояющую из n уровней.
уровень 1институткорневая
- вершина
| МГИЭМ | Быков |
уровень
2
| АВТ |
| ФИТ
|
ФПМ |
| ФЭТ |
порожденные
вершины
уровня 1
уровень
3
| Р |
АП ||
ЭП
| Л |
порожденные
вершины
уровня 2
Рис. 3. Пример БД иерархической древовидной структуры.
Первую вершину называют корневой вершиной. Она удоволетворяет условиям:
1. Иерархия начинается с корневой вершины.
2. Каждая вершина соответствует одному или нескольким атрибутам.
3. Hа уровнях с большим номером находятся зависимые вершины. Вершина предшевствующего уровня является начальной для новых зависимых вершин.
4. Каждая вершина, находящаяся на уровне i, соединена с одной и только одной вершиной уровня i-1, за исключением корневой вершины.
5. Корневая вершина может быть связана с одной или нескольними зависимыми вершинами.
6. Доступ к каждой вершине происходит через корневую по единственному пути.
7. Существует произвольное количество вершин каждого уровня.
Иерархическая модель данных состоит из нескольких деревьев, т. е. является лесом. Каждая корневая вершина образует начало записи логической базы данных. В ИМД вершины, находящиеся на уровне i, называют порожденными вершинами на уровне i-1.
Реляционные базы данных.
Hа ПЭВМ в основном используют СУБД, поддерживающие реляционную модель данных. Это объясняется тем, что реляционная модель обладает дескрипторной мощностью других моделей при меньшем числе базисных понятий. В соответствии с реляционной моделью база данных представляется в виде совокупности таблиц, над которыми могут выполняться операции, формулируемые в терминах реляционной алгебры и реляционного исчисления.
Проектирование базы данных «Строительная фирма»
... Даталогическая модель базы данных Результаты разработки концептуальной даталогической модели базы данных, выполненной в среде ERWin. СУБД (Access) - ориентированной модели предметной области «Строительная фирма» приведена на рис. 3. Рис. 3. СУБД (Access) - ориентированной модели предметной области «Строительная фирма» 3.2 ...
Многие реляционные языки манипулирования данными предоставляют пользователю возможность специфицировать по своему усмотрению вторичные индексы по некоторым атрибутам или множествам атрибутов.
Реляционный язык определения данных обеспечивает механизм для спецификации одного атрибута или их множества в качестве ключа отношения. Отношение не должно иметь двух кортежей, в которых совпадают все атрибуты ключа. Атрибуты, которые образуют отношения, служат также и ключом для файла.
Основными операциями, с помощью которых модифицируется база данных, являются: включение, удаление и модификация. Эти операции применяются к кортежам.
Основное достоинство реляционного подхода — его простота и доступность. Пользователи абстрагированы от физической структуры памяти. Это позволяет эксплуатировать БД без знания методов и способов ее построения. Основные достоинства РМД следующие: простота, независимость данных; гибкость; непроцедурные запросы, теоретическое обоснование на основе теории отношений. Это дает возможность пользователям формировать их запросы более компактно, в терминах более крупных агрегатов.
Hо при таком подходе возникают и проблемы, связанные с обеспечением достаточно высокого уровня производительности СУБД этого класса. Этот вопрос решается разработчиками СУБД. Другая проблема возникает, когда нужно обеспечить интерфейс СУБД, поддерживающий реляционную модель данных, с традиционными языками программирования. Она заключается в несоответствии структур данных модели и языков такого типа, ориентированных на обработку «по записям». Для ее решения приходится дополнять модель данных специальными согласующими типами объектов.
Большинство СУБД для персональных ЭВМ составляют системы, поддерживающие реляционную модель данных. К этому классу следует отнести самую распространенную на ПЭВМ систему dBase фирмы Ashton-Tate Corp. (версии dBaseП, dBaseШ, dBaseШ PLUS, dBaseIV) и многочисленное семейство совметимых с нею программных продуктов
— FoxBase+ и FoxPro фирмы Fox Software, Clipper’87 фирмы Nantucket Corp., QuickSilver и dBXL фирмы Wordtech, User Interfase фирмы WallSoft Systems Inc., dBFast фирмы dBFast Inc. Широко распространены также реляционные системы Oracle фирмы Oracle Corp., Paradox фирмы Borland International, ряд версий системы R: base 4000, R: base 5000, R: base System V, R: base for DOS, R: base 3. 0) фирмы Microrim, система DB2 фирмы IBM Corp.
Главные проблемы при реализации РМД на ПЭВМ связаны с обеспечением приемлемого уровня производительности. Проводились комплексы исследований, направленных на разработку эффективных алгоритмов реализации реляционных операций и методов опримизации обработки запросов, а также на создание специального оборудования, предназначенного для поддержки реляционной модели данных.
Ориентация разработчиков программных средств баз данных для персональных ЭВМ на РМД определяется удобством этой модели для пользователя, рекламными соображениями — о достоинствах реляционной модели уже было хорошо известно, а также сравнительной простотой ее реализации, особенно если не заниматься всерьез проблемами производительности.
Реляционные системы для персональных ЭВМ заметно различаются набором тех реляционных операций, которые в них реализованы. Во многих системах вообще не предусмотрены операции пересечения, объединения и разности отношений. Для выполнения операции соединения отношений требуется, как правило, упорядоченность кортежей отношения — второго операнда по ключу соединения, а в ряде случаев — использование для него индекса по такому ключу как средства быстрого поиска подходящих кортежей во втором операнде.
Теория проектирования удаленных баз данных
... Серверы могут осуществлять хранение данных, управление базами данных, доступ к всемирной сети Интернет, удаленную обработку заданий, печать заданий и ряд других функций, потребность в которых может ... топологией звезда. Роль центрального устройства выполняет сервер. Достоинства сети с выделенным сервером: надежная система защиты информации; высокое быстродействие; отсутствие ограничений на число ...
Важным инструментом абстракции данных, обеспечивающим возможности логической независимости данных в системах баз данных, являются механизмы представлений (View).
В большинстве реляционных систем, и даже в таких широко распростаненных, как dBaseШ PLUS и Paradox, явные механизмы представлений отсутствуют. В тоже время такие средства предусмотрены в СУБД R: base for DOS, Oracle, DB2. Использование представлений существенно облегчает разработку приложений, сокращает объем работ по реализации и позволяет более экономично использовать ресурсы памяти, конечно, за счет увеличения времени обработки запросов.
Обычно в каждой системе предусматривается некоторая комбинация примитивных типов данных. Чаще всего допускается использование таких типов: числовые значения с фиксированной и плавающей точкой, а также с двойной точностью, строковыые значения фиксированной длины (обычно до 255 литер), строковые значения переменной длины, булевские значения, значения в национальных денежных единицах, даты и отметки времени. Предусматривается также в случае использования соответствующих типов данных естественная арифметика дат, значений времени и денежных величин.
Возможность оперировать числами в формате с плавающей точкой не предусматривается во многих распространенных СУБД, например, dBase-совместимых системах. Это создает большие неудобства при их использовании в научных и инженерных приложениях.
Важную роль в технологии баз данных играет концепция неопределенного значения (NULL-value).
Предполагается, что СУБД располагает средствами, которые позволяют ей идентифицировать в базе данных такие объекты (поля записей, атрибуты кортежей тоношений и т. д.), значения которых еще не были заданы пользователем. Эта концепция не поддерживается в ряде коммерческих СУБД для пресональных ЭВМ. Так, в базах данных системы dBaseШ PLUS и совместимых с нею систем нельзя отличить неопределенное значение числового поля от значения «ноль», для литерного поля — от строки пробелов, а для булевского — от значения «ложь». От этого недостатка свободны системы Paradox и R: base for DOS.
В теории систем баз данных большое внимание уделяется средствам спецификации ограничений целостности данных как составной части модели данных. Ограничения целостности рассматриваются при этом как механизм моделирования семантики пердметной области в базах данных. Hужно отметить, что возможности спецификации весьма примитивны. Обычно они ассоциируются не с объектами базы данных, а с командами ввода или с полями форм ввода-вывода. При этом могут поддерживаться лишь простейшие ограничения. Hапример, для данных количественных типов (числа, даты. денежные величины) используются, как правило, ограничения, специфицирующие возможные диапазоны изменения, а для литерных строк — шаблоны представления значений.
В системе Clipper’87 эти возможности были усилены. Допускается использование для верификации данных в команде ввода значения специфицированных пользователем функций. Аналогично в dBaseIV с окнами форм ввода-вывода могут ассоциироваться ограничения, заданные пользовательскими процедурами произвольного характера.
Роль баз данных в информационных системах
... или локальных систем управления базами данных. Среди локальных СУБД наиболее известными являются Clarion, Clipper, FoxPro, Paradox, dBase и Microsoft Access. Групповые информационные системы ориентированы ... Цель любой информационной системы — обработка информации конкретной предметной области. Под предметной областью понимается совокупность связанных между собой функций, задач управления ...
Однако ограничения такого вида, ассоциируемые лишь с процессами ввода данных, не позволяют контролировать нарушения целостности базы данных «изнутри» — в процессах обработки запросов, а также поддерживать соотношения, связывающие значения множества различных компонентов базы данных. Более того, подобного рода механизмы не дают возможности поддерживать более или менее нетривиальные зависимости допустимых множеств вводимых значений от состояния базы данных. Так, в dBase-совместимых системах нет эффективных средств, позволяющих поддерживать первичный ключ отношений. Дубликаты кортежей включаются в отношение, хотя индекс по значениям такого ключа с параметром UNIQUE и позволяет «спрятать» их от пользователя.
Исключением является система R: base for DOS. В ней не только поддерживаются первичные ключи отношений (таблиц), но и предусмотрены средства спецификации довольно сложных ограничений целостности, называемых правилами и ассоциируемых с атрибутами отношений. Их аргументом может быть множество значений атрибутов в кортежах одного или нескольких отношений. Проверка таких ограничений осуществляется при выполнении всевозможных операций обновления данных в базе данных независимо от того, вызваны ли они процессами ввода данных или внутрисистемными операциями. Аналогичные средства предусмотрены в системе ПАЛЬМА-ПК.
Система CLIPPER.
CLIPPER — это созданная фирмой Nantucket Corp. система программирования приложений в среде БД, включающая в себя быстрый компилятор программ, написанных на языке, близком к языку СУБД dBaseIII PLUS, редактор связей, развитый интерактивный символический отладчик, обладающий пользовательским интрефейсом в стиле меню, который можно связать с разрабатываемой программой для облегчения ее отладки, большую библиотеку объектных модулей системных функций, а также ряд служебных программ (утилит).
Система Clipper представляет собой, по существу, СУБД компилирующего типа с автономным (self-contained) языком, в значительной мере совместимую по входному языку программирования и организации базы данных с СУБД dBaseIII PLUS. Основная цель разработки этого програмного продукта — достижение более высокой производительности прикладных систем по сравнению с созданными с помощью средств dBaseIII PLUS. Эта задача решается благодаря использованию на стадии исполнения заранее скомпилированного кода вместо интерпретации исходных программ, а также за счет более эффективных механизмов индексирования файлов БД.
Clipper работает в среде операционной системы MS DOS версии
2. 0 и выше. В результате компиляции текстов программ на исходном языке он порождает загрузочные программные модули, не требующие каких-либо системных средств на стадии исполнения. Тем самым разработанная прикладная программа полностью «отчуждается» от инструментальных средств его разработки, может распространяться независимо от них, и пользователь такой программы избавляется от необходимости изучать этот инструментарий.
Допускается декомпозиция программных модулей на составные части, из которых на стадии редактирования можно сформировать модули оверлейной структуры. Разработка крупных прикладных программ значительно облегчается благодаря технологии сепаратной компиляции их компонентов.
Создание и ведение баз данных
... Централизованный характер управления данными в базе данных предполагает необходимость существования некоторого лица (группы лиц), на которое возлагаются функции администрирования данными, хранимыми в базе. Классификация баз данных технологии обработки Централизованная база Распределенная база способу доступа ...
Clipper обеспечивает высокую скорость не только при исполнении программ, но и на стадии их компиляции. Система польностью совместима с системой dBaseIII PLUS по организации файлов БД. Однако индексные файлы в системе Clipper имеют иную более эффективную организацию, что наряду с компиляцией способствует существенному повышению производительности программ на стадии исполнения. Индексные файлы dBaseIII PLUS подменяются файлами системы Clipper аналогичного назначения автоматически на стадии исполнения либо заблаговременно с помощью специальной утилиты.
В языке программирования системы Clipper отсутствуют такие полноэкранные команды языка dBase, как ASSIST, BROWSE, EDIT, имеются ограничения на использование функции макроподстановки (&
— . Значением строковой переменной, к которой применяется эта функция, не может быть, в частности, полная команда или фраза команды с ключевым словом, а также список имен полей записи файла БД или других объектов языка с разделителями-запятыми. Вместе с тем в язык введены многие расширения. К их числу (в летней версии 1987 г.) относятся возможности работы с массивами переменных, которые могут объявляться при необходитости глобальными величинами, спецификации функций, определяемых пользователем, возможности обращения к функциям на языках Си и ассемблере с передачей им параметров, средства программирования пользовательских интерфейсов, построенных в стиле меню, сохранение и восстановление изображений, показанных на экране, большое количество новых функций различного назначения, в частности, для операцийнад строками.
В языке Clipper предусматриваются средства блокирования файлов и записей файлов БД, необходимые для использования программ на этом языке в мультипользовательской среде сетевых систем БД. Введены новые синтаксические конструкции, например циклы FOR. NEXT, новая фраза VALID для верификации данных, вводимых с помощью команды GET, и ряд других.
К пользовательской программе можно легко подключить процедуру HELP, обеспечивающую глобальную и контекстно-зависимую помощь. Эта процедура вызывается на стадии исполнения традиционным нажатием функциональной клавиши F1. При этом ей автоматически передаются необходимые параметры.
Clipper включает, как уже указывалось, весьма богатые системные библиотеки функций различного характера, существенно обогащающих язык, позволяющих значительно сокращать затраты времени на прикладное программирование и уменьшать объем исходного кода. В летней версии 1987 г. предусмотрено около ста различных функций для анализа состояния системы, операций с массивами, для вычисления элементарных математических функций, операций над строками, редактирования данных, для создания файлов DOS и выполнения операций над ними, работы со значениями полей типа Memo в записях фаийлов БД и для других целей.
Кроме того, пользователь имеет возможность создавать и использовать собственные библиотеки функций.
Что касается системных библиотек, то Nantucket Corp. постоянно расширяет их состав. В 1988 г. был дополнительно включен ряд новых функций, кроме того, фирма начала поставлять пакет Clipper, предназначенный для использования совместно с системой Clipper. Пакет содержит большую новую структуризованную библиотеку функций и расширенный драйвер экранов и клавиатуры, призванный заменить имеющийся в системе Clipper драйвер. Эти функции и драйвер могут вкючаться в программу на стадии редактирования.
Все функции библиотеки обладают высокой производительностью и предъявляют минимальные требования к оперативной памяти. Они реализованиы на языке ассемблера и оптимизированы. Библиотека пакета включает ряд функций для конструирования многооконных пользовательских интерфейсов, для непосредственной работы с оборудованием, подлюченным к последовательному интерфейсу ПЭВМ, минуя BIOS и обращения к DOS.
Предусмотрена большая группа строковых функций, функций для преобразования числовых значений и битовых операций, операций над датами и временем, установки системных переключателей и получения информации об их состоянии, а также о характеристиках и состоянии операционной обстановки, видеофункций, функций для работы с дисками, файлами БД и принтером. Всего библиотека пакета включает более 270 различных функций.
Важным достоинством системы Clipper является возможность использования дополнительной (свыше 640 Кбайт) памяти персонального компьютера при исполнении разработанных его средствами п/п.
Вместе с тем система clipper обладает и существенным недостатком — порождаемые ею загрузочные модули довольно велики по объему. Один из способов преодоления этого изъяна — предоставляемые пакетом возможности конструирования программных модулей с оверлейной структурой. Однако как «цельнотянутый» загрузочный модуль, так и корневой сегмент модуля с оверлейной структурой не могут быть размером менее 110Кбайт, поскольку в них включаются все необходимые элементы системной среды и функции стадии исполнения.
К числу недостатков этого продукта следует, вероятно, отнести также отсутствие комфортной среды для эффективной разработки и отладки Clipper-программ. Имеется в виду среда подобная той, которой обладают, например, Турбосистемы программирования фирмы Borland Int. Входящий в состав системы Clipper символический отладчик является лишь одной из составных частей такой среды.
Проблему сокращения объема требуемой оперативной памяти и уменьшения размеров загрузочных модулей фирма Nantucket Corp. решила в новой версии системы — Clipper 5. 0. Для этой цели в состав нового программного продукта включается динамический редактор связей — загрузчик, основанный на механизмах виртуальной памяти и тем самым вообще исключающий необходимость использвания оверлейной структуры при создании больших программных модулей.
Версия Clipper 5. 0 обладает и другими важными достоинствами. Пользователь (программист-разработчик прикладных систем) может расширять язык новыми командами и благодаря этому формировать множества команд, удобные для программирования специфических классов задач. Предусматриваются новые типы переменных, а также многомерные массивы. Разработана машинно-ориентированная документация, к которой возможен доступ в режиме on-line с помощью Guide to Clipper или Norton Guide.
Дополнительно в Clipper 5. 0 введены предопределенные объекты, которые облегчают написание больших программ. К ним относятся:
Error class- обработка ошибок во время выполнения программы.
Get class- предоставляет объекты и классы для создания эк-
ранных форм редактирования.
Tbrowse class — предоставляет объект для табличного просмотра и редактирования базы данных.
TColumn class — используется Tbrowse-объектом для работы со столбцами в таблице.
Наиболее частым по использованию и в то же время наиболее мощным объектом можно считать Tbrowse-класс, использование которого дает возможность не прилагая больших усилий реализовать табличный редактор, ассоциированный с какой-либо базой данных, что фактически является законченной прикладной программой.
Система программирования Clipper (в частности версии 5. 0) может быть использована в тех случаях, когда необходимо быстрое (по срокам) создание законченной прикладной программы, ориентированной на обработку информации представленной в табличной форме. Нежелательно применение системы для решения задач содержащих значительное количество вычислительных операций (особенно с плавающей точкой).
Это объясняется символьным форматом хранения чисел, что приводит к значительному уменьшению скорости обработки информации за счет постоянного выполнения преобразований из символьного представления во внутримашинный формат и наоборот, что естественно приводит к потере точности вычислений.
Сетевые базы данных.
Концептуально сетевая модель данных замышлялась как инструмент для пользователей баз данных — программистов. В связи с этим в СМД больше внимания уделяется структуризации данных, чем развитию ее операционных возможностей.
В ЯМД сетевой модели важное значение имеет концепция текущего состояния в базе данных. Для каждой из прикладных программ, параллельно взаимодействующих с базой данных, СУБД должна поддерживать ее собстевенный комплект индикаторов текущего состояния.
На уровне схемы базы данных операционные возможности сетевой модели данных, называемые базисными функциями манипулирования данными, имеют концептуальный характер. Операции здесь непосредственно не могут быть активизированы.
Операции над данными в базе данных на уровне подсхемы предусматривают возможности перемещения по структуре базы данных и изменение индикаторов текущего состояния, запоминание и обновление записей, их удаление из базы данных, включение и исключение детальных записей из наборов, переключение записи из одного набора данного типа в другой, переупорядочение записей в наборе, нахождение в базе данных конкретной записи данного типа и некоторой детальной записи набора, открытие и закрытие области данных базы данных.
Основное значение имеет то, что предусматривается одновременная обработка только одиночных объектов данных из базы данных
— записей, полей записей базы данных. Типичные операции в сетевой модели: найти следующую запись данного типа и сделать ее текущей, извлечь текущую запись в буфер прикладной программы для обработки, заменить в извлеченной записи значения указанных элементов данных на заданные новые их значения, запомнить запись из буфера в базе данных.
Основные достоинства СМД — наличие реализованных СУБД, обеспечивающих эту модель, простота в реализации отношений «многие ко многим». Основной недостаток СМД — ее сложность. При реорганизации БД возможна потеря независимости данных.
Среди сетевых систем одной из наиболее популярных является СУБД db_Vista III (Raima Corp.).
Модель данных этой системы представляет собой упрощенную сеть CODASYL, в которой полностью исключены автоматические механизмы перемещения по структуре базы данных. Другие известные премеры сетевых систем — MDBS-Ш фирмы mdbs Inc, системы Q-Pro и Zim.
СЕТЕВАЯ СИСТЕМА DB_VISTA III
Система dB_VISTA III — система управления базами данных фирмы Raima Corp., поддерживающая сетевую модель данных CODASYL. Она предназначена для создания и использования БД сложной структуры в рамках различных программных систем, реализованных на языке Си. Для них предоставляется интерфейс включающего языка. Кроме того, конечные пользователи могут получить интерактивный доступ к базе данных с помощью языка запросов SQL.
Сама система dB_VISTA реализована на языке Си и благодаря этому является переносимой. Она может эксплуатироваться в среде операционных систем MS DOS, OS/2, UNIX, XENIX, ULTRIX, VMS и ряда других на ПЭВМ IBM PC, PS/2, SUN и VAX. Для разработки приложений допускается использование Microsoft C, Lattice C, Turbo C и других компиляторов языка Си. Фирма поставляет как монопользовательскую, так и мультипользовательскую версии системы. Обеспечиваются быстрые методы доступа за счет использования комбинации наборов CODASYL и эффективных механизмов индексирования, основанных на В-деревьях.
Система поставляется в виде совокупности трех компонентов: собственно системы — библиотеки функций, которые обычным образом подключаются к Си-программе средствами компилятора и редактора связей, компонентов dB_Query и dB_Revise, а также ряда утилит для облегчения эксплуатации системы.
Компонент dB_Query предоставляет пользователю возможность обращаться в интерактивном режиме с запросами к системе БД с помощью языка SQL и генерировать отчеты. Входящие в него функции реляционных запросов на языке Си могут быть встроены с помощью редактора связей в прикладную Си-программу.
Компонент dB_Revise служит для реструктуризации БД и конверсии существующих в ней данных в данные новой структуры.
Утилиты системы позволяют инициализировать БД, проверять непротиворечивость данных в БД, просматривать и редактировать данные в записях БД в полноэкранном режиме, строить индексы по заданным ключам, выдавать отчеты для администратора БД, выводить дампы БД для восстановления ее при разрушениях, осуществлять обмен данными между БД системы и ASCII-файлами.
Сетевая модель данных CODASYL реализована в системе dB_Vista в весьма упрощенном режиме. В ней совершенно отсутствует автоматика, предусмотренная в подходе CODASYL, — автоматическая навигация в структуре данных, селекция экземпляров наборов, поддержка автоматического членства записей в наборах, продуцирование производных элементов данных в экземплярах записей, распространение удалений и изменений по структуре БД. В записях не могут использоваться повторяющиеся группы. Не предусматривается поддержка ограничений целостности данных, процедуры БД, механизмы управления доступом. Не реализована концепция подсхемы.
Реализация сетевой модели в db_VISTA.
Определение записи в сетевой модели, аналогичное определению записи в Паскале или описанию структуры в Си, используется для группировки связанных элементов данных. Эти определения записей используются СУБД для доступа и манипуляций связанными элементами данных как простыми объектами. В последующем обсуждении определение запись/набор будем называть «типом» записи/набора, и будем считать, что запись/набор определенного типа в БД представляет собой «экземпляр» записи/набора.
Набор определяет отношения между типами записей так, что один тип записи является «главной» одного или более типов записей. Подчиненные записи назаваются «детальными». db_VISTA организует наборы, включающие только один экземпляр главной записи и один или более экземпляров детальных записей. Такая цепь отношений, являющаяся отношением «один ко многим», представляет собой соотношение одной главной записи к потенциально большему количеству экземпляров детальных записей.
Связи в наборе реализуются в db_VISTA формированием двунаправленного списка между экземплярами детальных записей и установкой в главной записи указателей на начало и конец списка. Преимущество такого подхода в том, что db_VISTA прозволяет программисту организовать доступ ко всем этим указателям и цепям, предоставляя тем самым очень мощную, но простую по использованию возможность построения данных. Список указателей неявно размещается в записях самой СУБД, базируясь на информации, содержащейся в таблицах словаря данных, созданных из спецификации DDL.
Рисунок 4 показывает как db_VISTA представляет экземпляр набора. Прямоугольники представляют собой записи, а стрелки-указатели, содержащиеся в записях, организуемые самой СУБД. Каждая главная запись содержит указатели на первую и последнюю запись набора. В каждой детальной записи содержатся указатели на предыдущую и последующую детальные записи и на главную запись набора.
указатель на указатель на
начало набора =========== конец набора
- | Главная |———————-
| ————->| запись || | указатель на| набора | указатель на | |
| | главную =========== главную | |
| | ^ указатель на | |
| | | главную | |
v | указатель на | указатель на | v
=============следующую============= следующую =============
| Детальная |———>| Детальная |—>. —>| Детальная |
| запись | | запись | | запись |
| 1 |=============указатель============= указатель =============
на предыдущую на предыдущую
Рис. 4. Реализация набора в db_VISTA.
«Схема»- это обобщенная структура БД, описываемая на языке DDL. При составлении схемы для БД необходимо учитывать, что наборы просто определяют связанные списки записей, в которых главная запись содержит указатели на начало (и конец) списка. Порядок, по которому детальные записи размещаются в списке, определяется в множестве описаний Языка манипулирования данными (DDL).
Он может быть одним из следующих:
- первый- новые записи помещаются в начало списка;
- последний- новые записи помещаются в конец списка;
- последующий — новые записи помещаются за текущей записью;
по возрастанию- новые записи располагаются в возрастающем
порядке по заданным полям;
- по убыванию — новые записи располагаются в убывающем порядке по заданным полям.
Процесс добавления новой детальной записи в набор называется «включением» записи в набор. Аналогично, процесс удаления записи из набора называется «исключением» записи из набора.
В db_VISTA более чем один тип записи может быть определен как элемент определенного набора. Более того, запись может быть определена как элемент более чем одного набора. Также допускается один тип записи определять как главную и детальную запись одного набора.
Кроме доступа к записям через наборы СУБД db_VISTA обеспечивает индексный доступ по ключевым полям, содержащимся в записи. Индексный файл B-дерева связанный с каждым ключевым полем позволяет осуществить быстрый доступ к отдельным записям, так же как и быстрый просмотр размещенных по ключу данных.
Функционирование db_VISTA.
На рисунке 5 показано как работает db_VISTA.
|
v
| Процессор DDL |
|
| | | |
v v v v
=========== ============== ============ ===========
| Словарь | | Включаемый | | Исходный | | vista. h |
| данных | | файл Си | | Си-текст | | |
=========== ============== ============ ===========
| | | |
| ———————————
| |
| v
| =================
| | Транслятор Си |
| =================
| |
| v
| ===================== ==============
| | Оттранслированная | | Библиотека |
| | Си программа | | db_VISTA |
| ===================== ==============
| | |
| ————————
| |
| v
| =================
| | Компоновщик |
| =================
| |
| v
| ==============
- >| Прикладная |
| программа |
|
v
БД db
VISTA
Рис. 5. Функционированние db_VISTA.
Описание на языке определения БД (DDL) db_VISTA подготавливается для процессора DDL СУБД, который транслирует описание и сообщает обо всех синтаксических ошибках. Процессор DDL формирует два файла: словарь БД и файл заголовка БД, содержащий структуры и определения констант для включения их в Си-программу.
Исходный текст Си-программы затем транслируется, а полученный объектный код компонуется с библиотекой db_VISTA для получения выполняемой прикладной программы. Библиотека функций db_VISTA, которая компонуется с прикладной прогаммой, будет манипулировать с БД как определено в словаре, и вызовы функций должны включаться в прикладную Си-программу. Далее описана последовательность шагов, которые необходимо сделать для написания системы с использовантем db_VISTA.
1. Проектирование БД — определяется способ организации данных в базе.
2. Подготовка описания на DDL.
3. Трансляция описания с помощью процессора DDL:
- исправить все синтаксические ошибки и повторить трансляцию, если необходимо;
- используя утилиту диалогого доступа к БД, проверить правильность построения спроектированной БД, изменить ее, если необходимо.
4. Составить и написать программу на Си, включающую соответствующие вызовы Си-функций db_VISTA.
5. Оттранслировать Си-программу. Она должна включать файл заголовка vista. h и файл заголовков, сгенерированный процессором DDL.
6. Скомпоновать Си-программу с библиотекой db_VISTA.
7. Если необходимо проинициализировать БД с помощью программы initdb.
8. Запустить программу.
Из всего вышеизложенного можно сделать вывод, что применение СУБД db_VISTA для реализации данной, относительно простой, системы необоснованно, что связано с необходимостью применять дополнительные прогаммные средства для реализации диалога. db_VISTA может быть рекомендована для написания более сложных систем, с развитым интерфейсом, информационная модель которых однозначно описывается сетевой структурой данных.
Иерархические базы данных.
Операции в ИМД имеют аналогичный СМД «позаписный» характер. Аппарат перемещения по структуре в графовых моделях служит для установки тех объектов данных, к которым будет применяться очередная операция манипулирования данными. Такие объекты называются текущими. Механизмы доступа к данным и перемещения по структуре данных в таких моделях достаточно сложны и существенным образом опираются на концепцию текущего состояния механизма доступа.
Основные достоинства ИМД: простота построения и использования, обеспечение определенного уровня независимости данных, простота оценки операционных характеристик. Основные недостатки: отношение «многие ко многим» реализуется очень сложно, дает громоздкую структуру и требует хранения избыточных данных, что особенно нежелательно на физическом уровне, иерархическая упорядоченность усложняет операции удаления и включения, доступ к любой вершине возможен только через корневую, что увеличивает время доступа.
К числу СУБД иерархического типа можно отнести PC/Focus, Team-Up, Data Edge, а также разработанную в нашей стране систему HИКА, преемницу широко распространенной советской системы ИHЕС для ЕС ЭВМ.
Описание предмета: «СУБД»
Литература
[Электронный ресурс]//URL: https://litfac.ru/referat/temyiov-po-bazam-dannyih/
- М.Армстронг, А.Барон. Performance Management. Управление эффективностью работы. – М.: Гиппо, 2007. – 384 с.
- О.В. Палимпсестова. Образцы должностных инструкций с комментариями. – М.: Экзамен, 2007. – 352 с.
- Инга Лепсверидзе, Сергей Сандер. Работа в Великобритании. – М.: Экономика, 2008. – 192 с.
- Налоговые новеллы 2011-2012 годов. – М.: Налоговый вестник, 2012. – 292 с.
- В.М. Прозоров, А.И. Стебленко, А.В. Абилов. Общеканальная система сигнализации №7. – М.: Горячая Линия — Телеком, 2008. – 152 с.
- М.В. Коротаев, Н.В. Правикова. Применение геоинформационных систем в геологии. – М.: КДУ, 2010. – 172 с.
- В.В. Бородин. Экономика туризма. – М.: Форум, 2011. – 240 с.
- М.В. Коротаев, Н.В. Правикова, А.В. Аплеталин. Информационные технологии в геологи. – М.: КДУ, 2012. – 298 с.
- Е.И. Середа. Тренинги решения семейных проблем. – СПб.: Речь, 2008. – 192 с.
- А.А. Юн. Моделирование турбулентных течений. – М.: Либроком, 2010. – 352 с.
- Александр Клюквин. Краткий самоучитель работы на ПК. – СПб.: БХВ-Петербург, 2003. – 432 с.
- О.В. Буткевич. У истоков международного права. – М.: Юридический центр, 2008. – 896 с.
- С.Ю. Телицин. Гражданско-правовой статус предпринимателя. – М.: Юрлитинформ, 2013. – 168 с.
- Дэвид Хезмондалш. Культурные индустрии. – М.: Высшая Школа Экономики (Государственный Университет), 2014. – 456 с.
- В.В. Девятков. Методология и технология имитационных исследований сложных систем. – М.: Инфра-М, Вузовский учебник, 2014. – 448 с.
- С.М. Карабанов, П.П. Безруких, Т.А. Шушканова. Энергетика будущего. Фотоэлектрическое преобразование солнечной энергии. Тонкопленочные солнечные элементы и модули (техника, экономика, анализ рынка, перспектива развития).
– М.: Энергия, 2014. – 84 с.
- А.В. Борисевич. Энергосберегающее векторное управление асинхронными электродвигателями. Обзор состояния и новые результаты. – М.: Инфра-М, 2015. – 104 с.
Образцы работ
Тема и предмет | Тип и объем работы |
Обзор тенденций развития московского рынка нежилой недвижимости
Маркетинг |
Реферат
18 стр. |
Современные формы банвковского кредитования в России
Финансы и кредит |
Диплом
84 стр. |
Характеристика недвижимости как объекта гражданского права
Гражданское право |
Диплом
90 стр. |
Совершенствование системы мотивации труда работников предприятия и ее эффективность
Управление персоналом |
Диплом
80 стр. |
Задайте свой вопрос по вашей проблеме
Гладышева Марина Михайловна
с 9 до 21 ч. по Москве. |