Основные технологии доступа к данным 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Основные технологии доступа к данным



Архитектура «файл-сервер»

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

Достоинства:

Простота разработки и эксплуатации, не требуется дополнительное ПО для работы с БД.

Недостатки:

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

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

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

- Приложения не только обрабатывают данные, но и управляют самой

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

Из-за этих недостатков архитектура "файл-сервер", как правило, используется в небольших сетях.

Архитектура «клиент-сервер»

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

Клиент и сервер взаимодействуют следующим образом. Клиент формирует и отсылает запрос (SQL-запрос) серверу, на котором размещена БД. Сервер вы­полняет запрос и выдает клиенту в качестве результатов требуемые данные.

Таким образом, в архитектуре "клиент-сервер" клиент посылает запрос и получает только те данные, которые ему действительно нужны. Вся обработка запро­са выполняется на удаленном сервере.

К достоинствам такой архитектуры отно­сятся следующие факторы.

- Для работы с данными используется реляционный способ доступа, что

снижает нагрузку на сеть.

- Приложения не управляют напрямую базой, управлением занимается

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

- В приложении отсутствует код, связанный с управлением БД, поэтому приложения упрощаются.

 

Двухзвенная архитектура

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

× распределенное представление;

× удаленное представление;

× распределенная функция;

× удаленный доступ к данным;

× распределенная БД.

 

 

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

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

 

Трехзвенная архитектура

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

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

1-й — клиенты («тонкие клиенты»);

2-й — сервер приложений;

3-й — сервер базы данных.

Управление данными
Приложение
Представление
Компьютер – сервер БД
Компьютер – сервер приложений
Компьютер – клиент

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

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

Приложение 2-го уровня должно содержать программу, обес­печивающую эффективное выполнение приложения 1 -го уровня, включая:

• тексты программ SQL-запросов (транзакций);

• проверку синтаксиса условий выполнения запроса, введен­ного пользователем;

• программы обеспечения доступа к информации сервера баз данных.

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

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

 

ODBC

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

Для выполнения такой интеграции фирма Microsoft разработа­ла универсальный интерфейс, получивший название Open Database Connectivity (ODBC) — открытый, доступ к базам данных. Технология ODBC предусматривает использование единого интерфей­са для доступа к разнородным реляционным базам данных. При этом язык SQL рассматривается как стандартное средство доступа кданным.

COM

Технология доступа к удаленным данным Component Object Model (COM) — компонентная модель объектов, разработанная фирмой Microsoft как средство взаимодействия приложений (в том числе составных частей операционной системы Windows), функ­ционирующих на одном компьютере.

ADO.NET

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

CORBA

Архитектура распределенной системы CORBA. Технология уда­ленного доступа к базам данных CORBA (Common Object Regust Broker Architecture — общая архитектура объектных заявок) пред­ставляет собой промежуточное программное обеспечение, уста­навливающее отношения клиент — сервер между объектами в рас­пределенной компьютерной среде.

MIDAS

Технология MIDAS (Multitier Distributed Applications Services) — набор сервисов для создания многозвенных распределенных при­ложений.

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

 

Описание столбца

Описание столбца имеет формат:

<Описание столбца> = {<Имя столбца> I COMPUTED [BY] (<Выражение>) I <Домен>}

Столбец можно определить следующими тремя способами.

1) Задать тип столбца, например, date или integer, при этом создается обыч­ный столбец указанного типа. Типы столбцов InterBase описаны в данной главе ниже.

2) Создать вычисляемый столбец, задав в операнде computed выражение.

3) Создать столбец на основе домена.

Ограничения столбца

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

Описание ключей

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

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

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

Использование индексов

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

 

Описание столбцов

Описание столбца имеет формат:

<Описание столбца> = {<Имя столбца> I COMPUTED [BY] (<Выражение>) I <Домен>}

Столбец можно определить следующими тремя способами.

1) Задать тип столбца, например, date или integer, при этом создается обыч­ный столбец указанного типа. Типы столбцов InterBase описаны в данной главе ниже.

2) Создать вычисляемый столбец, задав в операнде computed выражение.

3) Создать столбец на основе домена.

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

Пример:

CREATE TABLE List

(Name VARCHAR(20),

Price FLOAT,

Number INTEGER,

PriceAll COMPUTED BY (Price * Number));

