In SQL Server 2008 heb je de mogelijkheid om te gebruiken FILESTREAM
om grote binaire gegevens op te slaan. In dit geval zijn de gegevens beschikbaar in query's, maar fysiek opgeslagen op het bestandssysteem.
Microsoft heeft een Technisch artikel over SQL Server
gepubliceerd die nuttige informatie bevat over hoe en wanneer FILESTREAM
te gebruiken . Op de 8e pagina laat de vergelijkingstabel zien dat de FILESTREAM voordeel heeft over BLOB's opgeslagen in database als de opgeslagen gegevens groter zijn dan 1 MB .
OPMERKING FILESTREAM is niet beschikbaar in SQL Server 2005! (En SQL Server 2005 is geen langer ondersteund door Microsoft - behalve de uitgebreide ondersteuning)
Nog wat artikelen om te lezen
U kunt enkele vergelijkingsgrafieken bekijken op SQLSkills-blog over zijn prestaties.
Ook publiceerde Microsoft Research een Technisch artikel:To BLOB or Not To BLOB over bestandsstreams en BLOBS.
Je kunt het proberen, maar zoals altijd moet je een omgevingsspecifieke test uitvoeren om er zeker van te zijn dat deze oplossing werkt of niet. Als dit een product op de markt is, is het een goed idee om de FILESTREAM-ondersteuning te implementeren als een opt-in of opt-out-functie.
Gewoon een kanttekening
NVARCHAR
is twee keer zo groot dan VARBINARY
omdat SQL Server elk teken op 2 bytes opslaat in de unicode (NCHAR
, NVARCHAR
, enz.) kolommen.