Persoonlijk raad ik aan om afbeeldingen op te slaan in de database. Het heeft natuurlijk zowel voor- als nadelen.
Voordelen van het opslaan van BLOB-gegevens in de database:
- Het is gemakkelijker om de BLOB-gegevens gesynchroniseerd te houden met de overige items in de rij.
- Van BLOB-gegevens wordt een back-up gemaakt met de database. Het hebben van één opslagsysteem kan het beheer vereenvoudigen.
- BLOB-gegevens zijn toegankelijk via XML-ondersteuning in MySQL, die een basis 64-gecodeerde weergave van de gegevens in de XML-stroom kan retourneren.
- MySQL Full Text Search (FTS)-bewerkingen kunnen worden uitgevoerd op kolommen die tekens met een vaste of variabele lengte (inclusief Unicode) bevatten. U kunt ook FTS-bewerkingen uitvoeren op opgemaakte tekstgebaseerde gegevens in afbeeldingsvelden, bijvoorbeeld Microsoft Word- of Microsoft Excel-documenten.
Nadelen van het opslaan van BLOB-gegevens in de database:
Overweeg zorgvuldig welke bronnen beter op het bestandssysteem kunnen worden opgeslagen dan in een database. Goede voorbeelden zijn afbeeldingen waarnaar doorgaans wordt verwezen via HTTP HREF. Dit komt omdat:
- Het ophalen van een afbeelding uit een database brengt aanzienlijke overhead met zich mee in vergelijking met het gebruik van het bestandssysteem.
- Schijfopslag op database-SAN's is doorgaans duurder dan opslag op schijven die worden gebruikt in webserverfarms.