Здесь создается таблица List, в которой ведется учет продажи товаров. Столбец Name, предназначенный для названия товара, имеет строковый тип (длина не более 20 символов). Столбец Price содержит цену единицы товара и имеет вещественный тип, а целочисленный столбец Number указывает количество товара. Столбец PriceAll содержит общую стоимость всего товара, которая рассчиты­вается как произведение цены товара на его количество. Исходя из типа опе­рандов, тип этого вычисляемого столбца автоматически будет определен как FLOAT.

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

Перед использованием домена его нужно создать с помощью инструкции

CREATE DOMAIN <Имя домена>

[AS] <описание домена>

Имя созданного домена затем можно включать в описания столбцов:

<Имя столбца> <Имя домена>

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

Пример использования доменов:

CREATE DOMAIN D_Position AS VARCHAR(20) NOT NULL;

CREATE DOMAIN D_Price AS FLOAT CHECK(VALUE > 0);

CREATE TABLE Position

(Code INTEGER NOT NULL PRIMARY KEY,

Position D_Position,

Note VARCHAR (50ч));

CREATE TABLE Personnel

(Code INTEGER NOT NULL PRIMARY KEY,

Name VARCHAR(30),

Position D_Position,

Salary FLOAT,

BirthDay DATE);

Домен D_Position представляет собой описание строкового столбца длиной не более 20 символов, который не может быть пустым. Этот домен использован При описании столбцов Position таблиц Position И Personnel. Второй домен D_Price представляет собой числовой столбец, значение которого должно быть положительным. Это ограничение задано конструкцией check (value > 0). Для приводимых таблиц домен DPrice не нужен, а создан с целью последующего использования.

 

Ограничение столбцов

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

Ограничения столбца имеют следующий формат:

[DEFAULT {<Значение> | NULL | USER}]

[NOT NULL]

[COLLATE <Порядок сортировки>]

[CHECK <Условия>]

Операнд default определяет для столбца значение по умолчанию, которое ав­томатически заносится в столбец при добавлении к таблице новой записи.

В качестве значения по умолчанию можно указать:

- константу (литерал) — в столбец заносится указанное значение (должно иметь тип, совместимый с типом столбца);

- null — в столбец заносится нулевое значение;

- user — в столбец заносится имя текущего пользователя (для столбцов строковых типов).

Операнд not null указывает, что столбец не может быть пустым и в обязательном порядке должен содержать значение допустимого типа и диапазона.

При программировании инструкций нельзя допускать взаимоисключающие конструкции, например, одновременно указывать операнды default null и not null.

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

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

Например:

Для таблицы Test значение столбца Name не может быть пустым, значение столбца Price должно быть положительным, а значение столбца Number — находиться в диапазоне 1..1000.

СREATE TABLE Test

(Name VARCHAR (20) NOT NULL,

Price FLOATE CHECK (Price > 0),

Namber INTEGER CHECK (Number BETWEEN 1 AND 1000));

 

Описание ключей

Для описания первичного ключа используется операнд primary key формата:

PRIMARY KEY (<Список столбцов ключа>)

Имена столбцов, образующие ключ, перечисляются в списке через запятую.

На­пример, инструкция

CREATE TABLE Personnel2

(Code INTEGER NOT NULL, Name VARCHAR(30), PRIMARY KEY (Code));

создает таблицу Personnei2, для которой по столбцу Code строится первичный ключ.

Отметим, что для ключевого столбца задан описатель not null.

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

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

UNIQUE (<Список столбцов ключа>)

Так, инструкция:

CREATE TABLE Position

(Code INTEGER NOT NULL, Position VARCHAR(20) NOT NULL, PRIMARY KEY (Code), UNIQUE (Position));

создает таблицу Position, для которой строятся два ключа — первичный ключ по столбцу code и уникальный ключ по столбцу Position.

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

 

Описание индексов

Создание и удаление индексов выполняется инструкциями create index и drop index соответственно. Инструкция создания индекса create index имеет формат:

CREATE [UNIQUE] (ASCENDING] [DESCENDING] INDEX

<Имя индекса> ON <Имя таблицы > (<Имя столбца>,..., [<Имя столбца>]);

В отличие от версии языка SQL для локальных БД, для индекса таблицы InterBase дополнительно можно задать несколько описателей:

- UNIQUE – индекс (как и ключ) требует уникальности значений столбца (столбцов), по которому он построен;

