- •Понятия базы данных, системы управления базой данных, системы баз данных, банка данных.
- •Понятие и назначение баз данных. Виды баз данных.
- •Понятие и назначение баз данных. Требования к базам данных.
- •Понятие и основные функции систем управления базами данных.
- •Системы управления базами данных. Языковые средства субд.
- •Системы управления базами данных. Тенденции развития субд.
- •Архитектура многопользовательских субд. Модели двухуровневой технологии "клиент – сервер" (файловый сервер, модель удаленного доступа к данным, Модель сервера баз данных ).
- •Сервер приложений. Трехуровневая модель.
- •Характеристика современных реляционных субд.
- •Этапы проектирования базы данных.
- •Инфологическое моделирование предметной области баз данных.
- •Пример построения er-модели конкретной локальной области.
- •Понятие и виды моделей данных: Общая характеристика.
- •Понятие и виды моделей данных. Сетевая модель.
- •Понятие и виды моделей данных. Иерархическая модель.
- •Понятие и виды моделей данных. Реляционная модель.
- •Ограничения целостности. Понятие и классификация.
- •Ограничения целостности связи. Понятие. Возможности реализации в современных субд.
- •Избыточность данных и аномалии обновления в бд.
- •Нормализация баз данных. 1-ая, 2-ая и 3-я нормальные формы.
- •Нормализация баз данных. Нормальная форма Бойса – Кодда.
- •Проектирование реляционной базы данных.
- •Язык sql. Общая характеристика.
- •Общая структура команды Select языка sql.
- •Sql. Формирование запросов к базе данных.
- •Sql. Агрегатные функции языка и их использование в запросах.
- •Sql. Группировка данных.
- •Вложенные запросы в sql.
Архитектура многопользовательских субд. Модели двухуровневой технологии "клиент – сервер" (файловый сервер, модель удаленного доступа к данным, Модель сервера баз данных ).
Архитектура систем баз данных ANSI/SPARC в зависимости от точки зрения определяет для одной и той же БД три различных уровня описания. Основным назначением трехуровневой архитектуры является обеспечение незави-симости от данных.
Если компьютер работает в монопольном режиме, то и размещенная на персональном компьютере БД будет функционировать также в монопольном режиме, даже в том случае, если с БД работают несколько пользователей, поскольку они могут обращаться к ней только последовательно.
При переходе к многопользовательскому режиму, а здесь есть только один путь — интеграция компьютеров в локальные сети, как следствие этого процесса, возникает возможность распределения приложений, работающих с единой базой дан¬ных, и даже самой базы данных по созданной сети.
Тенденции развития многопользовательских систем
Традиционной архитектурой многопользовательских систем, которая сложилась до появления ПК, считалась схема, при которой один мощный компьютер с единственным процессором был соединен с несколькими пользовательскими терминалами, не имеющими для хранения и обработки данных собственных ресурсов. Системы распределенной обработки данных строились на мультипрограммных операционных системах и использовали централизованное хранение БД на устройствах внешней памяти центральной ЭВМ и терминальный многопользовательский режим доступа к ней. СУБД и приложения также располагались на центральной ЭВМ.
Первой системой, работающей в многопользовательском режиме, была СУБД SYSTEM R, разработанная фирмой IBM. В ней были реализованы основные принципы синхронизации, применяемые при распределённой обработке данных, которые до сих пор являются базисными практически во всех коммерческих СУБД.
В этот период происходили значительные колебания в вычислительных ресурсах и схемах их применения, используемых для хранения и обработки информации. Наблюдались и отдельные тенденции в этих колебаниях: DownSizing — децентрализация; UpSizing — централизация; RightSizing — определение размера и схемы в соответствии с реальной ситуацией.
Первая тенденция была вызвана к жизни движением от отдельных mainframe-систем к открытым рас¬пределенным системам, использующим сети персональных компьютеров и привела к более эффективным, с точки зрения эксплуатационных затрат системам.
Встречный, по отношению к только что рассмотренной тенденции, процесс происходил практически параллельно с первым и был обусловлен бурным развитием пер¬сональных компьютеров, появлением локальных сетей.
Однако рано или поздно встречные процессы должны были погасить в некоторой степени амплитуду подобных колебаний. В результате этого господствующее положение должна была занять тенденция создания информационных систем на такой плат¬форме, которая точно соответствовала бы ее масштабам и задачам.
В современном мире все указанные на рисунке технологии использования баз данных имеют свое право на жизнь. Различные режимы могут быть реализованы в пределах одной и той же организации и даже на одном и том же компьютере.
Наиболее часто упоминаются в соответствующей литературе в этом плане два типа технологий: технология файлового сервера и технология «клиент-сервер», которые являются двухуровневыми структурами.
Модели двухуровневой технологии «клиент-сервер».
Систему баз данных можно рассматривать как систему, где осуществлено распределение процесса выполнения по принципу взаимодействия двух программных процессов, один из которых в этой модели называется «клиентом», а другой, обслуживающий клиента, — сервер (машина баз данных). Клиентский процесс запрашивает некоторые услуги, а серверный процесс обеспечивает их выполнение. При этом предполагается, что один серверный процесс может обслужить множество клиентских процессов.
Сервер в простейшем случае — это собственно СУБД. Клиенты — это различные приложения, которые выполняются над СУБД.
Обычно в приложении выделяются следующие группы функций: функции ввода и отображения данных (презентационная часть приложения определяется тем, что пользователь видит на своем экране, основными задачами этой части являются: формирование экранных изображений; чтение и запись в экранные формы информации; управление экраном; обработка движений мыши и нажатий клавиш клавиатуры); прикладные функции (определяют основные алгоритмы решения конкретных задач приложения, код приложения пишется с использованием различных языков программирования); функции обработки данных внутри приложения (Для обеспечения доступа к данным используются язык запросов и средства манипулирования данными стандартного языка SQL); функции управления информационными ресурсами (это СУБД, которая обеспечивает хранение и управление базами данных); служебные функции (выполняют роль связок между функциями других групп).
В монолитном исполнении все перечисленные компоненты приложения располагаются в единой среде и комбинируются внутри одной исполняемой программы. В децентрализованной архитектуре эти части приложения распределяются по сети.