Dateien (als Blob) in Postgre-Datenbank speichern, sicher?
Dateien (als Blob) in Postgre-Datenbank speichern, sicher?
Hallo,
ich schleppe seit einigen Wochen das Problem mit mir herum, das es offenbar kein schlankes DMS gibt, das sich leicht replizieren / clonen lässt. Nun wurde diese Frage wieder einmal im df.de-Chat diskutiert und es kam die Idee auf einfach alle Daten in eine Postgre-Datenbank zu legen sprich sowohl Beschreibungen als auch die Daten selbst und dafür dann eine (einfache) eigene GUI zu schreiben.
Da ich bis jetzt maximal den Pfad zu einer Datei in einer Datenbank gespeichert habe bin ich mir nicht wirklich sicher, ob ich wirklich die gesamten Dokumente in einer Datenbank ablegen möche. Den u.a. stell ich mir die Frage wie sicher die Daten sind, insbesondere bei einem backup / restore der DB oder beim clonen / replizieren zwischen zwei Datenbanksystemen. Ich gebe zu das eine Datei durch das Kopieren zwischen zwei Dateisystemen ebenso unbrauchbar werden kann, aber bei Datenbank habe ich halt immer noch die Sorge das irgendein Indexer o.ä. amok laufen kann und dadurch irgendwas nachhaltig beschädigt.
Vielleicht hat hier ja jemand erfahrung mit blobs und kann mir ein bißchen berichten was von der Idee zu halten ist?
Viele Grüße
Dan
ich schleppe seit einigen Wochen das Problem mit mir herum, das es offenbar kein schlankes DMS gibt, das sich leicht replizieren / clonen lässt. Nun wurde diese Frage wieder einmal im df.de-Chat diskutiert und es kam die Idee auf einfach alle Daten in eine Postgre-Datenbank zu legen sprich sowohl Beschreibungen als auch die Daten selbst und dafür dann eine (einfache) eigene GUI zu schreiben.
Da ich bis jetzt maximal den Pfad zu einer Datei in einer Datenbank gespeichert habe bin ich mir nicht wirklich sicher, ob ich wirklich die gesamten Dokumente in einer Datenbank ablegen möche. Den u.a. stell ich mir die Frage wie sicher die Daten sind, insbesondere bei einem backup / restore der DB oder beim clonen / replizieren zwischen zwei Datenbanksystemen. Ich gebe zu das eine Datei durch das Kopieren zwischen zwei Dateisystemen ebenso unbrauchbar werden kann, aber bei Datenbank habe ich halt immer noch die Sorge das irgendein Indexer o.ä. amok laufen kann und dadurch irgendwas nachhaltig beschädigt.
Vielleicht hat hier ja jemand erfahrung mit blobs und kann mir ein bißchen berichten was von der Idee zu halten ist?
Viele Grüße
Dan
I love deadlines. I like the whooshing sound they make as they fly by - Douglas Adams
- Natureshadow
- Beiträge: 2157
- Registriert: 11.08.2007 22:45:28
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Radevormwald
-
Kontaktdaten:
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
Hi,
grundsätzlich will man Dateien nicht in die Datenbank legen. Dafür sind Datenbanken nicht da, sie performen mistig darauf und deine Transaktionen werden eben fü Replikation, etc. viel zu groß, damit öffnest du dir race conditions Tür und Tor.
-nik
grundsätzlich will man Dateien nicht in die Datenbank legen. Dafür sind Datenbanken nicht da, sie performen mistig darauf und deine Transaktionen werden eben fü Replikation, etc. viel zu groß, damit öffnest du dir race conditions Tür und Tor.
-nik
Linux Professional Institute Certification Level 2
Warum bist du immer so gehässig? | FAQ (aka "Mein Sound ist kaputt!")
Meine DF.de-Stalker: Cae und TRex - I <3 you!
Warum bist du immer so gehässig? | FAQ (aka "Mein Sound ist kaputt!")
Meine DF.de-Stalker: Cae und TRex - I <3 you!
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
ok das mit den Race-Conditions ist wirklich ein Argument dagegen... die Daten einfach in die Datenbank zu schaufeln. Auch wenn das jetzt etwas off-topic wird, die Frage ist dann, was könnte man alternativ nehmen? eggy hatte im chat vorgeschlagen stattdesse doch git zu nehmen... Allerdings bin mir nicht ganz sicher ob sich git wirklich so modifizieren lässt das eine Datei weitere Felder wie Beschreibung, Autor etc. besitzt und diese dann auch noch durchsuchbar sind...
Dabei kam auch git-annex zur sprache, aber entweder habe ich mich damit noch nicht intensiv genug beschäftigt oder das ding besitzt nicht wirklich eine gui...
Dabei kam auch git-annex zur sprache, aber entweder habe ich mich damit noch nicht intensiv genug beschäftigt oder das ding besitzt nicht wirklich eine gui...
I love deadlines. I like the whooshing sound they make as they fly by - Douglas Adams
- Natureshadow
- Beiträge: 2157
- Registriert: 11.08.2007 22:45:28
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Radevormwald
-
Kontaktdaten:
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
Hallo,
du könntest ja mal damit anfangen, zu erklären, was du eigentlich vorhast ...
Zu git-annex entsteht gerade der git-annex-assistent als GUI.
Aber was hast du vor? Willst du nur Dateien mit Tags versehen, so für dich zum Privatvergnügen?
-nik
du könntest ja mal damit anfangen, zu erklären, was du eigentlich vorhast ...
Zu git-annex entsteht gerade der git-annex-assistent als GUI.
Aber was hast du vor? Willst du nur Dateien mit Tags versehen, so für dich zum Privatvergnügen?
-nik
Linux Professional Institute Certification Level 2
Warum bist du immer so gehässig? | FAQ (aka "Mein Sound ist kaputt!")
Meine DF.de-Stalker: Cae und TRex - I <3 you!
Warum bist du immer so gehässig? | FAQ (aka "Mein Sound ist kaputt!")
Meine DF.de-Stalker: Cae und TRex - I <3 you!
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
Das wäre mal eine gute Idee.du könntest ja mal damit anfangen, zu erklären, was du eigentlich vorhast ...
Software ohne GUI ist ja auch total Nutzlos.Dabei kam auch git-annex zur sprache, aber entweder habe ich mich damit noch nicht intensiv genug beschäftigt oder das ding besitzt nicht wirklich eine gui...
Wie Natureshadow schon gesagt hat ist das speichern von Blobs nicht gerade die stärke eines RDBMS.
Unix is user-friendly; it's just picky about who its friends are.
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
Mit relationalen Datenbanksystemen ist das schon etwas problematisch. Schau dir mal MongoDB an. Die Replikations- und HA Features sowie Query Möglichkeiten sind super. Beim Design sind auch Blobs bedacht worden:
http://www.mongodb.org/display/DOCS/GridFS
http://www.mongodb.org/display/DOCS/When+to+use+GridFS
http://www.mongodb.org/display/DOCS/GridFS
http://www.mongodb.org/display/DOCS/When+to+use+GridFS
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
@Natureshadow
eigentlich bin ich auf der Suche nach einem Dokumenten-Managementsystem das sich leicht clonen / replizieren lässt so das beispielsweise der Master auf meinem Home-Server liegt und sich dieses per Replikation / Klone auf den Laptops übertragen lässt. Darum kam auch die Idee auf alle Dokumente in eine Datenbank zu schaufeln und diese dann zu übertragen.
@catdog
Vielleicht hatte ich mich gestern abend etwas ungeschickt ausgedrückt, aber ich hätte halt gerne etwas für die Dokumentenverwaltung wo ich mich nicht auf der Konsole herumquälen muß (ja ich weiß die Konsole ist i.d.R. mächtiger als eine GUI) und wenn ich dann halt erst noch selbst eine GUI zu git-annex schreiben muß wird das für mich halt erst wirklich benutzbar sein wenn ich die GUI fertig habe.... also in ein paar Wochen / Monaten.
@FANA
werde ich gleich mal machen, auf jeden Fall vielen Dank für den Tip
eigentlich bin ich auf der Suche nach einem Dokumenten-Managementsystem das sich leicht clonen / replizieren lässt so das beispielsweise der Master auf meinem Home-Server liegt und sich dieses per Replikation / Klone auf den Laptops übertragen lässt. Darum kam auch die Idee auf alle Dokumente in eine Datenbank zu schaufeln und diese dann zu übertragen.
@catdog
Vielleicht hatte ich mich gestern abend etwas ungeschickt ausgedrückt, aber ich hätte halt gerne etwas für die Dokumentenverwaltung wo ich mich nicht auf der Konsole herumquälen muß (ja ich weiß die Konsole ist i.d.R. mächtiger als eine GUI) und wenn ich dann halt erst noch selbst eine GUI zu git-annex schreiben muß wird das für mich halt erst wirklich benutzbar sein wenn ich die GUI fertig habe.... also in ein paar Wochen / Monaten.
@FANA
werde ich gleich mal machen, auf jeden Fall vielen Dank für den Tip
I love deadlines. I like the whooshing sound they make as they fly by - Douglas Adams
- Natureshadow
- Beiträge: 2157
- Registriert: 11.08.2007 22:45:28
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Radevormwald
-
Kontaktdaten:
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
Aber: Du willst auf jeden Fall Metadaten zu deinen Dateien haben, ja? Das war doch dein Hauptziel, oder?
Linux Professional Institute Certification Level 2
Warum bist du immer so gehässig? | FAQ (aka "Mein Sound ist kaputt!")
Meine DF.de-Stalker: Cae und TRex - I <3 you!
Warum bist du immer so gehässig? | FAQ (aka "Mein Sound ist kaputt!")
Meine DF.de-Stalker: Cae und TRex - I <3 you!
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
genau... darum dachte ich halt auch eine Datenbank wäre die naheliegenste lösung und war von der Idee eigentlich recht angetan aber scheinbar ist die Idee weit weniger gut als ich dachte
I love deadlines. I like the whooshing sound they make as they fly by - Douglas Adams
- Natureshadow
- Beiträge: 2157
- Registriert: 11.08.2007 22:45:28
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Radevormwald
-
Kontaktdaten:
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
Du könntest schlicht und ergreifend rsync benutzen und deine Metadaten in den user_xattrs ablegen. Dafür ein GUI zu schreiben kann eigentlich nicht so schwer sein ...
-nik
-nik
Linux Professional Institute Certification Level 2
Warum bist du immer so gehässig? | FAQ (aka "Mein Sound ist kaputt!")
Meine DF.de-Stalker: Cae und TRex - I <3 you!
Warum bist du immer so gehässig? | FAQ (aka "Mein Sound ist kaputt!")
Meine DF.de-Stalker: Cae und TRex - I <3 you!
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
Ich bin zufrieden. Ich betreibe Nuxeo und lagere meine Files zur Zeit in einer PostgreSQL Datenbank.
Allerdings überlege ich ob es in Zukunft nicht besser wäre die Files in Apache Hadoop zu speichern.
Zum anderen betreibe ich einen Mailserver mit dbmail der die Mails samt Anhänge auch hochperformant in einer PostgreSQL Datenbank speichert.
Allerdings überlege ich ob es in Zukunft nicht besser wäre die Files in Apache Hadoop zu speichern.
Zum anderen betreibe ich einen Mailserver mit dbmail der die Mails samt Anhänge auch hochperformant in einer PostgreSQL Datenbank speichert.
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
Hallo minimike,
hast du viele Dateien in deiner Datenbank? ich hatte gestern mit comes noch darüber gesprochen und er meinte wenn Du viele binäre Dateien in einer Datenbank speicherst macht dies die Datenbank über kurz oder lang langsam...
Viele Grüße
Dan
hast du viele Dateien in deiner Datenbank? ich hatte gestern mit comes noch darüber gesprochen und er meinte wenn Du viele binäre Dateien in einer Datenbank speicherst macht dies die Datenbank über kurz oder lang langsam...
Viele Grüße
Dan
I love deadlines. I like the whooshing sound they make as they fly by - Douglas Adams
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
ca 220 GB Mailhawkeye78 hat geschrieben:Hallo minimike,
hast du viele Dateien in deiner Datenbank? ich hatte gestern mit comes noch darüber gesprochen und er meinte wenn Du viele binäre Dateien in einer Datenbank speicherst macht dies die Datenbank über kurz oder lang langsam...
Viele Grüße
Dan
ca 1 TB Nuxeo
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
und die performance / der ressourcen verbrauch?
I love deadlines. I like the whooshing sound they make as they fly by - Douglas Adams
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
2 Opterons mit 64 GB Ram. Läuft
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: Dateien (als Blob) in Postgre-Datenbank speichern, sich
Das ist… unfair. *auchhabenwill*minimike hat geschrieben:2 Opterons mit 64 GB Ram. Läuft
Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.
—Bruce Schneier