Гость
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Как лучше хранить файлы в базе? / 25 сообщений из 36, страница 1 из 2
17.07.2014, 11:08
    #38698713
prog123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Имеется в виду хранение полных имен файлов вместе с путями возможность переезда базы в новую аппаратную и программную среду.
Поделитесь опытом и наступанием на грабли.
...
Рейтинг: 0 / 0
17.07.2014, 11:26
    #38698738
йцук1212
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
хранить отдельно:
* имя
* дату файла
* путь (путь может иметь теги %xxx% кот. локально переводятся в реальный путь к "Мои Документы", "Мои картинки", "МоеПриложение" и т.д.)

При сохранении файла на диск присваивать ему его родную дату (из БД).
...
Рейтинг: 0 / 0
17.07.2014, 12:10
    #38698821
Infernal V. Raven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
prog123,

Холиварный вопрос, обсуждался не раз. Озвучь требования.
...
Рейтинг: 0 / 0
17.07.2014, 13:05
    #38698948
mad_nazgul
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
prog123Имеется в виду хранение полных имен файлов вместе с путями возможность переезда базы в новую аппаратную и программную среду.
Поделитесь опытом и наступанием на грабли.

Oracle и MS SQL умеют хранить файлы в БД.
Без проседания по производительности.
...
Рейтинг: 0 / 0
17.07.2014, 13:10
    #38698963
prog123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Речь чиста про корректное хранение полных путей. Вот с датой тут уже напомнили.

Хранение самих файлов внутри базы не актуально.
...
Рейтинг: 0 / 0
17.07.2014, 13:14
    #38698974
Infernal V. Raven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
prog123Хранение самих файлов внутри базы не актуально.Так требования то какие?
...
Рейтинг: 0 / 0
17.07.2014, 13:16
    #38698979
prog123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Infernal V. Ravenprog123Хранение самих файлов внутри базы не актуально.Так требования то какие?

Боюсь наступить на грабли при распространении базы у клиентов.
...
Рейтинг: 0 / 0
17.07.2014, 13:23
    #38698997
prog123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Infernal V. Ravenprog123Хранение самих файлов внутри базы не актуально.Так требования то какие?

Требования простые. При переезде базы на новое место и разворачивании её из бэкапа, а также распаковки и разворачивании архива с файлами, все файлы должны открываться так же, как и до переезда:)
...
Рейтинг: 0 / 0
17.07.2014, 13:34
    #38699012
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
prog123,
Под эти элементарные подходит - Аккуратный бэкап и аккуратно из zip
...
Рейтинг: 0 / 0
17.07.2014, 13:46
    #38699035
prog123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Но новом месте буковки сетевых дисков могут быть другие..
...
Рейтинг: 0 / 0
17.07.2014, 13:57
    #38699057
Infernal V. Raven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
prog123Но новом месте буковки сетевых дисков могут быть другие..Логично хранить относительные пути. Основное местоположение (диск, директория) в настройках.
...
Рейтинг: 0 / 0
17.07.2014, 14:17
    #38699102
mad_nazgul
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
prog123Infernal V. Ravenпропущено...
Так требования то какие?

Боюсь наступить на грабли при распространении базы у клиентов.

Тады ой!
Самый простой способ ч/з переменные окружения.
Т.е. все пути в БД прописываются как %MY_DIRECTORY_FOR_SAVE_FILES%\<bla-bla-bla>
А в ОС SET MY_DIRECTORY_FOR_SAVE_FILES = <bla-bla>
...
Рейтинг: 0 / 0
17.07.2014, 14:29
    #38699126
рубист
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Infernal V. Ravenprog123Но новом месте буковки сетевых дисков могут быть другие..Логично хранить относительные пути. Основное местоположение (диск, директория) в настройках.

Достаточно основного пути к файлам (в настройках программы или еще где-то),
а структуру папок этого хранилища и где какие файлы зашить в программу.
Относительный путь в этом случае хранить в БД не нужно (если только не планируете давать пользователю возможность выбирать путь при сохранении).

PS в БД, по мимо названия файла и даты\времени, бывает полезно хранить размер файла в байтах и его content-type.
...
Рейтинг: 0 / 0
17.07.2014, 14:39
    #38699142
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
prog123Но новом месте буковки сетевых дисков могут быть другие..
Ну Ивааан Ивааааныч))))))
В первый раз что ли?
...
Рейтинг: 0 / 0
17.07.2014, 15:06
    #38699208
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
prog123Требования простые. При переезде базы на новое место и разворачивании её из бэкапа, а также распаковки и разворачивании архива с файлами, все файлы должны открываться так же, как и до переезда:)
В морг. Это требование несовместимо с хранением путей вообще никак.

Для начала представьте, что архив, полученный на Windows распаковали в Linux.
...
Рейтинг: 0 / 0
17.07.2014, 16:29
    #38699388
