NetNado
  Найти на сайте:

Учащимся

Учителям



25. Понятие системы управления базами данных (субд)



25.Понятие системы управления базами данных (СУБД)

(СУБД) — специализированные программные средства, предназначенные для организации и ведения баз данных. (СУБД) обеспечивает возможность хранения описания трех представлений БД:

концептуальное представление - логическая структура БД в целом в ограничениях СУБД по структуре данных. Это то, как «видит» БД потенциальный пользователь;

физическое представление - конкретное размещение значений данных в памяти, способы и средства представления структурных характеристик, установления связей между элементами структуры БД;

внешнее представление - часть структуры БД, используемая в конкретном приложении.

Такое трехуровневое представление данных обеспечивает соблюдение основных принципов концепции БД.

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

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

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

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

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

4. Многопользовательские СУБД имеют достаточно развитые средства

администрирования БД.

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

ƒ системы обеспечения безопасности;

ƒ системы поддержки целостности базы данных;

ƒ системы управления параллельной работой приложений;

системы восстановления.

26.Понятие и роль схемы и подсхемы.

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

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

27.База данных как средство отображения информационной модели предметной области.

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

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

Естественное понятие однородных (однотипных) объектов с информационной точки зрения может быть формально определено как множество объектов, для которых имеет смысл одно и то же полное множество параметров.

2. При информационном моделировании на ЭВМ предметная область отображается в компьютерные данные следующим образом:

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

 описание множества однотипных объектов с определенной стороны (по некоторой группе параметров) представляется в виде файла, причем одному объекту в файле соответствует одна либо несколько записей. Одному объекту предметной области будет соответствовать несколько записей в файле в том случае, если по упомянутой группе параметров необходимо хранить несколько экземпляров описаний (за разные периоды времени, по технологическим переходам и т.п.);

 полная информация об объектах предметной области (всестороннее описание объектов) хранится в системе взаимосвязанных файлов, называемой базой данных. Взаимосвязь файлов отражает взаимосвязь объектов разных типов и различных описаний внутри одного типа.

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

28.Модели данных. Классические модели данных (плоская, иерархическая, сетевая)

С возникновением концепции баз данных получила развитие теория структуризации данных, были определены типовые модели данных:  иерархическая,

 сетевая,  реляционная модель.

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

Моделью данных называется формализованное описание структуры единиц информации и операций над ними в информационной системе.

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

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

ƒ управляющую часть, определяющую возможные операции над такими структурами;

ƒ классы ограничений целостности данных, которые могут быть реализованы средствами этой системы.

Линейная модель данных

Свойства линейной структуры:

 элементами линейной структуры являются простые данные (данные, разделение которых на составляющие не имеет смысла).

 каждое данное имеет имя (идентификатор) и множество возможных значений, задаваемое словарем, диапазоном или правилом формирования;

 множество данных, составляющих линейную структуру, описывает множество однотипных объектов;

 все экземпляры линейной структуры (записи) однородны:

-порядок следования данных во всех экземплярах структуры один и тот же;

-размер и тип данного одного имени во всех экземплярах структуры одинаковы. Разные данные могут иметь различные размеры и типы;

 линейной структуре в информационных системах соответствует файл однотипных записей;

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

Иерархическая структура данных

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

Элемент, каждому экземпляру которого можно поставить в соответствие несколько экземпляров второго, называется старшим. Иерархическую связь формально определяют как 1:М (один ко многим).

Элементами иерархической структуры являются линейные структуры.

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

Сетевая модель данных

Элементами сетевой структуры данных являются линейные структуры. Для сетевой структуры справедливы все положения, характеризующие иерархическую структуру (иерархическая структура является частным случаем сетевой), а кроме того допускается:

 наличие более одной связи между двумя элементами

 подчиненный может иметь более одного старшего

 циклические подструктуры

 более одной связи между экземплярами одного типа

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

29.Реляционная модель данных. Основные понятия. Нормализация отношений.

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

Атрибут — это поименованный столбец отношения. Свойства сущности, его характеристики определяются значениями атрибутов. Порядок следования атрибутов не влияет на само отношение. Отношение строится с учетом ряда факторов. Каждому имени атрибута Аi, 1 ≤ i ≤ n ставится в соответствие множество допустимых для соответствующего столбца значений. Это множество Di называется доменом данного имени атрибута.

Каждая строка отношения является множеством значений, взятых по одному из домена каждого имени атрибута. Домены являются произвольными непустыми конечными или счетными множествами и образуют множество: D = D1 ∪ D2 ∪ ... ∪ Dn.

Отношение r со схемой R — это конечное множество отображений {t1, t2, ... tp) из R в D. Причем каждое отображение t∈ r должно удовлетворять следующему ограничению: t(Ai) принадлежит Di, где 1 ≤ i ≤ n

Эти отображения называются кортежами. Каждый кортеж отношения отображает экземпляр сущности, а атрибут отношения отображает атрибут сущности.

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

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

Нормализация отношений

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

