Es ist vielleicht etwas weit hergeholt, aber wenn Sie SQL Server 2008 verwenden (oder dies planen), empfehle ich Ihnen, einen Blick auf das neue FileStream Datentyp.
FileStream löst die meisten Probleme rund um die Speicherung der Dateien in der DB:
- Die Blobs werden eigentlich als Dateien in einem Ordner gespeichert.
- Der Zugriff auf die Blobs erfolgt über entweder eine Datenbankverbindung o über das Dateisystem.
- Backups sind integriert.
- Migration "funktioniert einfach".
Die "Transparente Datenverschlüsselung" von SQL verschlüsselt jedoch keine FileStream-Objekte, so dass es besser ist, sie einfach als varbinary zu speichern.
Aus dem MSDN-Artikel:
Mit Transact-SQL-Anweisungen können FILESTREAM-Daten eingefügt, aktualisiert, abgefragt, gesucht und gesichert werden. Win32-Dateisystemschnittstellen bieten Streaming-Zugriff auf die Daten.
FILESTREAM verwendet den NT-Systemcache zum Zwischenspeichern von Dateidaten. Dies trägt dazu bei, die Auswirkungen von FILESTREAM-Daten auf die Leistung der Datenbank-Engine zu verringern. Der Pufferpool des SQL Servers wird nicht verwendet; daher ist dieser Speicher für die Abfrageverarbeitung verfügbar.