в базе? Или как организовать хранение на файловом сервере, если в базе лучше не хранить. Какие best practices в этом вопросе? У нас с коллегами не утихает спор - я топлю за oid т е LOB, они за bytea. Примерно 8к файлов общим размером 40гб, всякие документы и архивы, бывают по 12мб, работа с ними не частая, но бывает нужно поднять доки. Плюс хотим антивирусом проверять. Есть ли опыт файлового хранения в базе?
В S3 или Minio. В базе - ключи
https://t.me/pgsql/291633 ;)
Если нет файлов больше 1ГБ, то не надо пользоваться LOB. Ибо обслуживание - отдельная песТня про никуда не упёршееся рукоблудство и скриптоложество. Плюс игрища с кроном/системд-таймером
можно файлы хранить в БД, если вы понимаете зачем вам это нужно ) вот авторитетное мнение Брюса Момжана на эту тему: https://momjian.us/main/blogs/pgblog/2017.html#November_6_2017 но БД будет пухнуть, ее обслуживание, резервное копирование и др. будет все затруднительней — нужно это учитывать. Были доклады, где люди рассказывали, как они избавлялись от документов в PG и возвращали их на ФС ) Те это зависит от того, что вам важно
Читал, ещё раз перечитал. Плюсы и минусы понятны, но что лучше всего - не ясно. И как стримить oid не встречал примеров. Я топлю за oid, коллеги за bytea из-за простоты, может согласиться?
Minio интересно, спасибо
Хмм... а в чём затруднение-то? Вроде бы, всё подробно расписано — сопоставьте со своей ситуацией, и всё... нет?
Сопоставляю - мне кажется, что в моём случае без разницы, хотел узнать мнение сообщества, для статистики, кто что использует
Да при чём тут "статистика"?! Если действительно нужно ACID для этих документов — забудьте об этой "файловой" муре (хранении в FS). Если не нужно (готовы к тому, что есть шанс потерять какие-то, по запросу вернуть не те, и к рассинхронизации в случае проблем с базой или FS), да и "железа" маловато — забудьте об этой ерунде с хранением в базе. ;) А уж если решили хранить в базе, то, на первый взгляд, файлы небольшие, произвольного доступа к "кусочкам" не нужно — подходит bytea, нет?
Обсуждают сегодня