Псевдо BLOB поля

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
Guardian777
Сообщения: 33
Зарегистрирован: 09 июл 2009, 14:57

Псевдо BLOB поля

Сообщение Guardian777 » 27 сен 2010, 11:59

Добрый день.
Столкнулся с проблемой хранения файлов больших объемов на сервере. Устанавливать FTP сервер рядом с сервером Firebird нежелательно, т.к. я являюсь разработчиком, ПО которое использует Firebird, а у наших пользователей возникают проблемы даже при установки Firebird на сервер.
Хотелось бы обойтись установкой только Firebird.
Использовать BLOB поля не хочется по той причине, что при изменении БД и до чистки размер поля будет расти с изменением данного поля.
Суть вопроса состоит в том есть ли механизмы для чтения/записи файлов на сервер без хранения версионности осуществляемые через Firebird?
Я примерно это вижу таким образов:
1) Создается вычисляемое поле типа BLOB
2) Создается UDF, которая читает файлы в поток

У кого какие мыли по данному вопросу?

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: Псевдо BLOB поля

Сообщение Dimitry Sibiryakov » 27 сен 2010, 17:23

Слова "чистка БД" и "размер поля будет расти" намекают, что что-то неладно в консерватории.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: Псевдо BLOB поля

Сообщение kdv » 28 сен 2010, 21:04

Использовать BLOB поля не хочется по той причине, что при изменении БД и до чистки размер поля будет расти с изменением данного поля.
мда. я не понял этой фразы. что за чистка, и что значит "расти с изменением данного поля", если blob занимает столько, сколько в него записано?
Создается вычисляемое поле типа BLOB
Любое вычисляемое поле - это поле, результат которого вычисляется на основе чего-то уже существующего.
Создается UDF, которая читает файлы в поток
на сайте есть udf
http://www.ibase.ru/download/blobsaveload.zip
которые позволяют на сервере заливать блобы из файлов и экспортировать блобы в файлы. А вот "транслировать" файлы через сервер в виде "вычисляемых блобов" не получится. По разным причинам, но не получится абсолютно точно.

Ответить