|
|
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
Выбор между хранением файлов в БД или файловой системе обсуждался не раз. Перечитав все, понял, что однозначного ответа на этот вопрос нет. Все зависит от поставленной задачи и технических возможностей. Есть ещё плюсы и минусы, между которыми разработчику приходится выбирать. Не хочется призывать к дискуссии ещё раз, хочу показать конкретную задачу и конкретные тех. возможности. Задача: Организация занимается проведением исследований. Исследования представляют собой набор количественных и качественных параметров, а так же набор входных, промежуточных и результирующих файлов. Необходимо организовать систему хранения исследований с возможностью поиска и выборки исследований по параметрам и оперативного доступа к файлам исследований. 1-я группа пользователей (диспетчера, 5 чел.) получают входные файлы от заказчика и распределяют их между пользователями 2-ой группы (обработчики, 95 чел.) Обработчики обрабатывают входные файлы, используя при этом результаты схожих исследований проведённых в прошлом. Полученные результаты(параметры и файлы) выкладывают в БД, откуда их достают диспетчера и передают заказчику. База будет постоянно расти, т.к. в любой момент может понадобиться исследование, проводимое 5 или даже 10 лет назад. Объёмы: в день проводиться до 50 исследований, в год ~18000. Количество файлов: в день ~200, в год ~70000, размеры файлов 1-5Мб(95% случаев), 5-100Мб(5% случаев). За год база файлов будет расти ~200Gb. В перспективе перевалит за 1ТБ. Режим работы базы: 12ч*7*365(Крулый год без выходных, но только в рабочее время. На ночь базу можно останавливать для санитарных работ) Тех. возможности: 1)Сервер:HP ProLiant DL785 G5(8* Quad-Core AMD Opteron™ Processor 8384 (2.7 GHz, 75W ACP), 128 GB ОЗУ (здесь крутится математика для обработки исследований, не хотелось бы загружать его базой более чем на 10-15%) 2) Дисковый массив (Raid5) на FC-контроллере - 5ТБ 3)Имеется софт и железо для полноценных бекапов файловых систем на ленты LTO-3 Так BLOB или не BLOB? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2009, 17:51 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
wild_boar Так BLOB или не BLOB? Ввиду того что Ваш бизнес - хранилище {поиск и загрузка} (мало удалений или исправлений) как я понимаю - храните всё в BLOB - эксплуатационно так проще. И Какую базу присматриваете если не секрет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2009, 19:35 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
> однозначного ответа на этот вопрос нет Видимо, не все прочли, если остались вопросы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2009, 20:53 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
Mr Marmelad Ввиду того что Ваш бизнес - хранилище {поиск и загрузка} (мало удалений или исправлений) как я понимаю - храните всё в BLOB - эксплуатационно так проще. И Какую базу присматриваете если не секрет? Меня как раз волнуют проблемы эксплуатации при хранении в blob-ах. Нужен ежедневный бэкап. Как грамотно бэкапить терабайтную таблицу с blob-ами? Дробить её по годам, или даже по месяцам? Не скажется ли это отрицательно на производительности? А файловую систему можно бэкапить инкриментально, пока база остановлена - быстро и бэкапы небольшого объема. Базу присматриваю PostgreSQL - бесплатна и по функционалу достаточна для поставленной задачи. Клиентскую часть хочу писать на Delphi с использованием PgDAC - недорого и быстро. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2009, 22:33 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
wild_boarКак грамотно бэкапить терабайтную таблицу с blob-ами?А в PostgreSQL нет инкрементного бакапа? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2009, 23:20 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
> Меня как раз волнуют проблемы эксплуатации при хранении в blob-ах Ага, значит, уже дочитали до конца. Это хорошо. > Как грамотно бэкапить терабайтную таблицу с blob-ами? Никак, разумеется. А если у Вас, дружище, еще и несколько версий одного файла будет (а так оно и будет, потому что в постановке задаче ничего о контроле версий не сказано, а он таки понадобится), Вам очень скоро станет очень грустно. > А файловую систему можно бэкапить инкриментально, пока база остановлена ИнкрЕментально. От слова "инкремент", т. е. приращение. Файловую систему можно бэкапить и при работающей базе. И файловых систем сильно больше, чем одна. И архивов, и хранилищ можно иметь любое количество. И протоколов для доступа к файлам - вагон и маленькая тележка. > Клиентскую часть хочу писать на Delphi с использованием PgDAC - недорого и быстро. Оно конечно. Возьмите нормальную СУБД (а PostgreSQL - это великолепная СУБД) и взгромоздите ее на форточки. Н-да... Риторический вопрос: почему железки покупают охотно и помногу, а на разработчиках экономят? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2009, 23:31 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
> Автор: guest_20040621 > > Оно конечно. Возьмите нормальную СУБД (а PostgreSQL - это > великолепная СУБД) и взгромоздите ее на форточки. Н-да... > ИМХО, Вы перегибаете. :) При описании СУБД ничего не было сказано, что будет крутиться под Win. Клиент? Да и шут с ним. Где хочет автор - там пусть и работает. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2009, 23:39 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
:А если у Вас, дружище, еще и несколько версий одного файла будет (а так оно и будет, потому что в постановке задаче ничего о контроле версий не сказано, а он таки понадобится), Вам очень скоро станет очень грустно. Хранилище подразумевает поиск и загрузку - никаких версий (UPDATE) - я правильно понял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2009, 23:43 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
> При описании СУБД ничего не было сказано, что будет крутиться под Win. Дружище, "бэкапить файловую систему" говорит мне о том, что автор знает максимум об одной файловой системе. В противном случае был бы задан еще один вопрос: какая файловая система лучше подойдет для хранения n файлов размеров m мегабайт каждый [дополнительные условия], как надежнее дублировать хранилища и делать их резервные копии. А еще контекст вопроса говорит мне о том, что автор не понимает назначения СУБД. В данном случае основная задача СУБД - отдать линк на файл, никакие другие задачи СУБД решать не должна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 10:00 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
Перечитал название топика. Улыбнуло. :) Обычно на такие вопросы кидают ссылку на статью один-в-один сопадающую по названию: http://research.microsoft.com/apps/pubs/default.aspx?id=64525 Кстати, автор. Хотя Вы и не ответили на мой вопрос. Я тут сам порылся в документации к PostgreSQL и нашел ссылку http://www.postgresql.org/docs/8.3/interactive/continuous-archiving.html Так что инкрем е нтный бакап, я так понимаю есть. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 11:15 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
> research.microsoft.com Возьмите за правило: если где-то увидите "microsoft", бегите оттуда, как черт от ладана. Единственное, что эти ребята умеют делать хорошо - это рисовать бабло. Ничего другого они делать не умеют. По определению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 12:17 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
> Автор: guest_20040621 > > research.microsoft.com > > Возьмите за правило: если где-то увидите "microsoft", бегите оттуда, > как черт от ладана. Единственное, что эти ребята умеют делать хорошо - это > рисовать бабло. Ничего другого они делать не умеют. По определению. > Ну это уже из области религии. Мне по долгу службы каждый день приходится видеть это слово, т.к. MSSQL основной сервер. :) Не бросать же работу?! Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 12:40 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
guest_20040621> research.microsoft.com Возьмите за правило: если где-то увидите "microsoft", бегите оттуда, как черт от ладана. Единственное, что эти ребята умеют делать хорошо - это рисовать бабло. Ничего другого они делать не умеют. По определению.А остальные и этого не умеют, я правильно понял пафос ? Вы бы хоть авторов статьи посмотрели, "дружище"... Может поделитесь с общественностью своими личными достижениями, если уж претендуете на роль гуру ? Или только так, дерьмом поплеваться ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 12:50 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
> А остальные и этого не умеют, я правильно понял пафос ? Нет, неправильно. Как раз остальные умеют. > Вы бы хоть авторов статьи посмотрели Уважаемый, все, что написано под лейблом "microsoft", внимания не заслуживает. Опять же по определению. > поделитесь с общественностью своими личными достижениями В смысле, много ли бабла я зарабатываю? Достаточно. Причем, достаточно и для того, чтобы не писать хрень за деньги. Ы? Дружище, я редко отказываю себе в удовольствии ткнуть апологета мелкомягких носом в дерьмо. Просто потому, что imho статус должен соответствовать ощущениям. В том, что как правило это ограниченные малограмотные люди, моей вины нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 13:21 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
Господа, не надо ссориться! База будет работать под RedHat. Все клиенты - только под Windows(пользователи работают со спец. софтом, написанным под win, из которого через Windows API нужно будет выдёргивать параметры и записывать их в базу) Mr Marmelad Хранилище подразумевает поиск и загрузку - никаких версий (UPDATE) - я правильно понял? Да, версий файлов не будет. Перед загрузкой файл будет однозначно анализироваться, правильный он или нет для данной записи в базе. guest_20040621 "бэкапить файловую систему" говорит мне о том, что автор знает максимум об одной файловой системе. В противном случае был бы задан еще один вопрос: какая файловая система лучше подойдет для хранения n файлов размеров m мегабайт каждый [дополнительные условия], как надежнее дублировать хранилища и делать их резервные копии. /, /home, /tmp - я знаю, как минимум, о трёх файловых системах.:) А если серьёзно, следующий вопрос лучше поднимать, после того, как определюсь с первым, вдруг он вообще отпадет. А так на вскидку: ext3 на RAID 5 - будет надёжно и достаточно быстро, резервные копии - на ленты. guest_20040621В данном случае основная задача СУБД - отдать линк на файл, никакие другие задачи СУБД решать не должна. Ну там еще будут разнообразные ежемесячные и годовые отчёты, расчёт стоимости исследований, просмотр текущей загруженности обработчиков, наработка сотрудников и прочие мелочи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 14:00 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
guest_20040621> А остальные и этого не умеют, я правильно понял пафос ? Нет, неправильно. Как раз остальные умеют.Но только Microsoft на это не имеет права ? Потому что все остальные какают золотом, а MS - дерьмом ? guest_20040621> Вы бы хоть авторов статьи посмотрели Уважаемый, все, что написано под лейблом "microsoft", внимания не заслуживает. Опять же по определению.Это уже религия. По определению. guest_20040621 > поделитесь с общественностью своими личными достижениями В смысле, много ли бабла я зарабатываю? Достаточно. Причем, достаточно и для того, чтобы не писать хрень за деньги. Ы?Мне лично наплевать, сколько зарабатываете. Полагаю не так много, как бы хотелось. Но интересует, где результаты труда. Ы ? С трудами Джима Грея знаком, а с трудами guest_20040621 как-то не складывается. Скромность мешает ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 14:00 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
> Скромность мешает ? Лень. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 14:24 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
wild_boarБазу присматриваю PostgreSQL - бесплатна и по функционалу достаточна для поставленной задачи. Клиентскую часть хочу писать на Delphi с использованием PgDAC - недорого и быстро. Коллега - Конечно вариантов реализации Вашей архитектуры много. Другое дело что Вы нацелились на достаточно долгий участок во временном интервале. А значит у Вас со временем начнётся эксплуатационный криз. Я бы на Вашем месте посмотрел получче на DB2 как хорошо зарекомендовавший себя плацдарм для больших проектов, ну или Oracle на крайний случай. Всё равно продёт время и Вам придётся переходить на профессиональную платформу. Тем более с хорошим железом на старте. Но это из области эксплуатации. А пока - пожалуй я поддержу вашу идею. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 16:48 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
ChAИли только так, дерьмом поплеваться ?Это невкусно и просто вредно для здоровья. И вреда больше себе, чем оппоненту. Кидаться! Кидаться надо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 17:02 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
wild_boar Обработчики обрабатывают входные файлы, используя при этом результаты схожих исследований проведённых в прошлом. Полученные результаты(параметры и файлы) А зачем вообще файлы храняться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 21:13 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
Mr MarmeladВсё равно продёт время и Вам придётся переходить на профессиональную платформу Призадумался. Решил использовать вместо PgDAC UniDAC. По крайней мере можно менее безболезненно перейти на Oracle. Cat2 А зачем вообще файлы храняться? Мы занимаемся геофизическими исследованиями скважин. Наши заказчики - нефтяники. Результаты, полученные в процессе бурения скважины, очень полезны в процессе эксплуатации скважины. Скважина может быть законсервирована лет на 5-10, а потом, при расконсервации, нужны результаты исследований прошлых лет. Геофизика - наука абстрактная, часто при исследовании скважины нужно опираться на результаты исследований в географически расположенных по соседству скважинах, или схожих по параметрам. Да и заказчики часто теряют переданные им данные. Поэтому нужна база. Желательно вечная)) Так все таки, в моем конкретном случае, что более оптимально - хранить в базе файлы или ссылки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 23:15 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
Senya_L:Мне по долгу службы каждый день приходится видеть это слово, т.к. MSSQL основной сервер. :) Не бросать же работу?! Не хочу подрывать шаткую платформу сложившегося равновесия просто взгляд со стороны... SUN Micro не разделяет воинственные религиозные взгляды некоторых нелюбителей мелкихмягких: Интересная новость... Значит в линейке И Windows и Solaris и Linux... Мудрое на мой взгляд решение... Коллега Senya_L - работу ни в коем случае не бросайте - скоро Sun Microsoft Windows будет вполне либеральное решение :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 23:17 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
> Автор: wild_boar > > Да и заказчики часто теряют переданные им данные. Поэтому нужна база. > Желательно вечная)) > Так все таки, в моем конкретном случае, что более оптимально - > хранить в базе файлы или ссылки? > Файлы они могут растерять, значит лучше в базе. :) Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 23:20 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
wild_boarТак все таки, в моем конкретном случае, что более оптимально - хранить в базе файлы или ссылки? Однозначно - БЛОБЫ - к тому времени когда понадобится их серъёзно использовать технология подтянется и бинарная обработка и анализ поиска станет вполне реальной. Это пока datamining ещё слаб и нет пока наработанных алгоритмов в Вашей деятельности. Поверьте мне Коллега - очень скоро все туда ринутся... Будут бурить и скважины и базы. Канечна многие скажут - потом зальём... ага ... как же... зальёшь... Тем более слив как известно всегда дешевле залива... Вы же к нефти имеете отношение - Найти нужную область в уже залитой ёмкости и слить из нее нечто ведь проще чем залить всё и начать делать опять то же... - слив. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 23:26 |
|
||
|
BLOB или не BLOB? Вечный вопрос.
|
|||
|---|---|---|---|
|
#18+
wild_boarТак все таки, в моем конкретном случае, что более оптимально - хранить в базе файлы или ссылки?Ссылки. В базе данные нужно хранить, если они там обрабатываются. Ну или хотя бы меняются - нужна атомарность, транзакции и всё такое. В вашем случае есть только добавление новых данных. Ещё базу удобнее бакапить как единственный объект; но у вас возникнут сложности из-за того, что база будет большая. Поверьте, террабайтную базу обслуживать трудновато, да и оборудование нужно приличное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2009, 11:32 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=35930764&tid=1543295]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
148ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 262ms |
| total: | 480ms |

| 0 / 0 |
