|
|
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
проектируем БД для сканирования Как лучше сохранять картинки в полях таблиц или отдельно в файлах, а к ним иметь только линки ? база будет расти примерно по Гигабайту в год ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2002, 23:52:26 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
Скорее всего хранить надо линки на файлы, только предусмотрите возможность смены имени сервера... Почему так? 1. Работа с файлами осуществляется файл-сервером долже быть _не_медленее_ (читать: скорее всего быстрее) чем с БД. Не надо открывать никакие стримы итд. 2. Стоимость Сервера БД должна быть больше чем стоимость файлсервера при прочих равных. Следовательно убрав файлы на файл сервер мы уменьшаем себестоимость решения. 3. То время которое будет потрачено на вычитывание файла из датабаз файла можно былобы потратить на обработку других транзакций. Т.е. разместив файлы на файл сервере мы уменьшаем размер транзакции, следовательно уменьшаем ее стоимость. Вот в таком аспекте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 01:41:28 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
папа Карло, очень верно подметил все плюсы файл сервера. Остается только добавить, что работа с полями типа text/image отличается от работы со строковыми полями в худшую сторону (по моим ощущениям). Однако, у такой схемы есть минус, изменение файла на диске трудно связать с изменением записи в таблице. И если ОЧЕНЬ важна именно целостность, то, например, мы не решились на такой вариант, к тому же объем хранимых файлов у нас не очень большой. Поэтому решать Вам а база в несколько Gb, это не такая уж и большая база... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 10:04:09 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
Опять же смотря для каких задач - если обращаться к БД клиенты будут через WWW, то хранить лучше в БД. Единственное стоит подумать об ограничении объема изображения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 11:35:00 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
ну ... не обязательно... если через www то в базе.... можно и через ftp, и через www , а в базе хранить урл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 11:38:47 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
В MSDN есть сэмпл ColdStorage, в котором описано, почему в БД хранить лучше. Вкратце - тесты, которые они провели, показали, что работа с файловой системой иногда даже проигрывает по скорости SQL Server'у. Удачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 12:10:21 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
День добрый. Я как раз занимаюсь разработкой системы для хранения графики. Всего предполагается хранить около миллиона изображений, каждое размером от 20К до 120К. Сначала предполагалось организовать файл-сервер, но когда количество файлов превысило 10000 появились проблемы с файловой системой - папка содержащая такое количество файлов открывается несколько минут. Соответственно скорость работы никакая. Плюс к этому нет никакой гарантии целостности линков. Плюс отслеживание обновлений при сборе отсканированной информации с нескольких объектов. Поэтому пришли к MSSQL серверу. Скорость закачки или выгрузки изображения минимальна. Каких-либо особенностей в работе с типом image нет. К тому же сервер берет на себя все проблемы с репликацией. Что касается себестоимости решения, то скупой, как известно, платит дважды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 13:20:25 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
: В MSDN есть сэмпл ColdStorage, в котором описано, почему в БД хранить лучше. : Вкратце - тесты, которые они провели, показали, что работа с файловой системой иногда даже проигрывает по скорости SQL Server'у. еще в мсдне написано, что надо с скл сервера посылать xml на юзер интерфейс. да это будет быстрее чем посылать рекордсет на бизнес-логику, а потом на ней делать хмл и отправлять его на ЮАй. только если есть требование, что отклик системы не более n секунд и оба подхода укладываются в это время, то надо пользовать бизнес логику ибо за освободившееся время датабаз сервер обслужит остальных клиентов. наращиваемость системы когда все идет из одной дырки у вас будет только одна -- платить майкрософту больше денег за софт, когда будет подыхать БД (хотя 1Гб не столь большая база...). при приросте данных 1Гб в год вы будете иметь гораздо больше 10Гб через 10 лет (индексы растут быстрее). ... AlexB: Вас можно понять, только: 1. Папок _должно_ быть столько сколько надо. 2. Файл серверов тоже столько сколько надо. 3. Целостность линков достигается нормальным написанием системы по работе с этими самыми файлами. :) 4. Репликация. Если она необходима, то вот тут можно поконсидерить хранить это дело в БД, но(!) вы потеряете все остальные прелести... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 18:55:13 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
при приросте данных 1Гб в год вы будете иметь гораздо больше 10Гб через 10 лет (индексы растут быстрее). Индекс по полю BLOB? :) Через 10 лет наши дети уже будут взрослыми и Бог знает, будут ли средства хранения информации такими, какими мы их видим сегодня... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 19:29:37 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
: Индекс по полю BLOB? :) вот только не надо эту тему развивать, ок? я нигде не говорил про индексы по полю блоб. сказ был про индексы _вообще_. : будут ли средства хранения информации такими, какими мы их видим сегодня... что ты понимаешь под средствами? железо? оно скорее будет круче. подходы? могут появиться новые, но реляционные, иерархические и прочие останутся. это очевидно ибо за последние 20-30 лет накоплено столько софта и вбахано столько бабок в этот код, что трогать его себе дороже. скажу, что имплементация внутри этих моделей будет меняться. ибо прогресс идет и открытия продолжают делаться. надо завязывать ибо к блобам это уже никаким боком. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 21:02:48 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
вот только не надо эту тему развивать, ок? я нигде не говорил про индексы по полю блоб. сказ был про индексы _вообще_. Если “вообще”, то 1 Гб в год включает рост и индексов в частности, наверное. Ну это просто так, болтовня конечно. что ты понимаешь под средствами? железо? оно скорее будет круче. подходы Я про то, что Вы же не думаете на самом деле, что решение (я про хранение файлов), которое сегодня будет сделано на основе Microsoft SQL Server либо на основе файловой системы будет жить и через 10 лет в неизменном виде? Удачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 23:11:49 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
Пардон, только сейчас вник в тезис: только если есть требование, что отклик системы не более n секунд и оба подхода укладываются в это время, то надо пользовать бизнес логику ибо за освободившееся время датабаз сервер обслужит остальных клиентов. Вообще-то, производительность системы определяется самым медленным ее элементом. Так вот, “датабаз” сервер-то может и обслужит клиентов, но вот клиенты результатов не увидят, пока они не пройдут через ту самую “бизнес логику”. Если, конечно, СУБД не обслуживает еще и “консольных” клиентов. P.S. Я со скепсисом отношусь к XML, особенно после недавней дискуссии в форуме по этому поводу. Удачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2002, 23:23:16 |
|
||
|
Как лучше хранить BLOB ? (+)
|
|||
|---|---|---|---|
|
#18+
да и через 10 лет может быть таже система с той-же базой. :) проходили. :) если ее внедрили и оно работало а манагмент поменялся не раз, то ее и не трогают. помнишь как народ спохватился переписывать кобольные проги перед 2000 годом? Вообще-то, производительность системы определяется самым медленным ее элементом. это кто сказал? источник можно? Так вот, “датабаз” сервер-то может и обслужит клиентов, но вот клиенты результатов не увидят, пока они не пройдут через ту самую “бизнес логику”. вот это тоже интересная вещь. вообще-то клиентом БД является бизнес-логика. а не клиент как пользователь. последнее возможно (например администратор). пользователь увидит результат тогда, когда его вернет бизнес-логика (БЛЛ). да и почему ты пишешь ее в кавычках? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2002, 02:30:51 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32039002&tid=1821531]: |
0ms |
get settings: |
9ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
34ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 302ms |

| 0 / 0 |
