Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции по БД.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.79 Mб
Скачать

1.2.3. Программные средства

Обработка данных и управление этой обработкой в вычислительной среде, а также взаимодействие с операционной системой и приклад­ными программами осуществляется комплексом программных средств, взаимосвязь которых иллюстрируется рис. 1.3. В составе комплекса обычно выделяют следующие компоненты:

  • ядро, обеспечивающее управление данными во внешней и оперативной памяти, а также протоколирование изменений;

  • процессор языка базы данных, обеспечивающий обработку (трансляцию или компиляцию) и оптимизацию запросов на выборку и изменение данных;

  • подсистему (библиотеку) поддержки программных вызовов, ко­торая обслуживает прикладные программы управления данны­ми, взаимодействующие с СУБД через средства пользователь­ского интерфейса;

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

Рис. 1.3. Программные средства СУБД

Большинство СУБД работают в среде операционной системы и тесно с ней связаны. Многопользовательские приложения, обработ­ка распределенных запросов, защита данных требуют эффективно использовать ресурсы, управление которыми обычно является функ­цией ОС. Использование многопроцессорных систем и мультипоточных технологий обработки данных позволяет эффективно обслу­живать параллельно выполняемые запросы, но требует координации использования ресурсов между ОС и СУБД. Соответственно, управ­ление доступом и обеспечение защиты также обычно интегрируются с соответствующими средствами операционной системы.

Именно централизованное управление данными обеспечивает:

  • сокращение избыточности в хранимых данных;

  • совместное использование хранимых данных;

  • стандартизацию представления данных, упрощающую эксплуатацию БД;

  • разграничение доступа к данным;

  • целостность данных, обеспечиваемую процедурами, предотвращающими включение в БД неверных данных, и ее восста­новление после отказов системы.

1.2.4. Технические средства

Сегодня большинство банков данных создается и функционирует на основе универсальных вычислительных машин3. Однако для боль­ших баз данных, функционирующих в промышленном режиме, обеспечение эффективной и бесперебойной работы должно основы­ваться на использовании адекватных аппаратных средств.

Устройства ввода-вывода и накопители внешней памяти — традиционно «узкое место» любой базы данных. Объем и быстродействие накопителей являются, очевидно, важными параметрами. Однако столь же значима и отказоустойчивость. Здесь следует отметить необ­ходимость согласованных решений при распределении ролей между аппаратными и программными компонентами управления операция­ми ввода-вывода. Например, наличие буферной памяти в накопителе, ускоряющей ввод-вывод (аппаратное кэширование) при сбоях систе­мы во время выполнения операции записи в БД может привести к по­тере данных: переданные для записи данные еще будут находиться в буфере, а так как СУБД отметит операцию записи как уже завершив­шуюся, откат для восстановления данных станет невозможен.

Для повышения надежности хранения часто используют специализированные дисковые подсистемы — RAID (Redundant Array of Inexpensive Disks). Один логический RAID-диск — это несколько физических дисков, объединенных в одно устройство, управляемое специализированным контроллером, что позволяет распределять ос­новные и системные данные между несколькими носителями (дис­ками), в том числе дублировать данные. Таким образом, в случае повреждения одного из дисков, можно оперативно восстановить по­терянные данные.

Не менее значима роль центрального процессора. Многие промышленные СУБД поддерживают многопроцессорную обработку запросов. Теоретически использование еще одного процессора поз­волит ускорить обработку. Однако на практике многопроцессорные системы требуют повышенного внимания при приобретении обору­дования: надежно работают только сертифицированные системы, использующие соответствующие периферийные устройства.

Для распределенных и удаленно используемых баз данных так­же важно сетевое окружение: связное оборудование и сетевые про­токолы. Здесь важны не только показатели быстродействия, но и поддерживаемые ими возможности обеспечения безопасности.