- ASCENDING - индексные столбцы сортируются в порядке возрастания значе­ний (по умолчанию);

- DESCENDING — индексные столбцы сортируются в порядке убывания значений.

Пример:

CREATE DESCENDING INDEX indNamePosition ON Personnel (Name, Position);

создает для таблицы Personnel индекс indNamePosition, построенный ПО ПО­ЛЯМ Name и Position. Для индекса устанавливается сортировка в порядке убы­вания значений.

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

Для каждого ключа таблицы автоматически строится соответствующий индекс, и ему присваивается имя по умолчанию. В отличие от обычного индекса, ин­декс, построенный по ключу, нельзя удалить инструкцией drop index: для этого нужно выполнить реструктуризацию таблицы инструкцией alter table.

SHOW INDEX [<Имя таблицы>];

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

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

 

Ограничение таблицы

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

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

CREATE TABLE <Имя таблицы> [EXTERNAL [FILE] "<Имя файла>"]

(<Имя столбца1> <Описание столбца1> [<Ограничения столбца1>,]

[<Имя столбцаN> <Описание столбцаN> [ <Ограничения столбцаN>],]

[<Ограничение1 таблицы>,]

[ <ОграничениеN таблицы>,]

[<Описание ключа1>,]

[<Описание ключаN>,]

[<Описание индекса1>,]

[<Описание индексаN>]);

 

Виды хранимых процедур

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

- возвращающие одну строку;

- возвращающие несколько строк.

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

Процедуры, возвращающие несколько строк, передают набор данных, записями в котором являются строки результатов. Такие хранимые процедуры также на­зывают процедурами выбора. В их теле размещаются совместно используемые инструкции выбора нескольких записей и возврата значений — for select... do... suspend, которые и обеспечивают отбор требуемых записей и построч­ную передачу значений их столбцов в точку вызова.

 

Задание прав. Команда grant.

Оператор GRANT используется для предоставления привилегий определенным пользователям в отношении поименованных объектов БД с разрешения ее владельца.

Оператор GRANT имеет следующий формат:

