Проект «Простая база данных»
Создать пакет для создания/поддержки/доступа простой базы данных на основе файлов. Пакет должен поддерживать:
- создание нового файла, содержащего базу даных
- открытие существующей базы данных
- последовательный доступ
- быстрый (логарифмический -- B-деревья, или константный -- hash) доступ к паре <ключ, данное> по ключу
- в качестве данных могут быть использованы двоичные данные произвольной длины
- в качестве ключа -- двоичные данные произвольной длины, но с фиксированным ограничением в одном файле
- атомарность операций (для одного процесса)
- контроль размеров файла (чистка, удаление незакрытых транзакций и проч.)