C'è un ottimo documento di Microsoft Research chiamato To Blob or Not To Blob.
La loro conclusione dopo un gran numero di test di performance e analisi è questa:
se le tue immagini o documenti sono in genere al di sotto di 256 K in termini di dimensioni, la loro memorizzazione in un database di colonna VARBINARY è più efficiente
se le immagini o il documento sono in genere di dimensioni superiori a 1 MB, la memorizzazione nel filesystem è più efficiente (e con l'attributo FILESTREAM di SQL Server 2008, sono ancora sotto controllo transazionale e parte del database)
in tra i due, è un po 'di un lancio-up a seconda del vostro uso
Se si decide di mettere le immagini in una tabella SQL Server, consiglio vivamente usando un tavolo separato per la memorizzazione di quelli immagini - non conservare la foto dei dipendenti nella tabella dei dipendenti - tenerli in una tabella separata. In questo modo, la tabella Employee può rimanere snella, media e molto efficiente, assumendo che non sia sempre necessario selezionare anche la foto del dipendente come parte delle query.
Per i filegroup, consultare Files and Filegroup Architecture per un'introduzione. Fondamentalmente, dovresti creare il tuo database con un filegroup separato per grandi strutture di dati fin dall'inizio o aggiungere un filegroup aggiuntivo in seguito. Chiamiamolo "LARGE_DATA".
Ora, ogni volta che avete una nuova tabella per creare, che ha bisogno di memorizzare VARCHAR (MAX) o VARBINARY colonne (MAX), è possibile specificare il gruppo di file per la grande dati:
CREATE TABLE dbo.YourTable
(....... define the fields here ......)
ON Data -- the basic "Data" filegroup for the regular data
TEXTIMAGE_ON LARGE_DATA -- the filegroup for large chunks of data
Scopri i Introduzione MSDN sui filegroup e giocarci!
fonte
2012-11-16 16:56:40
Non so se lo faccio. Voglio solo sapere se è un'opzione valida ora. – CompanyDroneFromSector7G