Доброго времени суток!
Alexey Voytsehovich пишет:
но не устраняет проблем с фрагментацией исходного бд файла.
А вообще почему он возникает? У Вас же только вставка и удаление?
Вставка сама по себе вроде бы не должна приводить к сильной
фрагментации. А вот удаление, и последующая сборка мусора, вместе со
вставкой - вполне может. Но по идее, DROP TABLE просто помечает скопом
соответствующие страницы как свободные, а это довольно шустрая операция,
и сильной фрагментации быть не должно. Пусть разработчики меня поправят,
если что.
обычная хранимка имхо :)
Нет, простой хранимкой не получится - тогда будут зависимости и удалить
таблицу Вы никак не сможете.
Я предлагал следующий вариант - есть таблицы
DATA_00001 , DATA_00002 и т.д., содержащие сами данные
и есть таблица, хранящая информацию о периодах.
Соответственно, чтобы сделать выборку по временному диапазону,
нужно обратиться к таблице периодов, определить какие таблицы будут
использоваться и сформировать запрос. Если делать это на стороне
сервера, то потребуется ES+EB.
Чтобы удалить таблицу, сначала нужно снести запись о ней в таблице
периодов. Правда, делать это придется в монопольном режиме, но простой
составит несколько секунд (если все обращения к таблице периодов будут
через ХП, то можно попробовать обернуть операции чтения/записи
через mutex - на ibase.ru вроде были соответствующие UDF).
В общем, эмуляция сегментирования средствами FB :)
--
С уважением, Евгений