MySQL Conference Liveblogging: Benchmarking Tools (Wednesday 4:25PM)
| Share |
- Tom Hanlon of MySQL presents
- Benchmarking tools
- mysqlslap (with MySQL 5.1)
- sql-bench
- supersmack – Jeremy Zawodny's tool
- Apache Bench (combined with some sample PHP scripts)
- MySQL's benchmark() function
- mybench
- WAST
- JMeter
- sql-bench
- pros
- ubiquitous
- long history of use
- cons
- single thread
- Perl
- not always real-life test cases (create 10k tables?)
- list of tests follows
- pros
- supersmack
- configurable, flexible
- 1000 queries, 50 users
- super-smack -d mysql select-key-smack 50 1000
- can modify queries to be closer to what your own application uses
- pros
- benches concurrent connections
- well documented
- cons
- test language sucks
- Apache Bench
- webserver benchmarking tool
- point to a webserver, utilizes concurrent users
- siege, httperf, httpload are similar
- 404 errors deliver really quickly, so make sure to check for those
- benchmark()
- tests MySQL's internal functions
- SELECT BENCHMARK(10000, SHA1(MD5(rand())));
- pros
- simple to use
- cons
- only benchmarks functions, can be overcome (see next)
- creative use: write your own queries as functions and then run benchmark() on them
- MyBench
- simple
- WAST
- pros
- flexible
- easy to use (GUI)
- replay example click trail from browsing
- cons
- Windows only
- pros
- Jmeter
- Java based app for testing web applications
- hard to built tests but once you do, they run really well
- configuration done using test plans, which is more involved than just typing a cmd line
- can output tables, graphs
- can be configured to run endlessly, as background noise
- good documentation
- flexible
- mysqlslap
- internally developed benchmark tool
- ships with 5.1
- feature rich
- mysqlslap –user=john
- –auto-generate-sql
or
–query="select blabla …" or –query=file - –concurrency=100
- –iterations=5
- –engine=myisam
- audience members additionally mention grinder, openSTA, yslow (ties in with FireBug), selenium
Artem Russakovskii is a San Francisco programmer, blogger, and future millionaire (that last part is in the works). Follow Artem on Twitter (@ArtemR) or subscribe to the RSS feed.
In the meantime, if you found this article useful, feel free to buy me a cup of coffee below.
beer planet is a blog about technology, programming, computers, and geek life. It is run by Artem Russakovskii - a local San Francisco geek who is currently pursuing his own projects and regularly enjoys hacking Android, PHP, CSS, Javascript, AJAX, Perl, and regular expressions, working on Wordpress plugins and tools, tweaking MySQL queries and server settings, administering Linux machines, blogging, learning new things, and other geeky stuff.
the benchmark() function is extremely useful for me.
I tried to install onther benchmark super-smack-1.2
while i am giving the make fuction i am geting the error message as following
And also I tried to install onther benchmark super-smack-1.2,if am i am
giveing the commnd ./configure it wll configure successfully and for make it is giving the following error
dictionary.h: In member function ?void
Unique_dictionary::set_template(const char*)?:
dictionary.h:93: error: ?strlen? was not declared in this scope
super-smack.cc: In function ?void set_parse_file(char*)?:
super-smack.cc:65: warning: deprecated conversion from string constant to
?char*?
super-smack.cc: In function ?void set_db_type(const char*)?:
super-smack.cc:72: warning: deprecated conversion from string constant to
?char*?
super-smack.cc: In function ?void print_engines()?:
super-smack.cc:126: error: ?strlen? was not declared in this scope
make[2]: *** [super-smack.o] Error 1
make[2]:Leaving directory `/home/jamsheer/Downloadssuper-smack-1.2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/jamsheer/Downloads
super-smack-1.2'
make: *** [all-recursive-am] Error 2
Or can i use any other benchmarch in with i can perform various test of
obuntu 9.04?
Tr please give me the the clarification on which i am mention above so
that i can perform the test either sybench or super-smack-1.2
yours sincerely.
__.____._
I get the same now.
Got around to trying mysqlslap – it's great.