Macht es Sinn die Dateien in der Datenbank zu komprimieren? Gerade bei PDF ist da sicher etwas herauszuholen.
Nicht wirklich: PDF-Dateien sind meiner Kenntnis und Erfahrung nach bereits komprimiert und lassen sich z.B. durch 7zip – dem meiner Meinung nach effizientesten Packer – nur noch unwesentlich weiter "zusammenpressen".
Zudem hast du bei komprimierten PDF-Dateien das Problem, daß du die Datei vor dem Anschauen erst entpacken mußt, statt sie einfach dorthin streamen zu können, wo sie angezeigt werden soll. Um den Komprimierungsgrad größerer PDF-Sammlungen zu testen, würde ich einfach mal ein paar Verzeichnisse, die PDF-Dateien enthalten, mit 7zip komprimieren, um so die Größe der komprimierten Ordner mit der der ursprünglichen Ordner vergleichen zu können.
Falls es möglich wäre, komprimierte Datenbank-Inhalte im Speicher zu entpacken und dann zu streamen, könnte man das letztgenannte Problem natürlich umgehen. Ich hatte das mal in einer Anwendung versucht, die
HTML-Vorlagen in einer Datenbank verwaltet und mit TWebbrowser anzeigt. Es ist mir nicht gelungen, dem TWebbroser irgendwas zuzustreamen. In dieser Anwendung mußte ich
HTML-Vorlagen aus der
DB immer erst in einen bestimmten Ordner speichern, um sie mit TWebbrowser anzeigen zu können (navigate). Bei der geringen Größe der jeweiligen Blob-Felder spielte es daher auch keine große Rolle, ob die Daten in der
DB gezippt vorlagen.