innodb or myisam?
Heres what I have:
1 table,
ID (INT, auto-increment, primary key), name (char(40)), then 20 varchar(255)’s.
7 million rows.
Thats it, just the one table!
Query types: (everything is based on the id, only 1 row is ever returned or updated per query, theres no range searches or random or anything fancy)
SELECT (the 20 varchars) FROM table1 WHERE id=’id’;
UPDATE (the 20 varchars) FROM table1 WHERE id=’id’;
Deletes are done in bulk once a week, insertions maybe 5,000 per day. Theres an equal number of updates and selects (about 1000 per minute)
Unfortunately, I do not have the facility to benchmark at present, hence the question, which table type should I use for what I need? What are the main factors you’d use to choose in my case?
Also note that MyISAM will lock the entire table when doing updates, whereas InnoDB will only lock the affected rows.
My personal philosophy is to use MyISAM only when I need full text search (and I agree with DrColossos that there are better search options).