Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / Лекция 5 СУБД_Общ_св.doc
Скачиваний:
44
Добавлен:
11.06.2015
Размер:
699 Кб
Скачать

87

V. Системы управления бд: общие сведения

Общие сведения о СУБД

Место БД при различной архитектуре вычислительной системы

Модели данных

Язык описания данных

Язык манипулирования данными для реляционной модели – SQL

Общие сведения о СУБД

Первыми СУБД в России начали пользоваться в конце семидесятых годов. К концу восьмидесятых годов СУБД стали основным инструментом для организации быстрого и эффективного доступа к данным. Применение СУБД не всегда увенчалось успехом. Но это было связано, главным образом, не с программными средствами, а с отсутствием хорошо нормализованных данных и психологическими причинами – не восприятие программистами таких средств.

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

Централизованный характер управления данными в БД предполагает необходимость существования некоторого лица (группы лиц) – администратор БД, на которого возлагаются функции, связанные с созданием, хранением, выборкой данных.

Определим основные понятия, необходимые для построения концептуальной модели БД [http://ru.wikipedia.org/wiki/%D0%91%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85].

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

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

СУБД – это программно-технологический комплекс, интегрирующий аппаратные средства, БД на технических носителях, программное обеспечение управления данными в самом широком смысле этого термина (операции выборки, линейных преобразований БД и др.), а также программируемую логику и набор процедур.

DDL (Data Definition Language) – язык описания данных (ЯОД) позволяет описать базу данных в терминах, принятых в конкретной СУБД.

DML (Data Manipulation Language) – язык манипулирования данными (ЯМД) позволяет управлять данными (выбирать, сортировать, создавать и др.).

Объект (сущность) - это такое абстрактное множество предметов (экземпляров), в множестве которых все они имеют одни и те же свойства (характеристики).

Модель данных - совокупность структур данных и операций их обработки.

Таблица – основная единица хранения данных БД, состоит из имени таблицы, строк и столбцов.

Плоские файлы - набор упорядоченных однородных записей, каждая из которых содержит некоторый набор полей (атрибутов).

Схема – коллекция объектов БД, содержащая таблицы, индексы, кластеры, представления (виды), журналы репликации, линки, последовательности, синонимы, пакеты, хранимые процедуры, функции, триггеры, библиотеки внешних процедур.

Связь - это абстракция набора отношений, которые систематически возникают между различными видами предметов в реальном мире. Существуют три вида связи: «один к одному», «один ко многим» и «многие ко многим».

View-представление – это временная или «материализованная» таблица, созданная СУБД для обработки данных из одной или более таблиц. С видами можно делать те же операции, что и с таблицами (строить запросы, обновлять, удалять). Кроме того представления могут использоваться для ограничения доступа пользователей к некоторым данным.

Атрибут - это столбец с заголовком (именем) и значениями, превращающийся в последующем в поле БД, имеющий имя, тип и другие свойства.

Запрос – это транзакция “только для чтения”. Запрос генерируется с помощью команды SELECT. Различие между обычной транзакцией и запросом состоит в том, что при запросе данные не изменяются.

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

Кэш – область памяти для быстрого доступа к данным. С точки зрения аппаратного обеспечения – это небольшой (применительно к оперативной памяти) объем памяти, который значительно быстрее основной памяти. Этот объем памяти используется для снижения времени, необходимого на частую загрузку данных или инструкций в центральный процессор (ЦП). ЦП сам по себе содержит встроенный кэш.

Процедура – это набор SQL команд, который выполняет определенную задачу.

Репликация - процесс синхронизации в распределенной БД таблиц и представлений, на основе которых они созданы.

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

Триггер – блок инструкций SQL в виде процедур, которые могут автоматически запускаться при выполнении команд INSERT, UPDATE или DELETE.

Функция – это совокупность SQL или PL/SQL-команд, которая реализует определенную задачу (например, статистические функции).

Хранимая процедура – это предопределенный SQL-запрос, хранимый в системе.

Атрибут - элементарная единица логической организации данных. Для описания атрибута используются следующие характеристики:

имя – формализованное обозначение атрибута;

тип - формат хранения атрибута (символьный, числовой, дата);

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

длина - максимально возможное количество символов, которое может храниться с помощью атрибута;

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

Запись - совокупность логически связанных атрибутов.

Экземпляр записи - отдельная реализация записи, содержащая конкретные значения ее атрибутов.

Индекс - это упорядоченный список значений и ссылок на записи, в которых хранятся эти значения.

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

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

Описание логической структуры записи файла содержит последовательность расположения полей записи и их основные характеристики, как это показано в табл.1.

Таблица 1 - Описание логической структуры записи файла БД

Имя файла

Атрибут

Признак ключа

Формат атрибута

Имя (обозначение)

Наименование

Тип

Длина

Точность

name

Краткое название организации

ПК

char

15

0

Имя n

…..

…..

….

….

Создание БД на основе СУБД включает:

  • выбор архитектуры реализации БД (централизованная, распределенная, др.);

  • выбор модели данных;

  • нормализацию данных и определение таблиц, которые должны содержать БД;

  • определение необходимых в таблице атрибутов;

  • задание индивидуального значения каждому атрибуту;

  • определение связей между таблицами.

Место БД при различной архитектуре вычислительной системы

С

SQL

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

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

БД

Клиент

СУБД

SQL

Клиент

К

SQL

лиент

Клиент

Клиент

Рисунок 1 - Централизованный вариант (персональный)

Файл-сервер. При такой архитектуре предполагается выделение одной из машин сети для хранения БД (сервер файлов), которая совместно используется всеми пользователями. Все другие машины сети выполняют функции рабочих станций, с помощью которых поддерживается доступ пользователей к БД. Файлы БД в соответствии с пользовательскими запросами передаются на рабочие станции, где в основном и производится обработка. Пользователи могут создавать также на рабочих станциях локальные БД, которые используются ими монопольно. Концепция файл-сервер условно отображена на рис.2. Ярким примером такой архитектуры является возможность хранения БД ACCESS на файле сервере. Производительность такой архитектуры зависит от компьютера пользователя, значительно загружается сеть для передачи данных. При большой интенсивности доступа к одним и тем же данным производительность информационной системы падает.