Первая нормальная форма

Отношение удовлетворяет первой нормальной форме (1НФ), если все его атрибуты атомарны (неделимы), т.е. среди атрибутов нет составных или с множественными значениями.

Вторая нормальная форма

Отношение удовлетворяет второй нормальной форме (2НФ), если оно удовлетворяет 1НФ и не содержит атрибутов, зависящих от части ключа.

Приведение отношения ко 2НФ (нормализация по 2НФ) заключается в разбиении исходного отношения на два, одно из которых включает атрибуты ключа исходного отношения и атрибуты, зависящие от полного ключа, а второе – атрибуты зависящего от части ключа вместе с атрибутами этой части.

Третья нормальная форма

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

Для реляционных баз данных необходимо, чтобы все отношения базы данных обязательно находились в 1НФ. Нормальные формы более высокого порядка могут использоваться разработчиками по своему усмотрению. Однако следует стремиться к тому, чтобы довести уровень нормализации базы данных хотя бы до ЗНФ, тем самым, исключив из базы данных избыточность данных и аномалии обновления.

30.Операции реляционной алгебры. Реляционное исчисление.

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

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

Реляционное исчисление кортежей является, по сути, формализацией системы обозначений, предназначенной для образования множеств. В реляционном исчислении используются булевы операции (И, ИЛИ, НЕ) над условиями, которые могут быть истинными или ложными. В нем также используются кванторы существования и всеобщности, означающие, соответственно, что элемент определенного типа существует или что условие истинно для каждого элемента определенного типа.

Восемь основных операций над отношениями реализуются в реляционной модели данных:

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

• три специальные реляционные операции –

проекции, выбора (селекции) и соединения.

Объединением двух совместимых по объединению отношений R1 и R2 является отношение R3, содержащее множество всех кортежей, принадлежащих или R1, или R2, или обоим вместе.

Пересечением двух совместимых по объединению отношений R1 и R2 является отношение R3, содержащее кортежи, принадлежащие как R1, так и R2.

Разностью двух совместимых по объединению отношений R1 и R2 является отношение R3, кортежи которого принадлежат R1, но не принадлежат R2 (т.е. кортежи из R1, которых нет в R2).

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

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

Проекция – это операция построения нового отношения путем выбора одних и исключения других атрибутов из исходного отношения.

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

Соединением отношения А по атрибуту Х с отношением В по атрибуту Y называется множество всех кортежей, являющихся конкатенацией таких кортежей а и кортежей b, для которых выполняется условие Х * Y (под * понимается одна из операций сравнения). Х и Y должны быть определены на одном и том же домене.

31.Языки манипулирования данными SQL и QBE (общие сведения).

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

 язык структурированных запросов – Structured Query LanguageSQL;

 запрос по образцу – Query-by-Example (QBE).

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

 SQL с самого начала являлся полным языком БД, обеспечивающим помимо средств формулирования запросов и манипулирования БД следующие возможности:

  • средства определения и манипулирования схемой БД;

  • средства определения ограничений целостности и триггеров;

  • средства определения представлений БД;

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

  • средства авторизации доступа к отношениям и их полям67);

  • средства определения точек сохранения транзакции и выполнения фиксации и откатов транзакций.

Данные, хранящиеся в столбцах таблиц SQL-ориентированной базы данных, являются типизированными, т. е. представляют собой значения одного из типов данных, предопределенных в языке SQL или определяемых.

Язык Query-by-Example

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

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

Для QBE не существует какого-либо стандарта в записи запросов.

32.Использование SQL для создания и актуализации баз данных, формирования представлений, хранимых процедур и триггеров, запросов к базе данных.













Три́ггер (англ. trigger) — это хранимая процедура особого типа, которую пользователь не вызывает непосредственно, а исполнение которой обусловлено действием по модификации данных: добавлением INSERT, удалением DELETE строки в заданной таблице, или изменением UPDATE данных в определенном столбце заданной таблицы реляционной базы данных. Триггеры применяются для обеспечения целостности данных и реализации сложной бизнес-логики. Триггер запускается сервером автоматически при попытке изменения данных в таблице, с которой он связан. Все производимые им модификации данных рассматриваются как выполняемые в транзакции, в которой выполнено действие, вызвавшее срабатывание триггера. Соответственно, в случае обнаружения ошибки или нарушения целостности данных может произойти откат этой транзакции.

Момент запуска триггера определяется с помощью ключевых слов BEFORE (триггер запускается до выполнения связанного с ним события; например, до добавления записи) или AFTER (после события). В случае, если триггер вызывается до события, он может внести изменения в модифицируемую событием запись (конечно, при условии, что событие — не удаление записи). Некоторые СУБД накладывают ограничения на операторы, которые могут быть использованы в триггере (например, может быть запрещено вносить изменения в таблицу, на которой «висит» триггер, и т. п.)



33.Системы управления базами данных. Общие свойства СУБД. Обобщенная схема обмена данных с использованием СУБД.

