20 Вопрос
Проблемы внешней память при организации хранения данных в СУБД
Распространенной проблемой для администратора СУБД-сервера при управлении физическим хранением данных является фрагментация различных структур внешней памяти, которая чаще всего обусловлена операциями удаления. Такая фрагментация, как правило, ухудшает производительность системы и бывает следующих типов:
на уровне блоков, когда в блоке остается свободное пространство после удаления строк из таблицы.
на уровне экстентов (непрерывная последовательность блоков), когда заполненные экстенты чередуются с незаполненными, появившимися после операций удаления таблиц (или индексов).
Основные проблемы, обусловленные фрагментацией:
Выделение свободного пространства. При очередной вставке строк в таблицу СУБД выдает сообщение о нехватке свободного пространства, хотя дисковой памяти (пространства) достаточно. Пространство выделяется экстентами и, если в базе данных нет непрерывного свободного блока нужного размера, то выдается это сообщение.
Замедление операций вставки строк в таблицу. Для того чтобы уменьшить время выполнения этих операций приходится в несколько раз увеличивать размер вновь выделяемых экстентов, благодаря чему скорость выполнения операций возрастает (до 30%).
Расход свободного пространства и общее увеличение времени обработки данных. В случае сильной фрагментации обе величины могут вырасти вдвое.
Фрагментация внешней памяти неизбежна и в принципе является нормальным рабочим явлением, требующим при этом от администратора СУБД-сервера определенных профессиональных знаний и приемов.
