Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как лучше организовать хранение файлов 
:(
    Опции темы
Ingvar
Дата 18.10.2010, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 2.10.2010
Где: Россия

Репутация: нет
Всего: нет



День добрый всем. Разрабатываю программу. И не знаю как лучше организовать хранение файлов. 
Предполагается что будет довольно много динамически создаваемых wysiwyg html документов и линкованных к ним каким-либо образом любым файлам, в частности архивам, видео и аудио. Вопрос, как лучше организовать подобное хранение файлов и доступ к ним, чтобы не дать людям в них ковырятся и в то же время было относительно легко с ними работать?

Благодарен любому дельному совету)

ЗЫ - БД не предлагать.

PM ICQ   Вверх
cat512
Дата 18.10.2010, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 438
Регистрация: 20.3.2007

Репутация: 7
Всего: 15



Ну например, можно поднять выделенный SMB сервер под хранение разных файловых форматов.
Линки к файлам генерить на лету,  при сохранении файла и хранить в соответсвующих табличках  на сервере БД. А при чтении, собирать линк, передавать на клиента и он по линку будет подтягивать нужные данные. 

PM MAIL   Вверх
Ingvar
Дата 18.10.2010, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 2.10.2010
Где: Россия

Репутация: нет
Всего: нет



Не, не, не... Все это дело локально для каждого пользователя. HTML я выбрал исключительно ради удобства разметки документов. Таблицы, диаграммы и прочее... поднимать сервер это тяжеловесное решение..равно как и БД.... 
PM ICQ   Вверх
RomanEEP
Дата 18.10.2010, 22:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 424
Регистрация: 18.5.2006
Где: Коломна

Репутация: 5
Всего: 8



Ole Structured Storage - для него есть даже враппер в JCL . Принцип работы - хранит дерево каталогов, подобно диску в Windows, но лежит одним файлом.

Если бюджет позволит, то можно использовать коммерческие аналоги вроде Solid File System / Single File System
PM MAIL   Вверх
Ingvar
Дата 22.10.2010, 15:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 2.10.2010
Где: Россия

Репутация: нет
Всего: нет



Спасибо, погуглю эту тему...
PM ICQ   Вверх
_Dimon_
Дата 23.10.2010, 09:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 243
Регистрация: 25.6.2007
Где: Украина

Репутация: нет
Всего: 1



Цитата(Ingvar @  18.10.2010,  15:21 Найти цитируемый пост)
БД не предлагать.


Почему, если не секрет? smile 
PM MAIL   Вверх
RomanEEP
Дата 23.10.2010, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 424
Регистрация: 18.5.2006
Где: Коломна

Репутация: 5
Всего: 8



Думаю реляционные БД не лучший способ хранения сравнительно небольшого (для БД ) количества довольно больших файлов. Т.е по той же причине, по которой есть файловые системы вместо традиционных БД.
PM MAIL   Вверх
Alexeis
Дата 23.10.2010, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



  Не уверен на счет скорости, но может использовать какой нить архив типа 7zip с шифрованием, но без сжатия. 7zip открытый формат.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Ingvar
Дата 24.10.2010, 00:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 2.10.2010
Где: Россия

Репутация: нет
Всего: нет



_Dimon_, Потому что это только добавит проблем при создании легко-установочной и портативной программы) Можно конечно замутить embedded версию того же Firebird... но это мне почему то не кажется хорошей идеей. К тому же мысль о том, что в BLOB поля кому то захочется кинуть видео файл на метров 800 а потом его посмотреть...а если (а скорее так и будет) таких файлов будет много... что то мне страшно smile


Alexeis, Хм.. если там можно будет замутить структуру файлов и наладить способ обращения к нужным, то возможно и покатит все это дело...Спасибо ;)


RomanEEP, Поискал на эту тему... с OLE Storage рабочих примеров (по крайней мере под Delphi не нашел), а SFS и впрямь довольно клевый вариант, но не дешевый...
PM ICQ   Вверх
RomanEEP
Дата 24.10.2010, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 424
Регистрация: 18.5.2006
Где: Коломна

Репутация: 5
Всего: 8



Могу чуть попозже скинуть свой Wrapper для OLE Storage.
В библиотеке JCL есть юнит для работы с ним - JclStructStorage.pas  и даже проект тестовый - StructStorageExample.dpr

По поводу ZIP 7Z файлов - пытался сделать с ними что такое но откнулся в такую проблему - если есть архив где 100 файлов по 100 мегабайт и в этом архиве удаляеш первый файл, то при удалении архиватор перемещает 9900 Мегабайт, чтобы удалить этот файл. Это приводит к серьезныи проблемам в производительности.
PM MAIL   Вверх
Alexeis
Дата 24.10.2010, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Цитата(RomanEEP @  24.10.2010,  11:12 Найти цитируемый пост)
и в этом архиве удаляеш первый файл, то при удалении архиватор перемещает 9900 Мегабайт, чтобы удалить этот файл. Это приводит к серьезныи проблемам в производительности. 

  Это наверное в случае непрерывного архива. Или всегда? Еще вариант взять исходники FAT32 из WinCE и перенаправить вывод в файл. 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Ingvar
Дата 24.10.2010, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 2.10.2010
Где: Россия

Репутация: нет
Всего: нет



RomanEEP, Да, я уже познакомился с этой траблой вчера, поэтому думаю разбивать все не на один файл, а на "тома". Понедельные или помесячные.. Это должно сгладить ситуацию...

Насчет JCL тоже пробовал...либо поставил не ту версию или еще что-то но не смог найти там нужных компонент... Да и боюсь реализация сложна будет. С 7Z я разобрался за минут 5..
PM ICQ   Вверх
Ingvar
Дата 24.10.2010, 19:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 2.10.2010
Где: Россия

Репутация: нет
Всего: нет



Хм...таки нашел нужный пакет JEDI откопал там юнит с примером, но почему то файлы не хотят добавлятся в хранилище даже  в исходном примере =\

Это сообщение отредактировал(а) Ingvar - 24.10.2010, 21:09
PM ICQ   Вверх
Ingvar
Дата 24.10.2010, 23:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 2.10.2010
Где: Россия

Репутация: нет
Всего: нет



Народ, не ожидал что найду бесплатный SFS компонент, к тому же на торри. Бегло посмотрел - работает на ура)

P.S. Только не компонент, а модули...но там все довольно прозрачно ;)


Это сообщение отредактировал(а) Ingvar - 24.10.2010, 23:57

Присоединённый файл ( Кол-во скачиваний: 10 )
Присоединённый файл  SingleFileDataStorage1.4.1.zip 467,21 Kb
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0602 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.