Технологии работы с базами данных1. История развития бд
Скачать 88.71 Kb.
|
История развития БД Концепция БД сложилась в конце 60-х годов прошлого столетия и с тех пор постоянно развивалась. Первый этап сложился к началу 60-х годов прошлого века и характеризуется следующими признаками: информация преимущественно хранится в последовательных файлах на магнитных лентах; физическая структура данных строго соответствует логической; в качестве архива хранятся несколько копий файлов; файлы предназначены для единственной программы; программист планирует не только логическую, но и физическую организацию данных; при изменении физической или логической организации данных программа должна перерабатываться. Второй этап относится к середине 60-х годов и имеет следующие особенности: появились внешние устройства прямого доступа, позволившие осуществить произвольный доступ к записям (прямой, индексно-последовательный); вошли в употребление процедуры поиска записи по ключевому полю (обычно одному); стало возможным переносить файлы на другие внешние устройства без изменения прикладных программ, что обычно обеспечивалось средствами языка управления данными соответствующей операционной системы. Третий этап начался с конца 60-х годов. Основным достижением можно считать осознание необходимости централизации данных для доступа к ним различных приложений. При этом уменьшается избыточность и противоречивость информации, приложения используют стандартные средства доступа к данным. На этом этапе возросла сложность организации данных, был реализован эффективный поиск записей по многим ключам. Именно на этом этапе появились первые СУБД. Прежде всего развивались теория и практика построения иерархических и сетевых СУБД. В этих моделях связи данных описываются с помощью деревьев и графов общего вида. Четвертый этап датируется второй половиной 70-х годов. На этом этапе были реализованы следующие основные характеристики СУБД: логическая и физическая независимость данных; удобство развития БД; безопасность, секретность, целостность данных; поиск информации по различным запросам; языковые средства для администратора, прикладного программиста, пользователя-непрофессионала. С начала 70-х годов после публикаций Э.Кодда начались активные исследования реляционной модели данных. Основу реляционной СУБД составляют таблицы. Вплоть до 80-х годов реляционные СУБД считались перспективными, но трудными для реализации. Новый этап в развитии СУБД наступил при появлении персональных компьютеров. На этом этапе на передний план вышли такие особенности СУБД, как: дружественность и удобство работы пользователя (развитые диалоги, меню, оконный интерфейс, контекстная помощь); упрощение громоздких схем СУБД за счет частичной реализации ряда свойств; почти полный переход на реляционные СУБД; ориентация не только на программиста, но и на пользователя-непрофессионала; наличие средств автоматизации программирования в виде генераторов форм, меню, отчетов, запросов. Технологии работы с базами данных План: Централизованная архитектура Архитектура "файл-сервер" Технология "клиент – сервер" Трехзвенная (многозвенная) архитектура "клиент – сервер" Понятие базы данных изначально предполагало возможность решения многих задач несколькими пользователями. В связи с этим, важнейшей характеристикой современных СУБДявляется наличие многопользовательской технологии работы. Разная реализация таких технологий в разное время была связана как с основными свойствами вычислительной техники, так и с развитием программного обеспечения. Централизованная архитектура При использовании этой технологии база данных, СУБД и прикладная программа (приложение) располагаются на одном компьютере (рисунок 1). Для такого способа организации не требуется поддержки сети и все сводится к автономной работе. Рисунок 1 - Централизованная архитектура Многопользовательская технология работы обеспечивалась либо режимом мультипрограммирования, либо режимом разделения времени. Архитектура "файл-сервер" Увеличение сложности задач, появление персональных компьютеров и локальных вычислительных сетей явились предпосылками появления новой архитектуры файл-сервер. Эта архитектура баз данных с сетевым доступом предполагает назначение одного из компьютеров сети в качестве выделенного сервера, на котором будут храниться файлы базы данных. В соответствии с запросами пользователей файлы с файл-сервера передаются на рабочие станции пользователей, где и осуществляется основная часть обработки данных. Центральный сервер выполняет в основном только роль хранилища файлов, не участвуя в обработке самих данных (рисунок 2). Рисунок 2 - Архитектура "файл-сервер" Технология "клиент – сервер" Использование технологии " клиент – сервер " предполагает наличие некоторого количества компьютеров, объединенных в сеть, один из которых выполняет особые управляющие функции (является сервером сети). Так, архитектура " клиент – сервер " разделяет функции приложения пользователя (называемого клиентом) и сервера. Приложение-клиент формирует запрос к серверу, на котором расположена БД, на структурном языке запросов SQL (Structured Query Language), являющемся промышленным стандартом в мире реляционных БД. Удаленный сервер принимает запрос и переадресует его SQL-серверу БД. SQL-сервер – специальная программа, управляющая удаленной базой данных. SQL-сервер обеспечивает интерпретацию запроса, его выполнение в базе данных, формирование результата выполнения запроса и выдачу его приложению-клиенту. При этом ресурсы клиентского компьютера не участвуют в физическом выполнении запроса; клиентский компьютер лишь отсылает запрос к серверной БД и получает результат, после чего интерпретирует его необходимым образом и представляет пользователю. Так как клиентскому приложению посылается результат выполнения запроса, по сети "путешествуют" только те данные, которые необходимы клиенту. В итоге снижается нагрузка на сеть. Поскольку выполнение запроса происходит там же, где хранятся данные (на сервере), нет необходимости в пересылке больших пакетов данных. Кроме того, SQL-сервер, если это возможно, оптимизирует полученный запрос таким образом, чтобы он был выполнен в минимальное время с наименьшими накладными расходами. Архитектура системы представлена на рисунке 3. Рисунок 3 - Архитектура "клиент – сервер" Трехзвенная (многозвенная) архитектура "клиент – сервер" Трехзвенная (в некоторых случаях многозвенная ) архитектура (N-tier или multi-tier). представляет собой дальнейшее совершенствование технологии " клиент – сервер ". Рассмотрев архитектуру " клиент – сервер ", можно заключить, что она является 2-звенной: первое звено – клиентское приложение, второе звено – сервер БД + сама БД. В трехзвенной архитектуре вся бизнес-логика (деловая логика), ранее входившая в клиентские приложения, выделяется в отдельное звено, называемое сервером приложений. При этом клиентским приложениям остается лишь пользовательский интерфейс. Схематически такую архитектуру можно представить, как показано на рисунке 4. Рисунок 4 - Представление многоуровневой архитектуры "клиент-сервер" Вопросы для самоконтроля: Назовите достоинства и недостатки существующих многопользовательских технологий с базами данных. |