![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Ingvar |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 2.10.2010 Где: Россия Репутация: нет Всего: нет |
День добрый всем. Разрабатываю программу. И не знаю как лучше организовать хранение файлов.
Предполагается что будет довольно много динамически создаваемых wysiwyg html документов и линкованных к ним каким-либо образом любым файлам, в частности архивам, видео и аудио. Вопрос, как лучше организовать подобное хранение файлов и доступ к ним, чтобы не дать людям в них ковырятся и в то же время было относительно легко с ними работать? Благодарен любому дельному совету) ЗЫ - БД не предлагать. |
|||
|
||||
| cat512 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 438 Регистрация: 20.3.2007 Репутация: 7 Всего: 15 |
Ну например, можно поднять выделенный SMB сервер под хранение разных файловых форматов.
Линки к файлам генерить на лету, при сохранении файла и хранить в соответсвующих табличках на сервере БД. А при чтении, собирать линк, передавать на клиента и он по линку будет подтягивать нужные данные. |
|||
|
||||
| Ingvar |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 2.10.2010 Где: Россия Репутация: нет Всего: нет |
Не, не, не... Все это дело локально для каждого пользователя. HTML я выбрал исключительно ради удобства разметки документов. Таблицы, диаграммы и прочее... поднимать сервер это тяжеловесное решение..равно как и БД....
|
|||
|
||||
| RomanEEP |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 18.5.2006 Где: Коломна Репутация: 5 Всего: 8 |
Ole Structured Storage - для него есть даже враппер в JCL . Принцип работы - хранит дерево каталогов, подобно диску в Windows, но лежит одним файлом.
Если бюджет позволит, то можно использовать коммерческие аналоги вроде Solid File System / Single File System |
|||
|
||||
| Ingvar |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 2.10.2010 Где: Россия Репутация: нет Всего: нет |
Спасибо, погуглю эту тему...
|
|||
|
||||
| _Dimon_ |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 243 Регистрация: 25.6.2007 Где: Украина Репутация: нет Всего: 1 |
||||
|
||||
| RomanEEP |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 18.5.2006 Где: Коломна Репутация: 5 Всего: 8 |
Думаю реляционные БД не лучший способ хранения сравнительно небольшого (для БД ) количества довольно больших файлов. Т.е по той же причине, по которой есть файловые системы вместо традиционных БД.
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Не уверен на счет скорости, но может использовать какой нить архив типа 7zip с шифрованием, но без сжатия. 7zip открытый формат.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Ingvar |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 2.10.2010 Где: Россия Репутация: нет Всего: нет |
_Dimon_, Потому что это только добавит проблем при создании легко-установочной и портативной программы) Можно конечно замутить embedded версию того же Firebird... но это мне почему то не кажется хорошей идеей. К тому же мысль о том, что в BLOB поля кому то захочется кинуть видео файл на метров 800 а потом его посмотреть...а если (а скорее так и будет) таких файлов будет много... что то мне страшно
Alexeis, Хм.. если там можно будет замутить структуру файлов и наладить способ обращения к нужным, то возможно и покатит все это дело...Спасибо ;) RomanEEP, Поискал на эту тему... с OLE Storage рабочих примеров (по крайней мере под Delphi не нашел), а SFS и впрямь довольно клевый вариант, но не дешевый... |
|||
|
||||
| RomanEEP |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 18.5.2006 Где: Коломна Репутация: 5 Всего: 8 |
Могу чуть попозже скинуть свой Wrapper для OLE Storage.
В библиотеке JCL есть юнит для работы с ним - JclStructStorage.pas и даже проект тестовый - StructStorageExample.dpr По поводу ZIP 7Z файлов - пытался сделать с ними что такое но откнулся в такую проблему - если есть архив где 100 файлов по 100 мегабайт и в этом архиве удаляеш первый файл, то при удалении архиватор перемещает 9900 Мегабайт, чтобы удалить этот файл. Это приводит к серьезныи проблемам в производительности. |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Это наверное в случае непрерывного архива. Или всегда? Еще вариант взять исходники FAT32 из WinCE и перенаправить вывод в файл. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Ingvar |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 2.10.2010 Где: Россия Репутация: нет Всего: нет |
RomanEEP, Да, я уже познакомился с этой траблой вчера, поэтому думаю разбивать все не на один файл, а на "тома". Понедельные или помесячные.. Это должно сгладить ситуацию...
Насчет JCL тоже пробовал...либо поставил не ту версию или еще что-то но не смог найти там нужных компонент... Да и боюсь реализация сложна будет. С 7Z я разобрался за минут 5.. |
|||
|
||||
| Ingvar |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 2.10.2010 Где: Россия Репутация: нет Всего: нет |
Хм...таки нашел нужный пакет JEDI откопал там юнит с примером, но почему то файлы не хотят добавлятся в хранилище даже в исходном примере =\
Это сообщение отредактировал(а) Ingvar - 24.10.2010, 21:09 |
|||
|
||||
| Ingvar |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 2.10.2010 Где: Россия Репутация: нет Всего: нет |
Народ, не ожидал что найду бесплатный SFS компонент, к тому же на торри. Бегло посмотрел - работает на ура)
P.S. Только не компонент, а модули...но там все довольно прозрачно ;) Это сообщение отредактировал(а) Ingvar - 24.10.2010, 23:57 Присоединённый файл ( Кол-во скачиваний: 10 )
SingleFileDataStorage1.4.1.zip 467,21 Kb |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |