Delphi-PRAXiS
Seite 1 von 6  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   PDF-Dokumente in eine Datenbank oder nicht (https://www.delphipraxis.net/183571-pdf-dokumente-eine-datenbank-oder-nicht.html)

RWarnecke 20. Jan 2015 18:56

PDF-Dokumente in eine Datenbank oder nicht
 
Hallo Leutz,

ich plane gerade die Umsetzung einer Dokumentenverwaltung. In dieser Verwaltung sollen hauptsächlich nur PDF-Dokumente rein. Jetzt ist meine Überlegung, packe ich die ganzen Dokumente in die Datenbank oder mache ich ein Verzeichnis, wo alle Dokumente drin gespeichert werden und in der Datenbank nur eine Referenz steht zur Datei. Bei der Variante mit dem Verzeichnis ist auf jedenfall sichergestellt, dass keiner der Benutzer im Verzeichnis Änderungen durchführen kann. Hier kann lediglich nur das Programm schreiben.

Was habt Ihr für Erfahrungen gemacht, mit der Speicherung der PDF-Dokumente in der Datenbank und mit der Speicherung in einem Verzeichnis und einer Referenz in der Datenbank ?

Mir geht es hier in diesem Beitrag lediglich nur um Erfahrungen. Ich möchte wissen, wo die Grenzen sind, wo Komplikationen auftauchen können. Bei welchem Datenbanksystem habe ich bei den Varianten vielleicht die meisten Probleme ?

Schreibt mir eure Erfahrungen, gerne auch bestimmte Hardwarekonfigurationen wo bei euch eine der beiden Varianten schon besonders lange und gut läuft.

sh17 20. Jan 2015 19:00

AW: PDF-Dokumente in eine Datenbank oder nicht
 
Würdest Du die Dateinamen im Falle der Verzeichnisvariante selbst bestimmen? Beim Verzeichnis ist auf jeden Fall die maximale Zahl der Dateien zu beachten.

vagtler 20. Jan 2015 19:01

AW: PDF-Dokumente in eine Datenbank oder nicht
 
Schon einmal über den Einsatz einer NoSQL-Datenbank für diesen Use Case nachgedacht?

Dejan Vu 20. Jan 2015 19:10

AW: PDF-Dokumente in eine Datenbank oder nicht
 
Entweder du packst die Dateien in die Datenbank, oder nur Dateinamen (dann muss natürlich der Pfad zu den Dateien publik sein). Beides hat Vor- und Nachteile.

Datei in DB
Vorteile: Alles in einer DB, beim Backup/Restore keine Probleme. Vollständige Kontrolle über die Dateien.
Nachteile: Backup wird sehr groß (logisch)

Nur Namen in der DB
Vorteile: Kleine Backups, Dateien können direkt angeschaut und verändert werden.
Nachteile: Daten können direkt verändert, gelöscht, umbenannt usw. werden. Fehlende Sicherheit

SQL-Server (ab Version 2012) bietet die FileTables, was eine Kombination von beidem ist. Gearbeitet habe ich damit bisher noch nicht. Ich habe bisher PDF als normalen BLOB behandelt und konnte die ohne merkliche Verzögerung laden und anzeigen. Da das System auf wenige 1000 Dateien beschränkt war, und das Backup eh >20GB ist, war mir das ziemlich egal.

mm1256 20. Jan 2015 19:36

AW: PDF-Dokumente in eine Datenbank oder nicht
 
Hallo,

ich mach's seit etwa 6 Jahren mit Speicherung in der Datenbank, wobei zwar überwiegend PDF's gespeichert werden, aber auch Grafiken, Word-Dokumente usw.

Vorteile der Datenbank-Variante:

- Datensicherung: Tabelle(n) sichern und alles ist gesichert. Es kann prinzipiell nichts "vergessen werden"
- Einfacher Datenumzug: Besonders bei den vielen XP-Umzügen in den letzten 2 Jahren war das von Vorteil
- Kein Zusatzaufwand für die Zuteilung bzw. Vergabe von Zugriffsrechten

Nachteile:

- Wenn die Tabellen über 4 GB anwachsen wird die Datenbankpflege (z.B. Index-Neuaufbau) zeitaufwändig. Darum habe ich die Archive jetzt nach einzelnen Jahren aufteilen müssen. Doch diesen Nachteil muss man wohl langfristig auch bei Verzeichnissen wegen der Anzahl der Dateien hinnehmen.

BTW ich verwende NexusDB mit nativem Zugriff, also ohne SQL. Das ist von Haus aus schon sehr schnell. Wie sich andere DB's in diesen Dateigrößen verhalten, möchte ich mangels eigener Erfahrung nich viel dazu sagen. Ein Bekannter macht es mit MySQL. Er wird jetzt wohl auf externe Dateien umstellen.

Insgesamt gesehen bereue ich es nicht, die DB-Variante gewählt zu haben.

sh17 20. Jan 2015 19:43

AW: PDF-Dokumente in eine Datenbank oder nicht
 
PDF etc ist ja alles kein Problem.

Wo ich noch ein Problem hätte, wären änderbare Dateien (Word, Excel oder was auch immer).

Wie soll man die vernünftig dem Benutzer zu Bearbeitung anbieten? Der hat sich da einen virtuellen Verzeichnisbaum zu seinem Vorgang zusammengeklickt und möchten den Inhalt natürlich auch on the fly bearbeiten. Ich hatte schon mal an virtuelle Dateisystemtreiber gedacht, die das ganze nach hinten in die DB mappen. Aber da wollte ich nix zukaufen, was selbst gestricktes wäre gut. z.B. Dokanx

mkinzler 20. Jan 2015 19:47

AW: PDF-Dokumente in eine Datenbank oder nicht
 
Da Word und Co. nicht von/in Streams Lade/speichern kann, müsste man den Weg über CheckOut/CheckIn gehen, d.h temporäres Auslagern und Wiederzurückschreiben nach Bearbeitung.

mm1256 20. Jan 2015 19:50

AW: PDF-Dokumente in eine Datenbank oder nicht
 
Zitat:

Zitat von sh17 (Beitrag 1287194)
Wie soll man die vernünftig dem Benutzer zu Bearbeitung anbieten?

Ich denke, die Bearbeitung ist nicht das Problem, es soll ja archiviert werden:

Zitat:

Zitat von RWarnecke
Bei der Variante mit dem Verzeichnis ist auf jedenfall sichergestellt, dass keiner der Benutzer im Verzeichnis Änderungen durchführen kann. Hier kann lediglich nur das Programm schreiben.


sh17 20. Jan 2015 19:52

AW: PDF-Dokumente in eine Datenbank oder nicht
 
Zitat:

Zitat von mkinzler (Beitrag 1287195)
Da Word und Co. nicht von/in Streams Lade/speichern kann, müsste man den Weg über CheckOut/CheckIn gehen, d.h temporäres Auslagern und Wiederzurückschreiben nach Bearbeitung.

Das ist für den Anwender aber nicht transparent. Entweder er muss sagen, "so, jetzt bin ich fertig" oder das Programm versucht zu erkennen, wann eine Datei nicht mehr benutzt wird. Alles zu windig. Noch schlimmer wird es, wenn das jeweilige Anwendungsprogramm neben der gewünschten Datei weitere Dateien nachlädt.

sh17 20. Jan 2015 19:53

AW: PDF-Dokumente in eine Datenbank oder nicht
 
Zitat:

Zitat von mm1256 (Beitrag 1287196)
Ich denke, die Bearbeitung ist nicht das Problem, es soll ja archiviert werden:

OK, ich möchte jetzt nicht den Thread kapern.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:27 Uhr.
Seite 1 von 6  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz