J'ai besoin de stocker des fichiers de données binaires dans une base de données PostgreSQL qui fonctionne sur un serveur Ubuntu. Initialement, il y aura quelques dizaines de fichiers d'environ 250 Ko chacun. Cependant, le nombre de fichiers augmentera avec le temps. Je peux parfois avoir besoin d'extraire des données des fichiers pour d'autres analyses en aval.
J'ai fait quelques recherches sur la question séculaire du stockage de données binaires en tant que BLOB ou références. Les deux ont évidemment leurs avantages et leurs inconvénients. Y a-t-il des problèmes spécifiques liés à PostgreSQL que je devrais connaître? Est-ce qu'une méthode ou l'autre est préférable si je veux extraire des données des fichiers, soit via une fonction PostgreSQL, soit via un programme Python externe?
Si je devais stocker les fichiers de données directement dans la base de données, serait-il préférable de les stocker dans une table séparée avec une clé étrangère référençant la table "principale", plutôt que dans la table contenant tous les autres champs?
J'ai lu la question et les réponses ici ; un commentaire suggère que le stockage de fichiers binaires par référence (dans le système de fichiers) sous Linux est préférable. Mes questions ici concernent spécifiquement PostgreSQL et l'extraction des données des fichiers pour diverses analyses.
Mise à jour: question similaire .