Hi!
>>>>> "Manuel" == Manuel Arostegui <manuel@stripped> writes:
Manuel> 2012/9/19 Mark Haney <markh@stripped>
>> I hope this doesn't end in some kind of flame war. I'm looking to
>> optimize my tables (and performance in general) of the DB my web app is
>> using. I'm tweaking things a little at a time, but I'm curious as to what
>> the rest of the MySQL list thinks about changing my storage engine from
>> InnoDB to something else so I can optimize the tables on a regular basis.
>>
>> Is it worth the effort? Any caveats?
Manuel> Hi Mark,
Manuel> I would depend on what your workload would be. Mostly writes, mostly reads,
Manuel> how many writes/reads do you expect etc.
Manuel> The best approach, from my point of view, would be, firstly, tune your
Manuel> MySQL server (if you've not done it yet) before getting into engine/tables
Manuel> optimizations which can be more complicated.
InnoDB is a great engine, but not suitable for everything.
Depending on your usage, moving some tables to another engine may
help.
Here is some suggestions (in no particular order):
- If you want to have small footprint but don't need commit, foreign
keys or explicite rollback then ARIA is an option.
http://kb.askmonty.org/en/aria-formerly-known-as-maria/
- Duplicating some data in the MEMORY engine may also be beneficially.
- If your problem is a lot of write, then you should take a look at
Tokutek. It's an engine that is optimized for a lot of inserts.
http://www.tokutek.com/products/tokudb-for-mysql/
- If you want to utilize a lot of computers to analyze BIG data then
ScaleDB (http://www.scaledb.com) or InfiniDB (http://infinidb.org/)
may be an option.
Good luck and please post/blog about your experiences!
Regards,
Monty
Creator of MySQL and MariaDB