GRANT {PrivilegeList | ON ObjectName ТО {AutohrizationldList [WITH GRANT OPTION]

Параметр PrivilegeList представляет собой список, состоящий из одной или более привилегий, разделенных запятыми:

INSERT, UPDATE, REFERENCES, USAGE

ALL PRIVILEGES - позволяет предоставить указанному пользователю все 6 существующих привилегий без необходимости их перечисления.

Пару примеров:

GRANT ALL PRIVILEGES

ON MK

TO Administrator WITH GRANT OPTION;

 

GRANT SELECT, UPDATE (Nairn Oper)

ON MK

TO Texnolog, Konstruktor;

 

Преимущества языка SQL.

Основные достоинства языка SQL заключаются в следующем:

- стандартность;

- независимость от конкретных СУБД;

- возможность переноса с одной вычислительной системы на другую;

- реляционная основа языка;

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

- возможность программного доступа к БД;

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

- возможность динамического изменения и расширения структуры БД;

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

 

Запросы модификации данных.

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

- INSERT - добавление;

- DELETE - удаление;

- UPDATE - обновление.

 

Защита.

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

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

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

конфиденциальность, т.е. конфиденциальная (засекреченная) информация должна быть доступна только тому, кому она пред­назначена.

Обеспечение защиты информации включает в себя:

• разработку показателей, характеризующих технологическую
безопасность информационных систем;

• разработку требований к архитектуре баз данных;

• наличие трудовых и материальных ресурсов;

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

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

 

Базовая технология COM.

COM - компонентная модель объектов, разработанная фирмой Microsoft как средство взаимодействия приложений, функционирующих на одном компьютере.

COM-объекты содержат свойства, методы.

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

СОМ со-классы (coclass) - это классы, которые содержат один или более СОМ-интерфейс. Вы можете не обращаться к СОМ-интерфейсу непосредственно, а получать доступ к СОМ-интерфейсу через со-класс.

 

Технология MIDAS.

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

Технология MIDAS позволяет:

- получать доступ к данным, физически расположенным на

разных машинах;

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

- разделить бизнес-логику приложения на отдельные части, что

повышает уровень безопасности работы с базами данных.

 

Язык хранимых процедур.

Язык хранимых процедур сервера interbase представляет собой процедурный алгоритмический язык, а его синтаксис имеет много общего с синтаксисом языка pascal, кроме того, он обладает рядом возможностей языка sql.

В языке ХП включены инструкции:

- объявления переменных;

- присваивания;

- условные;

- составные;

- цикла;

- выбора записи;

- выбора нескольких записей;

- возврата значений;

- выхода из процедуры;

- вызова процедуры;

- посылки сообщения.

Инструкция объявления переменной имеет след. формат:

declare variable <имя_переменной> <тип_переменной>

 

Технология CORBA.

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

CORBA, которая включает в себя следующие компоненты:

- ORB (Object Request Broker) - брокер объектных запросов

(заявок), включающий в себя язык IDL;

- IDL (Interface Definition Language) - язык определения интерфейсов;

- РОА (Portable Object Adapter) - адаптер объектов;

- Stub - заглушка;

- Skeleton - основа;

- Smart Agent - «умный» агент.

 

Программа ER Win.

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

 

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

 

ERwin позволяет наглядно отображать сложные структуры данных. Удобная в использовании графическая среда AllFusion ERwin Data Modeler упрощает разработку базы данных и автоматизирует множество трудоёмких задач, уменьшая сроки создания высококачественных и высокопроизводительных транзакционных баз данных и хранилищ данных. Данное решение улучшает коммуникацию организации, обеспечивая совместную работу администраторов и разработчиков баз данных, многократное использование модели, а также наглядное представление комплексных активов данных в удобном для понимания и обслуживания формате.

 

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

Смотри вопрос 31

Архитектура «файл-сервер»

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

Достоинства:

Простота разработки и эксплуатации, не требуется дополнительное ПО для работы с БД.

Недостатки:

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

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

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

- Приложения не только обрабатывают данные, но и управляют самой

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

Из-за этих недостатков архитектура "файл-сервер", как правило, используется в небольших сетях.

Архитектура «клиент-сервер»

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

Клиент и сервер взаимодействуют следующим образом. Клиент формирует и отсылает запрос (SQL-запрос) серверу, на котором размещена БД. Сервер вы­полняет запрос и выдает клиенту в качестве результатов требуемые данные.

Таким образом, в архитектуре "клиент-сервер" клиент посылает запрос и получает только те данные, которые ему действительно нужны. Вся обработка запро­са выполняется на удаленном сервере.

К достоинствам такой архитектуры отно­сятся следующие факторы.

- Для работы с данными используется реляционный способ доступа, что

снижает нагрузку на сеть.

- Приложения не управляют напрямую базой, управлением занимается

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

- В приложении отсутствует код, связанный с управлением БД, поэтому приложения упрощаются.

 

Двухзвенная архитектура

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

× распределенное представление;

× удаленное представление;

× распределенная функция;

× удаленный доступ к данным;

× распределенная БД.

 

 

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

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

 

Трехзвенная архитектура

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

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

1-й — клиенты («тонкие клиенты»);

2-й — сервер приложений;

3-й — сервер базы данных.

Управление данными
Приложение
Представление
Компьютер – сервер БД
Компьютер – сервер приложений
Компьютер – клиент

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

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

Приложение 2-го уровня должно содержать программу, обес­печивающую эффективное выполнение приложения 1 -го уровня, включая:

• тексты программ SQL-запросов (транзакций);

• проверку синтаксиса условий выполнения запроса, введен­ного пользователем;

• программы обеспечения доступа к информации сервера баз данных.

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

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

 

Основные технологии доступа к данным

ODBC

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

Для выполнения такой интеграции фирма Microsoft разработа­ла универсальный интерфейс, получивший название Open Database Connectivity (ODBC) — открытый, доступ к базам данных. Технология ODBC предусматривает использование единого интерфей­са для доступа к разнородным реляционным базам данных. При этом язык SQL рассматривается как стандартное средство доступа кданным.

COM

Технология доступа к удаленным данным Component Object Model (COM) — компонентная модель объектов, разработанная фирмой Microsoft как средство взаимодействия приложений (в том числе составных частей операционной системы Windows), функ­ционирующих на одном компьютере.

ADO.NET

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

CORBA

Архитектура распределенной системы CORBA. Технология уда­ленного доступа к базам



Поделиться:


Последнее изменение этой страницы: 2017-01-25; просмотров: 592; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.189.14.219 (0.253 с.)