Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема с внешними файлами в FireBird [D7, FireBird]


Shadow Of Templar ©   (2004-06-03 14:38:00) 

Здравствуте!
База данных FireBird.
Есть такая проблема, необходимо обрабатывать внешние файлы больших размеров (около 10 Мб). Непосредственно самой обработкой будет заниматься UDF, но возникла проблема передачи этих файлов в UDF. Подскажите как это можно организовать (в обе стороны)?
Хранение данных в BLOB полях невозможно, так как база будет раздуваться слишком быстро (примерно 200 мегабайт в день).


Shadow Of Templar   (2004-06-03 15:22:00) [1]

Данные каждый раз пересчитываются по-разному, в зависимости от ситуации. Хранить такое количество не нужно, потому как база разростется неимоверно и работать станет медленнее, к тому же эти данные не настолько часто нужны чтобы их хранить в базе.
А при репликации они вообще вряд ли будут нужны.

2 Соловьев:  Под серваком понимается сервер FireBird.

2 Fay:  Простите за нескромный вопрос, а через пайп это как?


avgur   (2004-06-03 15:14:00) [2]

http://www.ibase.ru/devinfo/udf_ok.htm


Соловьев   (2004-06-03 15:09:00) [3]


> [9] Shadow Of Templar   (03.06.04 15:07)

почему нельзя это в БД загнать? 1 запись 8 байт - ну и пиши себе в таблицу. в чем трабл?


Shadow Of Templar   (2004-06-03 15:07:00) [4]

Данных ну ООООЧЕНЬ много, размер одной записи в файле примерно 8 байт, а файл 10 Мб. И все это по сети, долго сеть не протянет, особенно с учетом того, что данные идут одновременно примерно от 15-20 клиентов.


Соловьев   (2004-06-03 14:59:00) [5]


> А если сервак поставят на каком-нить Вынь98

это не сервак


Shadow Of Templar   (2004-06-03 14:58:00) [6]

Так не открывать же для этого сетевую папку. А если сервак поставят на каком-нить Вынь98? Там же даже прав не задать.
Я бы хотел его передавать как поток а на лругой стороне принимать UDF, но так не получается. Поэтому вопрос, как это можно сделать в обход базы?


Fay   (2004-06-03 14:58:00) [7]

А данные пересчёта сразу передать низя?


Fay   (2004-06-03 14:57:00) [8]

создай пайп на сервере и суй в него (файл).


Соловьев   (2004-06-03 14:54:00) [9]


> В качестве параметра передавать имя нельзя, так как сам
> файл лежит у клиента.

ну Вы же на сервер собираетесь его выложить? или что-то я ничего не пойму :)


Shadow Of Templar   (2004-06-03 14:51:00) [10]

Внешние файл не txt. Хранить их нужно рядом с базой, на сервере, так как иногда они должны обрабатываться UDF. Проще говоря периодически возникает необходимость пересчета данных, которые в них хранятся.
В качестве параметра передавать имя нельзя, так как сам файл лежит у клиента. Цель перенести его на сервер. Возможно через поток, но UDF не воспринимает BLOB извне и не передает их во "внешний мир". А обратно их передавать тоже иногда необходимо.


jack128   (2004-06-03 14:43:00) [11]


> но возникла проблема передачи этих файлов в UDF. Подскажите
> как это можно организовать (в обе стороны)?
В качестве параметра UDF передовать имя файла.


Соловьев   (2004-06-03 14:42:00) [12]

А не проще это сделать на клиенте? И что за внешние файлы? txt?


Наверх

Титульная страница Поиск, карта сайта Написать письмо