Disclaimer: I’m not specially an expert of benchmarking, this post is to compare different options. All comments and advices are welcome.
I’m not telling you anything new, the show processlist command is a fantastic command line tool for instant check.
But what about monitor your databases with this command embedded in a tool?
Just have a look at this graph:
With 5K queries per seconds, how much will be hidden with a show processlist executed every seconds? Probably a lot.
So, I wanted to test which alternatives could be efficient to retrieve all the queries during a time lapse.
Test procedure and configuration
I used sysbench 0.5 to make my tests on different configurations and tools.
My test server is a 20 cores (hyper-threaded) server with 128Go of RAM and a RAID 10 disk setup.
These tests are based on Percona Server 5.5.31.
I tested the amount of TPS from 1 to 64 concurrent threads.
Here is the standard benchmark graph (TPS):
Slow query log set to 0 (file output)
Estimated size of the file: 52Go
We reach a stable peak of 1000 transactions per second.
Slow query log set to 0 (table output)
Estimated size of the table: 8.9Go
Table contention is probably the cause of a stabilization around 600 transactions per second.
General log in a file
Estimated size of the file: 11Go
2000 transactions per second can be hoped here.
General log in a table
Estimated size of the table: 9.9Go
Again, the results are below compared to the previous results in a file.
Infinite show processlist in a file
Estimated size of the file: 1.1Go
The results don’t seem so dramatic but not sure all the queries were grabbed in the file.
MariaDB Audit Plugin in a file
plugin-load=server_audit=server_audit.so server_audit_events = QUERY server_audit_file_path = /var/log/mysql/audit.
Truncated by Planet PHP, read more at the original (another 4375 bytes)
from Planet MariaDB http://ift.tt/1lvLCrP
Nenhum comentário:
Postar um comentário
Leave your comment here!