Infernal V. Raven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
рубистДостаточно основного пути к файлам (в настройках программы или еще где-то),
а структуру папок этого хранилища и где какие файлы зашить в программу.
Относительный путь в этом случае хранить в БД не нужно (если только не планируете давать пользователю возможность выбирать путь при сохранении).Это что за поток сознания? Какую структуру, что "зашивать"?
...
Рейтинг: 0 / 0
17.07.2014, 17:16
    #38699470
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Dimitry SibiryakovДля начала представьте, что архив, полученный на Windows распаковали в Linux.
+1
или папку с игрушками из дома распаковали на работе )))
Это базовый вопрос компьютеров вообще).
...
Рейтинг: 0 / 0
17.07.2014, 17:55
    #38699522
prog123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Получается, что полное имя файла нужно хранить в виде 2-х половинок:
1 - имя устройства + начальный каталог,
2 - полное имя без 1-й части.
...
Рейтинг: 0 / 0
17.07.2014, 18:16
    #38699562
рубист
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Infernal V. RavenрубистДостаточно основного пути к файлам (в настройках программы или еще где-то),
а структуру папок этого хранилища и где какие файлы зашить в программу.
Относительный путь в этом случае хранить в БД не нужно (если только не планируете давать пользователю возможность выбирать путь при сохранении).Это что за поток сознания? Какую структуру, что "зашивать"?

Если файлы имеют определенное назначение (картинки товаров, сертификаты качества, другие файлы которые можно классифицировать),
то структуру папок для них можно организовать по своему и не пускать к этому пользователей. Больше порядка будет. Так понятнее?
В этом контексте, что не понятно в фразе "структуру папок этого хранилища и где какие файлы зашить в программу"?
...
Рейтинг: 0 / 0
17.07.2014, 18:32
    #38699588
Infernal V. Raven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
рубистЕсли файлы имеют определенное назначение (картинки товаров, сертификаты качества, другие файлы которые можно классифицировать),
то структуру папок для них можно организовать по своему и не пускать к этому пользователей. Больше порядка будет. Так понятнее?
В этом контексте, что не понятно в фразе "структуру папок этого хранилища и где какие файлы зашить в программу"?В исходной постановке задачи не было таких требований. Вообще непонятно как имена файлов попадают в базу, а ты уже категоризацию предлагаешь. И даже "зашивать".
...
Рейтинг: 0 / 0
17.07.2014, 18:48
    #38699605
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
И правильно предлагает. Нефиг сначала бардак плодить (т.к. "отсутствие бардака" не было в исходной постановке задачи), а потом с ним доблестно бороться.

Я в свое время делал так:

ID-записи + ID-хранилища файлов + тип + имя внутри хранилища (построенное по рекомендованным пользователю правилам или просто ID) + всякая прочая информация

При этом хранилище могло быть как папка на диске, так и "хранить внутри БД".
...
Рейтинг: 0 / 0
17.07.2014, 18:55
    #38699608
рубист
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Infernal V. RavenрубистЕсли файлы имеют определенное назначение (картинки товаров, сертификаты качества, другие файлы которые можно классифицировать),
то структуру папок для них можно организовать по своему и не пускать к этому пользователей. Больше порядка будет. Так понятнее?
В этом контексте, что не понятно в фразе "структуру папок этого хранилища и где какие файлы зашить в программу"?В исходной постановке задачи не было таких требований. Вообще непонятно как имена файлов попадают в базу, а ты уже категоризацию предлагаешь. И даже "зашивать".

Не понятно как попадают, зато понятно как должны хранится,
при этом .....

prog123Infernal V. Ravenпропущено...
Так требования то какие?
Требования простые. При переезде базы на новое место и разворачивании её из бэкапа, а также распаковки и разворачивании архива с файлами, все файлы должны открываться так же, как и до переезда:)
...
Рейтинг: 0 / 0
17.07.2014, 18:56
    #38699610
Infernal V. Raven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Leonid KudryavtsevИ правильно предлагает. Нефиг сначала бардак плодить (т.к. "отсутствие бардака" не было в исходной постановке задачи), а потом с ним доблестно бороться.А кто предлагает бардак разводить? Бизнес-задача не озвучена. Если файлы, например, будут грузить пользователи, то нужно решать задачу совпадающих имен файлов. Если файлы используются как ресурсы то и подход будет соответствующий.
...
Рейтинг: 0 / 0
17.07.2014, 19:00
    #38699614
Infernal V. Raven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
рубистНе понятно как попадают, зато понятно как должны хранится,
при этом .....Способ хранения тоже от задачи зависит, не так ли?
...
Рейтинг: 0 / 0
17.07.2014, 19:10
    #38699621
рубист
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше хранить файлы в базе?
Infernal V. RavenрубистНе понятно как попадают, зато понятно как должны хранится,
при этом .....Способ хранения тоже от задачи зависит, не так ли?

Согласен.
prog123 "огласите полный список пжалста", а то мы сейчас насоветуем ..... :)
...
Рейтинг: 0 / 0
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Как лучше хранить файлы в базе? / 25 сообщений из 36, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]