247
того, "листья" дерева связаны в линейный список, что позволяет
осуществлять быстрый последовательный доступ к данным файла. VSAM
поддерживает физические стуктуры файлов четырех типов:
• ESDS (entry-sequenced data set) – неупорядоченные записи
фиксированной или переменной длины;
• KSDS (key-sequenced data set) – записи фиксированной или
переменной длины, упорядоченные по ключам;
• RRDS (relative-record data set) – записи фиксированной длины,
упорядоченные по номерам;
• VRDS (variable-length relative-record data set) – записи
фиксированной или переменной длины, упорядоченные по
номерам.
Физическая структура файлов ESDS очевидна. Для файлов RRDS
память выделяется сразу для всех записей файла, и относительная позиция
записи вычисляется. В RRDS-файле могут быть "пустые места" – для
записей, еще не занесенных в файл. Для файлов KSDS и VRDS строится
индекс (B
+
-дерево с линейным списком листьев) ключей или номеров
соответственно. Для этих файлов возможно создавать также любое
количество альтернативных индексов – по любым другим ключам,
альтернативный индекс ссылается на основной индекс. Хотя физическая
структура файлов в VSE – записеориентированная, системный API
предоставляет как записе-, так и байториентированный интерфейс.
Логическое структурирование хранения информации и в BAM, и в
VSAM основывается на концепции библиотек. Библиотека является
контейнерным объектом, содержащим одну или несколько подбиблиотек.
Подбиблиотеки содержат разделы (файлы). Память выделяется для
библиотеки, библиотеки BAM не могут увеличиваться в размерах сверх
выделенного им пространства. Память для подбиблиотек выделяется
динамически в пределах пространства библиотеки. Обычно подбиблиотеки