Mailinglisten-Archive |
Thomas Rauh wrote: > > Für die allermeisten Anwendungen sind die Probleme aus dem 2. Block > > sehr viel leichter zu lösen als die Probleme aus dem 1. Block, weswegen > > der weitaus überwiegende Teil der Anwendungsprogrammierer Dateien nicht > > in der Datenbank ablegt, sondern nur Verweise auf diese Dateien. > Hatte auch eher an zweite Methode gedacht. Da die entsprechenden Dateien > sowieso nicht direkt sondern nur über PHP-Schnittstellen erreichbar sein > sollen, stören mich die Block2 Probleme im Prinzip garnicht. Korrekte Beobachtung. Die Anomalien aus dem 2. Block rühren im Prinzip alle daher, daß die Dateien nicht in der Datenbank gespeichert sind und daher ohne Wissen der Datenbank verändert werden können. Wenn man dies verhindern kann, indem die Anwendung beide Datenspeicher (Datenbank, Dateisystem) synchron hält, vermeidet man die Probleme. Das ist nur strukturell unschön, weil es eigentlich genau deshalb eine Datenbank verwendet, damit man sich in der Anwendung eben nicht mehr manuell drum kümmern muß. Andererseits werden die meisten Anwendungen die BLOBs selbst nicht manipulieren, sondern nur speichern und wieder ausgeben - dafür ist eine Datenbank aber im Prinzip zu schade. Zur Weiterverarbeitung der Daten ist sie andererseits meist aber auch nicht in der Lage, d.h. die wenigsten Datenbanken haben einen Datentyp "Bild" statt "BLOB" und könnten dann Funktionen a la libgd auf die in der Datenbank enthaltenen Daten anwenden. Darum die Entscheidung für Lösung zwei für die weitaus meisten Anwendungen. Kristian -- Kristian Köhntopp, NetUSE Kommunikationstechnologie GmbH Siemenswall, D-24107 Kiel, Germany, +49 431 386 436 00 Using PHP3? See our web development library at http://phplib.shonline.de/ (GPL)
php::bar PHP Wiki - Listenarchive