I have a few production systems which use innodb (the smallest is a 400gb reporting dbms). So far I only have two issues with them and I'm not sure how that would translate to vb usage: the resource overhead seems significantly higher for innodb, and , when necessary, innodb data recovery has a global impact.
resource overhead is an issue on my non-commercial vb system because i don't use a dedicated server and the demands of ajax database access alone kill it even using myisam.
the data recovery issue is more significant for me: when i have encountered a data structure corruption error (and it's not that frequent an occurrence; it only happened once in 2009) , the entire innodb database instance simply will not come up until the issue is addressed.
using myisam only the affected table(s) becomes unusable (not having foreign key constraints you just don't have the data integrity issues associated with foreign key violations), which makes recovery a simple matter of dropping the structure and reloading it from the most recent backup. since the entire innodb instance will not load when corruption is detected, recovering from a backup becomes unfeasible as reloading all 400GB of table data simply takes too long, so i employ snap mirroring with local protection (dbms redundancy). without these resources, i can't see using innodb with anything over 25gb. i would prefer to use oracle 10/11g for such systems, and as Oracle now owns innodb that's probably going to become the formal migration path over time, but i'll wait for oracle to add similar administrative functionality to innodb before i use it for larger databases.
|