Автор работы: Пользователь скрыл имя, 05 Сентября 2012 в 02:20, курс лекций
Банк данных – организация либо структурная единица организации, предназначенная для сбора и обработки информации о предметной области. В функции банка данных входит сбор информации о первичной области, ее обработка и хранение, а также генерация на ее основе результирующей информации. Следует отметить, что иногда технологии обработки информации, характерные для банков данных реализуются не в «чистом» виде, а как составная часть других систем, например, в задачах САПР (Систем Автоматизированного ПPоектирования).
Информация о состоянии предметной области, которая обрабатывается банком данных, накапливается и хранится в базе данных.
Все это повышает быстродействие системы и снижает время ожидания результата запроса.
Использование архитектуры "клиент-сервер":
резко уменьшает сетевой трафик:
понижает
сложность приложений-клиентов (поскольку
тем уже нет необходимости
обеспечивать целостность и безопасность
БД и следить за параметрами
понижает
требования к аппаратным средствам,
на которых эти приложения функционируют
(т.е. к компьютерам пользователей-
повышает надежность БД, ее целостность, безопасность и секретность.
"Клиент-сервер" - это модель взаимодействия компьютеров в сети. Редко бывает так, чтобы они были совершенно равноправными. Как правило, один компьютер в сети располагает информационно-вычислительными ресурсами, такими как процессоры, файловая система, почтовая служба, служба печати, база данных.
Другие же компьютеры пользуются ими. Компьютер, управляющий тем или иным ресурсом, принято называть сервером этого ресурса, а компьютер, желающий им воспользоваться - клиентом.
Конкретный сервер характеризуется видом ресурса, которым он владеет. Так, если ресурсом являются базы данных, то речь идет о сервере баз данных, назначение которого - обслуживать запросы клиентов, связанные с обработкой баз данных; если ресурс - это файловая система, то говорят о файловом сервере или файл-сервере и т.д.
Сегодня технология "клиент-сервер" получает все большее распространение, однако сама по себе она не предлагает универсальных рецептов. Она лишь дает общее представление о том, как должна быть организована современная распределенная информационная система. В то же время реализации этой технологии в конкретных программных продуктах и даже в видах программного обеспечения различаются весьма существенно.
Один из основных принципов технологии "клиент-сервер" заключается в разделении функций стандартного приложения на три группы, имеющие различную природу.
Первая группа - это функция ввода и отображения данных.
Вторая группа объединяет чисто прикладные функции, характерные для данной предметной области.
К третьей группе относятся фундаментальные функции хранения и управления данными (базами данных, файловыми системами и т.д.)
В соответствии с этим в любом приложении выделяются следующие логические компоненты:
компонент представления (presentation), реализующий функции первой группы;
прикладной компонент (business application), поддерживающий функции второй группы;
компонент доступа к информационным ресурсам (resource acces) или менеджер ресурсов (Resource manager), поддерживающий функции третьей группы.
Выделяются три подхода, каждый из которых реализован в соответствующей модели:
модель доступа к удаленным данным (Remote Date Access - RDA);
модель сервера базы данных (DateBase Server - DBS);
модель сервера приложений (Application Server - AS).
Недостатки технологии клиент-сервер
Во-первых, это высокие требования к пропускной способности коммуникационных каналов с сервером, что препятствует использование клиентских станций иначе как в локальной сети.
Во-вторых, это слабая защита данных от взлома, в особенности от недобросовестных пользователей системы.
В-третьих, это очень высокая сложность администрирования и настройки рабочих мест пользователей системы.
В-четвертых, это необходимость использовать на клиентских местах достаточно мощные компьютеры.
В-пятых,
это сложность интеграции с унаследованными
системами. В-шестых, достаточно высокая
сложность разработки системы из-за
необходимости исполнять
5.Организация
доступа к данным. Технологии
ODBC, ADO.
Метод прямого доступа
Основная особенность прямого метода доступа заключается во взаимно однозначном соответствии между ключом записи и ее физическим адресом. Физическое местоположение записи определяется непосредственно из значения ключа. Не требует упорядоченности значений ключей физических записей. Метод может применяться как для хранения, так и для поиска записей. Для поиска одной записи используется одно обращение к индексу. Наличие дубликатов ключей недопустимо.
Эффективность хранения зависит от плотности ключей. При низкой плотности память расходуется впустую, поскольку резервируются адреса, соответствующие отсутствующим ключам. В ряде случаев не требуется однозначное соответствие между ключом и физическим адресом; записи вполне достаточно, чтобы группа ключей ссылалась на один и тот же физический адрес. Такой метод доступа называется методом доступа посредством хеширования.
ODBC
"Открытый
интерфейс взаимодействия с
Что
такое ODBC? Этот продукт представляет
собой интерфейс языка
Независимость
реализуется с помощью
Приложения, использующие этот API, ограниченны, они могут использовать только реляционные базы данных. Минус ODBC - это отсутствие объектно-ориентированного подхода. Правда, в библиотеке MFC, которую Microsoft рекомендует для разработки прикладных приложений с помощью Visual C++, есть классы для работы с данными через ODBC.
ODBC будет работать на 64-битной операционной системе Microsoft Windows.
Тем не менее полностью объектную модель реализовала только следующая в нашем списке технология от Microsoft.
ADO
ActiveX Data Objects (ADO) - объекты для доступа к данным - одна из самых популярных после ODBC технологий, обеспечивает программируемую модель высокого класса, которая будет поддерживаться и улучшаться со временем. Хотя это и не обеспечивает таких возможностей, как при кодировании напрямую в OLE DB или ODBC, ADO легка в освоении и использовании и может вызываться из таких языков сценариев, как Microsoft Visual BasicR Scripting Edition (VBScript) или Microsoft Jscript.
На самом деле, нетрудно понять, что ADO - очередная надстройка над уже существующими технологиями все той же корпорации, поскольку ее ActiveX-компоненты являются надстройками над API OLE DB, которая сама по себе, в общем-то, не так уж и удобна в применении. ADO, конечно, вносит дополнительный уровень, который сказывается на производительности приложений, однако это так хорошо отражается на времени разработки, что технология намного популярнее, чем, собственно, OLE DB. Ее очевидный плюс - возможность использования объектов для доступа к данным из скриптовых языков, таких как VBScript или Jscript. Здесь немалую роль играет возможность ее использования при программировании на ASP для разработки web-приложений.
6.Особенности
серверов данных
Сервер базы данных
Сервер БД обслуживает базу данных и отвечает за целостность и сохранность данных, а также обеспечивает операции ввода-вывода при доступе клиента к информации.
Архитектура клиент-сервер состоит из клиентов и серверов. Основная идея состоит в том, чтобы размещать серверы на мощных машинах, а приложениям, использующим языковые компоненты СУБД, обеспечить доступ к ним с менее мощных машин-клиентов посредством внешних интерфейсов.
Язык SQL
Большинство СУБД используют язык SQL (Structured Query Language — язык структурированных запросов), так как он удобен для описания логических подмножеств БД.
Назначение SQL:
- создание
БД и таблицы с полным
- выполнение
основных операций
- выполнение простых и сложных запросов.
Одна из ключевых особенностей языка SQL заключается в том, что с его помощью формируются запросы, описывающие какую информацию из базы данных необходимо получить, а пути решения этой задачи программа определяет сама.
Хранимые и присоединенные процедуры
Существуют расширенные версии языка SQL, которые поддерживают такие расширения, как хранимые и расширенные процедуры, а также управление ходом программы через ветвления и организацию циклов.
Хранимые
процедуры — это предварительно
откомпилированные предложения
языка SQL, которые сохраняются на
сервере базы данных, использующей
язык SQL. Клиент запускает хранимую
процедуру с помощью команды EXRCUTE<имя
процедуры>. Таким образом, по сети
передаются только два слова вместо
двух сотен. Поскольку эта процедура
уже откомпилирована и
В качестве хранимых процедур обычно используются часто выполняемые запросы.
Присоединенные
процедуры (триггеры) подобны хранимым
процедурам и исполняются в ответ
на события, происходящие в БД. Когда
с некоторыми приложениями языка SQL
связана присоединенная процедура,
выполнение этого предложения всегда
запускает целую серию команд,
входящих в эту процедуру. Присоединенная
процедура автоматически
Самое
важное применение присоединенных процедур
заключается в обеспечении
Операционная среда серверов
Серверы БД: SQL SERVER (Microsoft), SQL BASE SERVER, Oracle SERVER (Oracle Corporation).Каждый сервер БД может работать на определенных типах компьютеров и сетей. Операционными системами серверов могут быть MSDOS, OS/2, Xenix,Unix, Dec VMS/ Рабочии станции пользователей обычно работают под управление MSDOS, OS/2, Xenix, Unix.
Существуют возможности смешанного использования различных ОС. Большая часть SQL-серверов может хранить описание БД в системном каталоге, который обычно бывает доступен пользователям. Для обращения к этому каталогу используются SQL-запросы. Реляционные СУБД могут использовать информацию, хранящуюся в системном каталоге для оптимизации SQL-запросов.
Ссылочная целостность реляционных БД
Большинство SQL-серверов поддерживают ссылочную целостность реляционных БД, состоящих из отдельных таблиц, которые могут быть объединены на основе общей информации Рассмотрим на следующем примере: база данных содержит таблицу клиентов и таблицу заказов, которые связаны полем номера клиента, содержащимся в обеих таблицах. Поскольку может быть более одного заказа от одного клиента, соотношение таблиц – «один-ко-многим». Когда таблицы соединены, то таблица клиентов является родительской, а таблица заказов – дочерней. Если запись-родитель стирается, а соответствующие ей дочерние записи – нет, то говорят, что дочерние записи «осиротели». Ссылочная целостность означает, что ни в одной таблице не допустимы записи-«сироты». Запись может осиротеть тремя способами:
1)родительская запись удалена;
2)родительская
запись изменена таким образом,
3)введена
дочерняя запись без
7.Распределенные
БД. Понятие о трехуровневой
архитектуре БД.
Распределённые базы данных (РБД) — совокупность логически взаимосвязанных баз данных, распределённых в компьютерной сети.
Основные принципы
РБД состоит из набора узлов, связанных коммуникационной сетью, в которой:
а)каждый узел — это полноценная СУБД сама по себе;
б)узлы взаимодействуют между собой таким образом, что пользователь любого из них может получить доступ к любым данным в сети так, как будто они находятся на его собственном узле.