Классика баз данных - статьи

       

Системы баз данных


Предполагается наличие достаточно традиционных систем баз данных с индексами на основе B-деревьев в качестве основополагающего компонента структуры хранения. Аналогичные древовидные структуры используются для поддержки не только традиционных кластеризованных и некластеризованных индексов, но также и битовых индексов, поколоночного хранения данных, XML-индексов, каталогов (метаданных) и структур данных, применяемых для распределения памяти.

Что касается транзакционных гарантий, предполагается традиционная журнализация с упреждающей записью в журнал (write-ahead logging) как операций изменений содержимого (таких как вставка или удаление записей), так и структурных изменений (таких как расщепление узлов B-деревьев). Эффективное восстановление по журналу после сбоев обеспечивается за счет поддержки контрольных точек, при установке которых модифицированные данные насильственно выталкиваются из буферного пула в персистентное хранилище.

Можно также допустить применение таких вариантов, как использование алгоритма «second chance» или метода нечетких (fuzzy) контрольных точек. Кроме того, для некоторых операций, таких как операция создания индекса, допускается нежурнализируемое выполнение (журнализируются только действия по распределению памяти). Для поддержки таких операций требуется соответствующее упорядочивание операций записи на диск и «силовая политика» управления буферным пулом [].



Содержание раздела