26. СУБД. Понятие, классификация, состав.
В современных информационных системах информация обычно
хранится с использованием автоматизированных банков данных. Банки данных могут
быть очень большими и могут содержать разную информацию, используемую
организацией.
Банк данных - это информационная система коллективного
пользования, обеспечивающая централизованное хранение данных, их обновление и
выдачу по запросам пользователей. Это комплекс аппаратного и программного
обеспечения банка данных и персонала, обслуживающего его. Банк данных включает:
1.
одну или несколько баз
данных;
2.
систему управления
базами данных (СУБД);
3.
персонал,
обеспечивающий работу банка данных.
База данных – это совокупность определенным образом
организованных данных, хранящихся в запоминающих устройствах ЭВМ. Обычно данные
хранятся на жестком диске сервера организации.
Система управления базами данных (СУБД) —
специализированная программа или комплекс программ, предназначенная для
организации и ведения базы данных. Она обеспечивает хранение данных и
взаимодействие пользователя с БД, позволяя пользователям производить поиск,
сортировку и выборку информации в базе данных, а некоторым пользователям -
добавлять, удалять и изменять записи в БД.
Систе́ма управле́ния ба́зами да́нных (СУБД) — совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных.
· управление данными во внешней памяти (на дисках);
· управление данными в оперативной памяти с использованием дискового кэша;
· журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
· поддержка языков БД (язык определения данных, язык манипулирования данными).
Обычно современная СУБД содержит следующие компоненты:
· ядро, которое отвечает за управление данными во внешней и оперативной памяти, и журнализацию,
· процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как правило, машинно-независимого исполняемого внутреннего кода,
· подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие пользовательский интерфейс с СУБД
· а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию информационной системы.
Файл-серверные
В файл-серверных СУБД файлы данных располагаются
централизованно на файл-сервере. Ядро СУБД располагается на каждом клиентском
компьютере. Доступ к данным осуществляется через локальную сеть. Синхронизация
чтений и обновлений осуществляется посредством файловых блокировок.
Преимуществом этой архитектуры является низкая нагрузка на ЦП сервера, а
недостатком — высокая загрузка локальной сети.
На данный момент файл-серверные СУБД считаются устаревшими.
Они могут применяться для обучения работе с базами данных (чаще всего для этого
используется MS Access) или для
хранения информации в небольших информационных системах.
Примеры: Microsoft Access, Paradox, dBase.
Клиент-серверные
Такие СУБД состоят из клиентской части (которая входит в
состав прикладной программы) и сервера (см.
Клиент-сервер). Клиент-серверные СУБД, в отличие от
файл-серверных, обеспечивают разграничение доступа между пользователями и мало
загружают сеть и клиентские машины. Сервер является внешней по отношению
к клиенту программой, и по надобности его можно заменить другим. Недостаток
клиент-серверных СУБД в самом факте существования сервера (что плохо для
локальных программ — в них удобнее встраиваемые СУБД) и больших
вычислительных ресурсах, потребляемых сервером.
Клиент-серверные СУБД предоставляют больше возможностей для
профессиональной работы с данными, поэтому они чаще всего используются в
крупных предприятиях и организациях. Они больше всего подходят к крупным информационным ситемам с
одним или несколькими серврами, обладающими большой
производительностью. Даже в случае большого количества пользователей,
работающих с ними, они не оченьсильно загружают сеть.
Примеры: Firebird, Interbase,
IBM DB2, MS SQL Server, Sybase, Oracle, PostgreSQL, MySQL, ЛИНТЕР.
Встраиваемые
Встраиваемая СУБД — библиотека, которая позволяет
унифицированным образом хранить большие объёмы данных на локальной машине.
Доступ к данным может происходить через SQL
либо через особые функции СУБД. Встраиваемые СУБД быстрее обычных
клиент-серверных и не требуют установки сервера, поэтому востребованы в локальном ПО, которое имеет дело с большими объёмами данных
(например, геоинформационные системы).
Примеры: OpenEdge, SQLite, BerkeleyDB, один из
вариантов Firebird, один из вариантов MySQL, Sav Zigzag,
Microsoft SQL Server Compact, ЛИНТЕР.
Таким образом, для использования в крупных организациях, в
том числе на промышленных предприятиях, больше подходят клиент-серверные СУБД.
Мы рассмотрим особенности таких распространенных СУБД, как Oracle и MS SQL Server.
· Локальные СУБД (все части локальной СУБД размещаются на одном компьютере)
· Распределённые СУБД (части СУБД могут размещаться на двух и более компьютерах).
· Иерархические
· Сетевые
· Реляционные
· Объектно-ориентированные