- •Глава 1
- •§1. Классификация баз данных.
- •Классификация баз данных по принципам обработки.
- •Классификация баз данных по используемой модели данных.
- •§1. Требования к реляционной модели данных. Основные понятия.
- •§1. Логическое проектирование баз данных.
- •Нормализация.
- •Универсальное отношение.
- •I нормальная форма.
- •II Нормальная форма.
- •III нормальная форма.
- •Нормальная форма Бойса-Кодда (нфбк).
- •Типы связей между таблицами.
- •§1. Понятие о субд (dbms).
- •§1. Общение пользователя с бд. Sql как язык реляционных баз данных.
Глава 1
Введение в теорию баз данных
Базы данных (БД) (Databases) – электронные хранилища связанных данных, содержащие сведения о некоторой предметной области, правила организации которых, основаны на общих принципах описания, хранения и манипулирования.
§1. Классификация баз данных.
-
Классификация баз данных по принципам обработки.
Централизованные базы данных.
При использовании этой технологии база данных располагается на одном компьютере, который может даже не иметь сетевой поддержки и работать автономно, в этом случае работа с базой данных возможна только локально. При наличии сетевой поддержки доступ к данным может осуществляться и удаленно, с других компьютеров в сети. Такие базы данных называются централизованными базами данных с распределенным доступом. В настоящее время такие базы данных используются наиболее часто.
Для этой технологии возможны 2 способа обработки данных:
Файл-сервер.
Эта архитектура централизованных баз данных с сетевым доступом предполагает назначение одного из компьютеров в качестве выделенного сервера, на котором хранятся файлы централизованной базы данных. В соответствии с запросами пользователей файлы с сервера передаются на рабочие станции пользователей, где и осуществляется основная часть их обработки. Сам центральный сервер выполняет роль хранилища файлов, не участвуя в обработке самих данных. После завершения работы пользователи копируют файлы с обработанными данными обратно на сервер, откуда их смогут взять и обработать другие пользователи.
Недостатки такой организации работы очевидны. При одновременном обращении нескольких пользователей к одним и тем же данным производительность работы резко падает; т.к. необходимо дождаться пока пользователь, работающий с данными, завершит свою работу. В противном случае возможны затирания исправлений, сделанных одними пользователями, изменениями других пользователей. Другим недостатком является перегрузка сетевого трафика при перекачке больших файлов.
Клиент-сервер.
В основе этой концепции лежит идея о том, что помимо хранения файлов баз данных, центральный сервер выполняет и основную часть обработки данных. Пользователи обращаются к центральному серверу с помощью специального языка (SQL), на котором описывается список задач, выполняемых сервером. Запросы пользователей принимаются сервером и порождают на нем процессы обработки данных. В ответ пользователь получает необходимый ему обработанный набор данных. При том передается не весь набор данных (как в файл-серверной технологии), а только данные, которые действительно необходимы пользователю.
Очевидны преимущества такого подхода перед технологией файл-сервер:
-
По сети происходит передача лишь небольшого объема информации, т.к. вся обработка происходит на центральном сервере.
-
Данный подход позволяет избежать конфликтов при изменениях одних и тех же данных разными пользователями, согласует эти изменения.
Распределенные базы данных.
Базы данных этого типа располагаются на нескольких компьютерах. Информация на этих компьютерах может пересекаться и даже дублироваться. Работа с распределенной базой данных, как правило, выглядит для пользователя так, как будто вся информация находится на одном сервере и напоминает работу с обычными централизованными клиент-серверными базами данных. Распределенные базы данных распространены меньше, чем централизованные клиент-серверные базы данных.