资源说明:A fork of the BenchMarkSQL, http://sourceforge.net/projects/benchmarksql/, to run atop Apache Derby and with a console version supporting multiple clients with disjoint warehouses,
		
		
		
		
		
		
		***************************************************************************************** Change Log: 12/08/2011 rmpvilaca - Add startWarehouse parameter to allow multiple benchmark instances on disjoint warehouses. 05/08/2011 rmpvilaca - Add console version. 05/08/2011 ivankelly - Modified to run with Derby. ***************************************************************************************** # Instructions for building ------------------------- Use of JDK 1.5 is recommended, build with "ant jar" from the command line of the base directory or use your favorite IDE such as Netbeans or Eclipse. # Instructions for running ------------------------ The below scripts all use relative paths, but, they depend on JAVA_HOME environment variable being set so that the correct runtime can be found. JDBC drivers and sample "?.properties" files are included to make it extremely easy for you to test out the performance of EnterpriseDB, PostgreSQL, MySQL, Oracle, DB2, & SQL Svr in your environment. Any special instructions by DBMS are prefaced by, else just substitute the appropriate properties file in the command lines below .sh or .bat script suffixes are NOT indicated below; specify as appropriate 1. Go to the 'run' directory, edit the appropriate "??????.properties" file to point to the database instance you'd like to test. 2. Run the "sqlTableCreates" to create the base tables. $ runSQL.sh derbySQL.properties sqlTableCreates 3. Run the "runSQL.sh" command file to execute the SQL script "sqlPKIndexCreates" to create the primary keys on the tables. $ runSQL.sh derbySQL.properties sqlPKIndexCreates 4. Run the "loadData" command file to load all of the default data for a benchmark: A.) Approximately half a million rows in total will be loaded across 9 tables per Warehouse. (The default is numWarehouses=1) A decent test size of data totaling about 1 GB is 10 warehouses as follows: $ loadData derbySQL.properties numWarehouses 10 Note: "loadData" will truncate all tables prior to inserting data through the JDBC program There is also a "sqlTableDrops" script if you need it. If needed, run $ runSQL.sh derbySQL.properties sqlTableDrops B.) Alternatively, you may choose to generate the load data out to CSV files that can be bulk loaded as follows: $ loadData derbySQL.properties numWarehouses 10 fileLocation ./csv/ (directory BenchmarkSQL-2.3.2/run/csv used in this example) These CSV files can be bulk loaded into Derby via the following: $ runSQL.sh derbySQL.properties sqlTableCopies_Derby You may clean out the data in the tables without dropping them via: $ runSQL.sh derbySQL.properties sqlTableTruncates 5. Run the "runSQL.sh" command file to execute the SQL script "sqlSKIndexCreates" to create other indexes on the tables. $ runSQL.sh derbySQL.properties sqlSKIndexCreates 6. Run the benchmark: A.) "runBenchmarkConsole.sh" command file to execute the console application to test the database. All the parameters to the benchmark (startWarehouse, numWarehouses, numTerminals, default weight per transaction type, minutes, numTerminals) will be the default ones defined in jTPCCConfig. For each run, a report will be placed in run/reports. A sample report is included." $ runBenchmarkConsole.sh derbySQL.properties The following parameters can be configured from the script in any order and number as follows; $ runBenchmarkConsole.sh derbySQL.properties minutes 45 numTerminals 10 numWarehouses 10 startWarehouse 1 The numWarehouses and startWarehouse are useful to configure several instances of the benchmark with disjoint warehouses. For example with 100 warehouses and 4 benchmark intances they should be run as: $ runBenchmarkConsole.sh derbySQL.properties numTerminals 250 numWarehouses 25 startWarehouse 1 $ runBenchmarkConsole.sh derbySQL.properties numTerminals 250 numWarehouses 25 startWarehouse 26 $ runBenchmarkConsole.sh derbySQL.properties numTerminals 250 numWarehouses 25 startWarehouse 51 $ runBenchmarkConsole.sh derbySQL.properties numTerminals 250 numWarehouses 25 startWarehouse 76 B.) Alternatively, "runBenchmark" command file to execute the swing GUI application to test the database. Don't forget to set the number of warehouses equal to the number you created in step 3. For each run, a report will be placed in run/reports. A sample report is included. $ runBenchmark.sh derbySQL.properties 7. Operational Notes to minimize GUI problems: (a) executing runBenchmark will start the GUI. Click the Database button to view properties file settings. No changes are needed if the properties settings are correct. Click the Terminals button and specify desired settings. Specify the same number of warehouses as you created. Select either "Minutes" or "Transactions per terminal" and blank out the other setting. Click the Weights button and specify desired settings Click the Controls button, then click Create Terminals. One DB connection per Terminal is created. Click Start Transactions to start the benchmark. (b) If changing the number of terminals between runs, it is best to close the GUI window and re-execute runBenchmark (c) If the benchmark runs properly, all database connections are terminated at completion. You may need to manually terminate connections if this is not the case (d) When done, close the GUI window # Feedback Updated source and an issue tracker are available at: https://github.com/rmpvilaca/BenchmarkSQLHBase Your feedback is welcome. #Contact Ricardo Vilaca ( ) 
					
									本源码包内暂不包含可直接显示的源代码文件,请下载源码包。
							
		
 English
