The storage and retrieval of these items can be accomplished through a database system using a column type capable of storing binary data (commonly referred to as a "binary large object" or a BLOB). There are many existing database systems capable of storing BLOBs. Such systems' functionality, performance and cost vary greatly among vendors (with some costing as much as $25,000 for a single CPU license). The prohibitive cost often keeps some organizations from conducting full assessments of database systems for possible use in their operations, potentially causing a loss or revenue. Entities with limited resources need an affordable means of assessing or benchmarking their own database utilization. This thesis, first and foremost, provides a database benchmark for storing BLOBs in a database. Secondly, a database benchmark framework is provided with the example implementation being the BLOB database benchmark. By so doing:
My research indicates that no research has been done comparing the performance of database systems' ability to store BLOBs. ...
The software development community will now have a benchmark for storing
BLOBs in a database. This benchmark will fill a void as most database
benchmarks focus on OLTP (online transaction processing) that consist of very
small records and none focus on the general storage of BLOBs.
EXISTING DATABASE BENCHMARKS
My research indicates that no research has been done comparing the performance of database systems' ability to store BLOBs. Similar research regarding database performance (for datasets not including binary data) does exist and come from the following sources: the Transaction Processing Counsel (TPC), Storage Performance Council (SPC), Open Source Database Benchmark (OSDB), Engineering Database Benchmark (EDB) and Wisconsin Database (Bitton). In addition to not considering BLOBs, the TPC and SPC benchmarks are implemented by vendors who perform many specialized database and operating system configurations. Thus, they are not pertinent to this discussion. These nonstandard configurations take advantage of the vendors' specialized knowledge of the hardware, database, operating system and benchmark. This thesis provides the first benchmark to assess the storage of BLOBs in relational database systems. The performance results are categorized into three general BLOB sizes: small, medium and large.
Below is a brief description of the five similar database performance resources.
Transaction Processing Council (TPC)
Each TPC benchmark consists of a set of functional requirements to be run on any transaction processing system independent of the hardware or operating system. It is then up to the test sponsor to submit proof (in the form of a full disclosure report) that they have met all the requirements. The TPC has four non-obsolete database benchmarks: