DVD Store is an open-source benchmark suite that lets you test the performance of your database software. The entire solution can run on a bare metal server or vSphere virtual machines. You can compare the performance of your current environment vs. a virtualized environment, or you can compare different virtualized environments too.
Performance is primarily measured with the metric orders per minute (OPM). Each order consists of the entire process of a user logging in, searching for products, seeing product recommendations based on previous purchases, browsing and providing product reviews, and finally purchasing products.
DVD Store 3.5 supports Oracle, MySQL, SQL Server, and now PostgreSQL.
DVD Store 3.5 was developed and released with the two key enhancements of parallel loading and multiple stores.
In previous versions of DVD Store, a single set of tables supported a single online store. To make the benchmark more scalable and consist of more tables, DVD Store 3.5 allows you to specify multiple stores when creating the database. Each store has its own set of tables. For example, if the DVD Store 3.5 test database is created with five stores, there will be a set of tables for each store including five customer tables, five order tables, five product tables, and so on. It’s easy to create a cluster with multiple stores: everything is created with a Perl script that accepts the number of stores as a parameter.
Parallel Data Loading
Previous versions of DVD Store loaded data into tables one table at a time or in a single-threaded sequential manner. One table was loaded with data, and once that was complete, the load of data into the next table started. In DVD Store 3.5, the data in all tables is loaded at the same time. Additionally, all stores are loaded at the same time. This is done with a Perl script that:
- Prepares all the necessary load scripts
- Runs a multithreaded approach to launch the load of all tables simultaneously
- Monitors the loading and waits until all loads are complete before moving on to the next step
This dramatically reduces the time it takes to create a test database.