Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Хранить картинки в базе или вне? / 25 сообщений из 108, страница 1 из 5
18.07.2005, 07:42
    #33170444
YurikGL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Тут один человек меня убеждает, что хранить картинки (и документы вообще) всегда нужно вне базы, а хринить нужно только путь. Мол это будет работать быстрее т.к. кэш файловой системы работает с такого рода данными гораздо лучше, чем кэш СУБД (в частности, IB).
На мой вопрос как он будет обеспечивать защиту данных, он ответил, что нужно использовать трехзвенную архитектуру, мол даже если второе звено и СУБД крутятся на одном сервере, данная система все равно будет работать быстрее, чем хранение данных в BLOB.

Насколько последнее является правдой?

_________________________________________________________________________
Разработка и производство аппаратуры связи
...
Рейтинг: 0 / 0
18.07.2005, 08:24
    #33170468
Zmeishe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Бредятина.
...
Рейтинг: 0 / 0
18.07.2005, 08:25
    #33170471
YurikGL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
...
Рейтинг: 0 / 0
18.07.2005, 09:10
    #33170498
Zmeishe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Бредятина - это хранить данные за пределами базы данных.
Для таких данных изобрели BLOB. Насколько я знаю историю - BLOB изобрели в IB. Потом другие СУБД переняли это. А раньше файлы и картинки так и хранили — отдельно.
...
Рейтинг: 0 / 0
18.07.2005, 09:14
    #33170504
YurikGL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
...
Рейтинг: 0 / 0
18.07.2005, 09:19
    #33170510
Zmeishe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Обоснованность создания BLOB сделано не сборищем идиотов, а IT-инженерами, сначала InterBase, а затем Оракла, MS и др. И доказано на международных IT-конференциях.

Поэтому тебе нечего доказывать.
Пусть твой оппонент опровергает инженеров InterBase, Оракла, MS и др.
...
Рейтинг: 0 / 0
18.07.2005, 09:40
    #33170535
Norguhtar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Окей поставим задачу так. Картинки имеют размер 400кб количество 10000 штук. Выбираются все картинки из BLOB 10 клиентами. Теперь вопрос будет ли вся это радость тормозить.

PS Ссылки на инженеров Oracle и т.п. принимаются только с сылками на работы.
...
Рейтинг: 0 / 0
18.07.2005, 09:47
    #33170552
Zmeishe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Если кривыми лапами делать — ТОРМОЗИТЬ будет.

Я не стану расхваливать свои лапы т.к. звёздной болезнью не страдаю.
Но сам делаю так.

1. Создаю ХП, в которой BLOB не выбирается.
2. Создаю другую ХП, в которой на входе ID на выходе BLOB.

Када юзеру надо выборку он пользует 1-ую ХП.
Када из этой выборки ему нада картинку, он пользует 2-ую ХП и получает только один конкретный BLOB.

Тормозов я не встречал.
...
Рейтинг: 0 / 0
18.07.2005, 09:48
    #33170556
YurikGL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
...
Рейтинг: 0 / 0
18.07.2005, 09:54
    #33170571
Zmeishe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
YurikGLНасколько я понимаю, один раз кэшируется СУБД-й...

_________________________________________________________________________
Разработка и производство аппаратуры связи
Если там, что-то и кэшируется, то только в основной таблице мизерные ссылки на BLOB сегмент в другом месте базы. Подробности смотри на www.ibase.ru
...
Рейтинг: 0 / 0
18.07.2005, 09:55
    #33170574
Norguhtar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
авторЯ не стану расхваливать свои лапы т.к. звёздной болезнью не страдаю.
Но сам делаю так.

1. Создаю ХП, в которой BLOB не выбирается.
2. Создаю другую ХП, в которой на входе ID на выходе BLOB.
Када юзеру надо выборку он пользует 1-ую ХП.
Када из этой выборки ему нада картинку, он пользует 2-ую ХП и получает только один конкретный BLOB.

