Доброго времени суток!

Alexey Voytsehovich пишет:
но не устраняет проблем с фрагментацией исходного бд файла.

А вообще почему он возникает? У Вас же только вставка и удаление?
Вставка сама по себе вроде бы не должна приводить к сильной фрагментации. А вот удаление, и последующая сборка мусора, вместе со вставкой - вполне может. Но по идее, DROP TABLE просто помечает скопом соответствующие страницы как свободные, а это довольно шустрая операция, и сильной фрагментации быть не должно. Пусть разработчики меня поправят, если что.

обычная хранимка имхо :)
Нет, простой хранимкой не получится - тогда будут зависимости и удалить
таблицу Вы никак не сможете.
Я предлагал следующий вариант - есть таблицы
DATA_00001 , DATA_00002 и т.д., содержащие сами данные
и есть таблица, хранящая информацию о периодах.

Соответственно, чтобы сделать выборку по временному диапазону,
нужно обратиться к таблице периодов, определить какие таблицы будут
использоваться и сформировать запрос. Если делать это на стороне сервера, то потребуется ES+EB.

Чтобы удалить таблицу, сначала нужно снести запись о ней в таблице периодов. Правда, делать это придется в монопольном режиме, но простой составит несколько секунд (если все обращения к таблице периодов будут через ХП, то можно попробовать обернуть операции чтения/записи
через mutex - на ibase.ru вроде были соответствующие UDF).

В общем, эмуляция сегментирования средствами FB  :)

--
С уважением, Евгений

Ответить