(СУБД) — специализированные программные средства, предназначен-ные для организации и ведения баз данных.

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

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



Общие свойства СУБД

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

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

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

4. Многопользовательские СУБД имеют достаточно развитые средства

администрирования БД.

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

ƒ системы обеспечения безопасности;

ƒ системы поддержки целостности базы данных;

ƒ системы управления параллельной работой приложений;

системы восстановления.

34.Типовые информационные процедуры, реализуемые СУБД.

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

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

3. Обеспечение независимости прикладных программ и данных (логической и физической независимости).Обеспечение логической независимости данных предоставляет возможность изменения логического представления базы данных без необходимости изменения физических структур хранения данных. Обеспечение физической независимости данных предоставляет возможность изменять способы организации базы данных в памяти ЭВМ не вызывая необходимости изменения "логического" представления данных.

4. Защита логической целостности базы данных.

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

5. Защита физической целостности.

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

6. Управление полномочиями пользователей на доступ к базе данных.

7. Синхронизация работы нескольких пользователей.

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

8. Управление ресурсами среды хранения.

9. Поддержка деятельности системного персонала.

При эксплуатации базы данных может возникать необходимость изменения параметров СУБД, выбора новых методов доступа, изменения (в определенных пределах) структуры хранимых данных, а также выполнения ряда других общесистемных действий.
35.Общие сведения о СУБД первого поколения (IMS-ОКА, ADABAS, IDS-Банк ОС), реляционных СУБД (FoxPro, Access), СУБД, обеспечивающих технологию клиент-сервер (ORACLE, MS SQL, MY SQL).

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

IMS (Information Management System ) являлись весьма распространенными СУБД, обеспечивающими хранение и доступ к БД иерархической структуры.

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

БД сложной логической структуры может быть разнесена в 10 физических наборов данных (файлов). IMS поддерживает 4 способа физической организации БД: иерархический последовательный метод доступа; иерархический индексно-последовательный метод доступа; иерархический индексно-прямой метод доступа и иерархический прямой.

Система IMS(ОКА) является системой с базовым языком.

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

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

Система ID

СУБД IDS обеспечивают хранение и доступ к БД с сетевой структурой.

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

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

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

Информационные поля могут содержать числовые и символьные данные и имеют имена.

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

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

Система ADABAS

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

ADABAS дает возможность обращаться к БД и из прикладных программ, написанных на АССЕМБЛЕРЕ, КОБОЛе, ФОРТРАНе и PL/1, в том числе под управлением телемонитора.

Система FoxPro

СУБД FoxPro обеспечивает возможность работы в трех режимах:

• выполнение откомпилированных программ, написанных на языке СУБД (xBASE-язык);

• выполнение команд языка xBASE или команд SQL в режиме интер-претации;

• обработка баз данных в экранном интерфейсе (без предварительного программирования и без знания команд языка xBASE).

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

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

Файлы могут быть связаны друг с другом:

• Возможные виды связей 1 : 1, 1 : М, М : 1, M : N:

Система Access

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

База данных Microsoft Access состоит из следующих объектов:

таблицы, запросы, формы, отчеты, макросы, модули.

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

Клиент-сервер
При использовании клиент-серверной технологии, на самом сервере, содержащим базу данных, функционирует некоторое программное обеспече-ние, которое называется "Сервером баз данных" или "Сервером БД". Клиент-серверная СУБД позволяет обмениваться клиенту и серверу минимально необходимыми объёмами информации. При этом основная вычислительная нагрузка ложится на сервер. Клиент может выполнять функции предварительной обработки перед передачей информации серверу, но в основном его функции за-ключаются в организации доступа пользователя к серверу. Таким образом, архитектура клиент-сервер адаптирована для работы с большими объемами данных - сеть нагружается меньше, требования к пользовательским компьютерам, с точки зрения производительности, минимизируется. Однако возрастают требования к серверу, содержащему базу данных, поскольку теперь он один тянет нагрузку всех пользователей. Клиент-серверная СУБД располагается на сервере вместе с БД и осуществляет доступ к БД непосредственно, в монопольном режиме. Все клиентские запросы на обработку данных обрабатываются клиент-серверной СУБД централизованно. Недостаток клиент-серверных СУБД состоит в повышенных требованиях к серверу. Достоинства: потенциально более низкая загрузка локальной сети; удобство централизованного управления; удобство обеспечения таких важных характеристик как высо-кая надёжность, высокая доступность и высокая безопасность.
Примеры: Oracle, Firebird, Interbase, IBM DB2, Informix, MS SQL Server, Sybase Adaptive Server Enterprise, PostgreSQL, MySQL, Cache.

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

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

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

Индексные файлы

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

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

Защита баз данных; целостность и сохранность баз данных

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

  • результаты зафиксированных транзакций должны быть сохранены в восстановленном состоянии базы данных;

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

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


страница 1


скачать

Другие похожие работы:


Создание таблиц баз данных

Лабораторная работа: 1 стр.


Документы

архив: 1 стр.