Benchmark software system and method
AssigneeJPMorgan Chase Bank, N.A.
InventorsEric C. BECK, Adam David WADE
Life of this patent
Estimating the term…
Abstract
A system for and a method of testing the performance of a database management system. The system and method utilize a data table generator, a query generator, and a query driver system that are configured to generate test data, generate a series of test queries, and execute the queries against the data in a controlled and measurable manner such that the performance of the database management system can be tested in a configurable, repeatable, and consistent manner to measure the impact of system software and configuration changes.
Claims15
A method of testing the performance of a database management system, the method comprising:
- generating random data;
- storing the random data and real data in one or more data tables;
- generating a plurality of data queries;
- storing the data queries in a batch file;
- executing the batch file using the data stored in the data tables according to predetermined system loading conditions;
- and
- recording performance data during the execution of the batch file, wherein the one or more data tables are generated by:
- receiving a metadata configuration file comprising:
- a plurality of table configurations;
- a plurality of column configuration requirements associated with the plurality of table configurations;
- and
- at least some of the real data;
- creating at least one of the data tables according to the metadata configuration file;
- generating at least some of the random data according to the column configuration requirements and placing that data into columns identified by the column configuration requirements as requiring random data;
- placing at least some of the real data from the metadata configuration file into columns identified in the metadata configuration file as requiring actual data values;
- and
- storing the created data tables.
A system for testing the performance of a database management system, the system comprising:
- a data generator for generating random data;
- a database comprising a plurality of data tables for storing the random data and real data;
- a query generator for generating a plurality of data queries;
- a batch file for storing the plurality of data queries;
- and
- a query driver configured to:
- execute the batch file using the data stored in the data tables according to predetermined system loading conditions;
- record performance data during the execution of the batch file;
- receive a metadata configuration file to generate the one or more data tables, wherein the metadata configuration file includes:
- a plurality of table configurations;
- a plurality of column configuration requirements associated with the plurality of table configurations;
- and at least some of the real data;
- create at least one of the data tables according to the metadata configuration file;
- generate at least some of the random data according to the column configuration requirements and place that data into columns identified by the column configuration requirements as requiring random data;
- place at least some of the real data from the metadata configuration file into columns identified in the metadata configuration file as requiring actual data values;
- and
- store the created data tables.
A non-transitory computer readable medium configured to store instructions for testing the performance of a database management system, such that when the instructions are executed by a processor, they cause the processor to perform the following:
- generating random data;
- storing the random data and real data in one or more data tables;
- generating a plurality of data queries;
- storing the data queries in a batch file;
- executing the batch file using the data stored in the data tables according to predetermined system loading conditions;
- and
- recording performance data during the execution of the batch file, wherein the one or more data tables are generated by:
- receiving a metadata configuration file comprising:
- a plurality of table configurations;
- a plurality of column configuration requirements associated with the plurality of table configurations;
- and
- at least some of the real data;
- creating at least one of the data tables according to the metadata configuration file;
- generating at least some of the random data according to the column configuration requirements and placing that data into columns identified by the column configuration requirements as requiring random data;
- placing at least some of the real data from the metadata configuration file into columns identified in the metadata configuration file as requiring actual data values;
- and
- storing the created data tables.
Dependencies are inferred from the claim text.