hessodreamy — 2009-12-17T07:45:25-05:00 — #1
I'm setting up tables to store details of visitors. One table with details of the visitor session, and another containing the pages they viewed. We're looking at upwards of 4 million records for the visitors table and 20 million for the pages table.
I'd probably be running occasional queries on the tables and obviously I wouldn't want that to slow down the user tracking. I could, if necessary, insert into a temporary table and copy across to the main table at non-peak times?
The default table type is MyISAM. Is this the best table to use or would another be more suitable?
r937 — 2009-12-17T11:20:27-05:00 — #2
myisam uses a table lock when doing inserts, deletes, or updates
clearly for tables as large as you expect (and the assumed frequency of inserts), this could be a problem
hessodreamy — 2010-02-09T00:05:12-05:00 — #3
Might InnoDB be better then?
Would it also be faster (albeit take up more disc space) if I convert all VARCHAR fields to CHAR?
r937 — 2010-02-09T04:28:06-05:00 — #4
yes definitely, and yes but not measurably