Advantages and Disadvantages of Storing BLOB Data in the Database
Advantages of Storing BLOB Data in the Database
Storing BLOB data in the database offers a number of advantages:
- It is easier to keep the BLOB data synchronized with the remaining items in the row.
- BLOB data is backed up with the database. Having a single storage system can ease administration.
- BLOB data can be accessed through XML support in SQL Server 2000, which can return a base 64-encoded representation of the data in the XML stream.
- SQL Server Full Text Search (FTS) operations can be performed against columns that contain fixed or variable-length character (including Unicode) data. You can also perform FTS operations against formatted text-based data contained within image fields-for example, Microsoft Word or Microsoft Excel documents.
Disadvantages of Storing BLOB Data in the Database
Carefully consider what resources might be better stored on the file system rather than in a database. Good examples are images that are typically referenced via HTTP HREF. This is because:
- Retrieving an image from a database incurs significant overhead compared to using the file system.
- Disk storage on database SANs is typically more expensive than storage on disks used in Web server farms.
Note A well thought out metadata strategy can remove the need for resources such as images, movies, and even Microsoft Office documents to be stored in the database. The metadata could be indexed and include pointers to resources stored on the file system.