Это называется хорошая мина при плохой игре проще говоря, тупая выборка тормозить будет. Т.е. в таком случае BLOB не должен содержать часто запрашиваемых данных. К примеру вывести каталог товаров со всеми картинками без тормозов не удастся, прийдется хранить два варианта картинок большую и маленькую (иконку), которая и будет отображаться в каталоге.
Именно поэтому в случае web-приложений никто не хранит картинки в BLOB'ах. Поскольку данные идут только на чтение.

автор
Тормозов я не встречал.

При такой реализации тормозов и не будет. Т.к. колега не уточняет ситуацию какие у него картинки, что и как он хранит и как в дальнейшем выводит. Я даю общую рекомендацию не хранить картинки в СУБД.
...
Рейтинг: 0 / 0
18.07.2005, 09:57
    #33170578
Dayroon
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Тут у человека нормально все работает.
тынц
Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
18.07.2005, 09:58
    #33170581
YurikGL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Кроме Web-приложений, есть еще много чего... А ваша рекоммендация не хранить картинки в Blob-е вообще, не уточняя характер приложения и СУБД не верна.

_________________________________________________________________________
Разработка и производство аппаратуры связи
...
Рейтинг: 0 / 0
18.07.2005, 10:11
    #33170600
Norguhtar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
автор
Кроме Web-приложений, есть еще много чего... А ваша рекоммендация не хранить картинки в Blob-е вообще, не уточняя характер приложения и СУБД не верна.

Почитайте ссылку что дал Dayroon там рассматриваются обе позиции. Но многие замечают что хранить данные в BLOB при больших объемах СУБД будет не шибко рационально. Лучше чтобы человек прежде чем размещать какие либо объемные данные понял зачем он это делает и во что это выльется. Если он этого не понимет то луче ему это отсоветовать. Я ни разу не сказал низзя. Я сказал не рекомендуюется. Я просто не делал бы это. А если бы и делал то добился бы размеров BLOB записей до 64кб. Zmeishe привел правильный пример использования BLOB когда лишний раз к нему не обращаются, в вашем случае я сильно сомневаюсь, что вы бы использовали такой вариант.
...
Рейтинг: 0 / 0
18.07.2005, 10:14
    #33170606
Dayroon
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Имхо, там люди сошлись, что при прямых руках работают оба подхода.
Приблуда Автора топика, вроде, нормально работала, при том, что он там
даже видео держал.
Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
18.07.2005, 10:22
    #33170636
Карабас Барабас
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Лично для меня наиболее существенным является то, что в случае хранения файлов в блобах их можно бэкапить/ресторить и таскать вместе с базой (например). Если это не требуется, я бы хранил файлы в файлах
...
Рейтинг: 0 / 0
18.07.2005, 10:41
    #33170692
Zmeishe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
NorguhtarИменно поэтому в случае web-приложений никто не хранит картинки в BLOB'ах.
Чтобы Web не тормозил, там ещё и вытаскивают из БД по 10, 20 записей на одну страницу.
И делают кнопочку >>Следующие 10 записей>>.
С какой стати, при таком подходе, BLOB должен тормозить?
По моему серверу фиолетово где эти картинки лежат.
Тем более, что структура БД на IB — дисковая.
...
Рейтинг: 0 / 0
18.07.2005, 10:45
    #33170704
Norguhtar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
автор
Чтобы Web не тормозил, там ещё и вытаскивают из БД по 10, 20 записей на одну страницу. И делают кнопочку >>Следующие 10 записей>>.

Это делают для удобства пользователя 500 записей на одной странице особо никому не нужны. Ну и на оптимизацию скорости работы конечно тоже.

автор
С какой стати, при таком подходе, BLOB должен тормозить?
По моему серверу фиолетово где эти картинки лежат.
Тем более, что структура БД на IB — дисковая.

Не фиолетово. Накладные расходы на чтение BLOB из базы данных будет выше чем чтение файла с файловой системы. Поскольку СУБД хранит данные поверх файловой системы и в своем формате. Для того чтобы это не сказывалось требуется чтобы BLOB записи помещались в кэш.
...
Рейтинг: 0 / 0
18.07.2005, 12:20
    #33171011
