Мне нужно хранить двоичные файлы данных в базе данных PostgreSQL, которая работает на сервере Ubuntu. Первоначально будет несколько десятков файлов размером примерно 250 КБ каждый. Однако количество файлов со временем будет увеличиваться. Иногда мне может понадобиться извлечь данные из файлов для других последующих анализов.
Я провел некоторое исследование относительно давнего вопроса хранения двоичных данных в виде BLOB или ссылок. У обоих явно есть свои плюсы и минусы. Есть ли какие-то конкретные проблемы, связанные с PostgreSQL, о которых мне следует знать? Один метод или другой предпочтительнее, если я хочу извлечь данные из файлов, либо с помощью функции PostgreSQL, либо с помощью внешней программы Python?
Если бы я должен был хранить файлы данных непосредственно в базе данных, было бы лучше хранить их в отдельной таблице с внешним ключом, ссылающимся на «главную» таблицу, а не в таблицу, содержащую все остальные поля?
Я прочитал вопрос и ответы здесь ; комментарий там предполагает, что лучше хранить бинарные файлы по ссылке (в файловой системе) в Linux. Мои вопросы здесь касаются конкретно PostgreSQL и извлечения данных из файлов для различных анализов.
Обновление: аналогичный вопрос .