[development] InnoDB and accesslog/ watchdog

Gerhard Killesreiter gerhard at killesreiter.de
Sun Aug 13 20:33:10 UTC 2006


Larry Garfield wrote:

NB: I'd really appreciate it if people on this list could quote messages 
appropriately and not attach the old message at the bottom.

> What exactly would be the benefit here?  My understanding is that InnoDB is 
> already better for write-heavy tables (while MyISAM is read-optimized), so 
> I'm not sure what the goal is.

First of all, not everybody uses innodb. We can safely assume that 
myisam is the standard table type that 98% of all Drupal installs use if 
they use mysql. We actually used to enforce the myisam table type.

>  And what would this get us that UNION would 
> not?

A merge table is basically a permanent union (Note: I am not a big 
database expert, if somebody is, please explain it better). You wouldn't 
need to bother about knowing how many tables you want to get the data 
from, etc.

My idea is to split our accesslog (and watchdog) into accesslog_storage 
and accesslog_insert, and add both to a merged accesslog table.

During cron runs, the content of the _insert table would be added to the 
_storage table and the _insert table would be emptied, keeping it nice 
and small.

If now somebody wants to collects a _real_ lot of data this way he'd 
want to split up the accesslog_storage table further. He could do so and 
simply add the new tables to the merged table as well and would not need 
to add the tables to some union statement.


Cheers,
	Gerhard


More information about the development mailing list