I have a very high level of Inserts/Updates vs Reads let’s say 99% Writes vs 1% Reads. The database is for logging a lot of analytic data that comes in rapidly.
I switched to innodb to avoid table level locking which is nice, but I’d like to get rid of the transactional overhead that comes with innodb. Is there a way to just disable all the flushes/commits/transactionlogs for innodb if I just care about speed and don’t mind losing a few rows if things crash?
Modify my.conf and set
innodb_flush_log_at_trx_commit=0. In this way you will not ask MySQL to flush your data to filesystem each time you commit. But you will lose some data when the system crashes.You can make it better since most of your operations are writing. You can bunch several SQL into one SQL. Then submit it to MySQL.