СУБД LeoBase: система буферизации LeoBase Smart Filer

(Продолжение. Начало в №7-9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22)

Сегодня мы расскажем о системе буферизации файлов LeoBase Smart Filer.

Диспетчер файлов LeoBase Smart Filer - мощный инструмент работы с файлами. При его использовании доступ к файлам, по сравнению с обычными средствами, многократно ускоряется. Систему буферизации разработчики LeoBase решили вынести в интерфейс СУБД. Это решение обеспечило существенное повышение эффективности работы с базами данных, созданными на основе LeoBase. По сравнению с традиционными файловыми средствами, система LeoBase Smart Filer обладает существенными преимуществами и, фактически, является средством для организации виртуальных массивов информации. При работе с файлами на диске LSF не обращается напрямую к функциям операционной системы, а вызывает специальные триггеры, которые разработчик может определить сам. Благодаря этому, под файлом в LSF может пониматься любое устройство со случайным доступом.

По сравнению со стандартным набором, набор операций с файлами в LeoBase Smart Filer значительно расширен. Например, в связи с тем, что LSF хранит имена файлов, можно осуществлять поиск по шаблону среди файлов, зарегистрированных под LSF, то есть по таким же правилам, как, скажем, операционная система MS-DOS, но, разумеется, без дисковой работы. Если необходимо найти файл, зарегистрированный под LSF, то эти средства позволяют использовать его в качестве полноценного файлового менеджера.

Как и все части LeoBase, диспетчер файлов обладает мощной системой триггеров, что позволяет переопределить или дополнить практически все стандартные действия LeoBase Smart Filer - подключить ведение статистики операций с файлами, кодирование записываемой на диск информации и т.д. Перекрыв триггеры, можно адаптировать LeoBase Smart Filer к работе на других платформах и организовать доступ к абстрактному устройству, например, к удаленному носителю по выделенному каналу.

Одно из преимуществ, предоставляемых LSF - буферизация чтения и записи (буфер - это часть памяти, которая выделяется для ускорения многократного доступа к файлам). LeoBase обеспечивает гибкую работу с буфером. Параметры буферизации позволяют установить уровень привилегий файлов сообразно их важности, гибкую буферизацию частей одного файла, отложенную запись и другие свойства. При наличии свободной памяти LeoBase Smart Filer в состоянии забрать ее всю целиком, что существенно повышает быстродействие системы, однако при необходимости у него можно забрать эту память в том объеме, который необходим. Нуждающаяся в памяти прикладная программа должна при этом обратиться не к операционной системе, а к ядру LeoBase. При работе в Windows обращение к функциям ядра LeoBase не обязательно, поскольку, по запросу Windows, LSF в состоянии сам освободить нужное количество памяти.

Достаточно удобным делают диспетчер файлов LeoBase многочисленные надстройки над файловой системой. Например, LSF позволяет заполнить отдельный отрезок файла определенным байтовым значением, поддерживает возможность вставки или вырезки этого значения с любой заданной позиции.

Число открытых или созданных средствами LSF файлов не зависит от максимального заданного DOS количества дескрипторов файлов. LeoBase Smart Filer регистрирует столько файлов, сколько необходимо, снимая эту проблему в принципе. Работая через собственные дескрипторы, LeoBase Smart Filer в любой момент может открыть любой необходимый файл, а также отдать необходимое количество дескрипторов нуждающейся в них прикладной программе.

В LeoBase Smart Filer имеется возможность задать отложенное создание файла. То есть файл не создается на диске сразу, а только тогда, когда появляется необходимость записать что-то на диск. Режим этот может быть весьма полезным для работы с временными файлами LSF при наличии большого объема оперативной памяти.

В LeoBase Smart Filer имеется система обработки ошибок. Специальный триггер (функция) обработки ошибок способен обрабатывать их автоматически, хотя, при самостоятельной обработке, эту функцию можно и отключить.

Диспетчер LSF позволяет размещать файлы на разных физических носителях, что в подавляющем большинстве случаев снимает проблему нехватки места для файлов. Когда данные перестают умещаться в имеющемся объеме дискового пространства, LeoBase позволяет добавлять в систему новые диски без реструктурирования БД. Таким образом, в случае нехватки места имеется возможность спасения информации с помощью отдельных носителей, в качестве которых могут использоваться даже дискеты. При следующем сеансе работы информацию с этих носителей можно, освободив место, перенести на основные носители. Наличие механизма распределенных каталогов делает возможным размещение больших баз данных на сменных носителях (например, на CD-ROM). Для программиста распределенные каталоги реализованы совершенно прозрачно, а работа с файлами, находящимися на нескольких устройствах одновременно, ничем не отличается от обычной. Учитывая, что различные носители характеризуются разным временем доступа, LeoBase Smart Filer присваивает каждому устройству особый индекс производительности и, в соответствии с этим, старается разместить файлы оптимальным образом.

(Продолжение следует)

Владимир КОТЛЯРОВ,
"СофтИнформ", тел. 213-28-13,
e-mail:
ui@activ.minsk.by

Версия для печатиВерсия для печати

Номер: 

24 за 1997 год

Рубрика: 

Базы данных
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!