ilias1979
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
В случае weba хранят картинки в файлах только потому, что это специфика weba. В webe просто нельзя вытащить разом одним запросом из базы и инфу и 10 картинок на страницу (потому что http такого не позволит). Поэтому если хранить графику в блобах, то приходится на каждую картинку вызывать скрипт с запросом в итоге чтобы вывести инфу и 10 картинок придется сделать 11 запросов к базе, причем у каждого будет свой коннект это создает лишнюю нагрузку на бд и поэтому в случае webа используются файлы. Повторюсь это просто специфика weba
...
Рейтинг: 0 / 0
18.07.2005, 12:28
    #33171032
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Привет, ilias1979!
Ты пишешь:

ilias1979 i> В случае weba хранят картинки в файлах только потому, что это специфика weba. В webe просто нельзя вытащить
разом одним
i> запросом из базы и инфу и 10 картинок на страницу (потому что http такого не позволит). Поэтому если хранить графику в
i> блобах, то приходится на каждую картинку вызывать скрипт с запросом в итоге чтобы вывести инфу и 10 картинок придется сделать
i> 11 запросов к базе, причем у каждого будет свой коннект это создает лишнюю нагрузку на бд и поэтому в случае webа
i> используются файлы. Повторюсь это просто специфика weba
Вот он, глас разума!

--
With best regards, Мимопроходящий.

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
18.07.2005, 14:41
    #33171495
konstsch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
Код: plaintext
авторВ случае weba хранят картинки в файлах только потому, что это специфика weba. В webe просто нельзя вытащить разом одним запросом из базы и инфу и 10 картинок на страницу (потому что http такого не позволит). Поэтому если хранить графику в блобах, то приходится на каждую картинку вызывать скрипт с запросом в итоге чтобы вывести инфу и 10 картинок придется сделать 11 запросов к базе, причем у каждого будет свой коннект это создает лишнюю нагрузку на бд и поэтому в случае webа используются файлы. Повторюсь это просто специфика weba

Бредятина какая-то.
авторhttp это не позволит - это интересно как?
И что он должен позволять если это просто протокол передачи?

авторПоэтому если хранить графику в блобах, то приходится на каждую картинку вызывать скрипт с запросом в итоге чтобы вывести инфу и 10 картинок придется сделать 11 запросов к базе, причем у каждого будет свой коннект это создает лишнюю нагрузку на бд
я то думал почему некоторые сайты так тормозят оказывается крутые программеры на каждую картинку делаю своё подключение к БД и выкачивают за раз по одной картинке
...
Рейтинг: 0 / 0
18.07.2005, 14:43
    #33171499
Kull Damned
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
konstsch-=censored=-Ты web-программер?
...
Рейтинг: 0 / 0
18.07.2005, 14:44
    #33171506
Di_LIne
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
\\ konstsch
Уважаемый. Вы забыли добавить ИМХО....
...
Рейтинг: 0 / 0
18.07.2005, 14:57
    #33171540
Norguhtar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
ilias1979В случае weba хранят картинки в файлах только потому, что это специфика weba. В webe просто нельзя вытащить разом одним запросом из базы и инфу и 10 картинок на страницу (потому что http такого не позволит). Поэтому если хранить графику в блобах, то приходится на каждую картинку вызывать скрипт с запросом в итоге чтобы вывести инфу и 10 картинок придется сделать 11 запросов к базе, причем у каждого будет свой коннект это создает лишнюю нагрузку на бд и поэтому в случае webа используются файлы. Повторюсь это просто специфика weba

Давно такого гона не слышал. Если у вас в обычном приложении к примеру на дельфе можно это сделать одним запросом, то в web это тоже можно сделать одним запросом на самом деле это зависит от того какое средство используется.
...
Рейтинг: 0 / 0
18.07.2005, 15:02
    #33171561
Di_LIne
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранить картинки в базе или вне?
NorguhtarДавно такого гона не слышал. Если у вас в обычном приложении к примеру на дельфе можно это сделать одним запросом, то в web это тоже можно сделать одним запросом на самом деле это зависит от того какое средство используется.
А аргументы, примеры?
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Хранить картинки в базе или вне? / 25 сообщений из 108, страница 1 из 5
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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