Hoje em dia, eu sempre uso o InnoDB por padrão, especialmente nas tabelas de gravação intensiva que você mencionou, onde o MyISAM sofre com o bloqueio completo da tabela. Aqui está uma comparação direta.
Razões para usar o MyISAM:
- As tabelas são muito rápidas para cargas com muita seleção
- Os bloqueios no nível da tabela limitam sua escalabilidade para ambientes multiusuário com uso intenso de gravação.
- Menor consumo de espaço em disco
- Índice de texto completo
- Tabelas mescladas e compactadas.
Razões para usar o InnoDB:
- Transações de ACID
- Bloqueio de nível de linha
- Leituras consistentes – permite alcançar uma excelente simultaneidade de leitura e gravação.
- Agrupamento de chave primária – oferece excelente desempenho em alguns casos.
- Suporte de chave estrangeira.
- Tanto as páginas de índice quanto as de dados podem ser armazenadas em cache.
- Recuperação automática de falhas - caso o desligamento do MySQL não tenha sido limpo, as tabelas do InnoDB ainda - recuperam para o estado consistente - Nenhuma verificação / reparo como o MyISAM pode exigir.
- Todas as atualizações precisam passar pelo mecanismo transacional no InnoDB, o que geralmente diminui - desempenho em comparação com mecanismos de armazenamento não transacionais.
O texto acima foi retirado de este site , que parece não estar mais funcionando.