Primeiro, faça um favor a si mesmo e pegue as sugestões do mecanismo de MEMORY com um grande grão de sal.
A menos que você não precise de nenhuma das seguintes opções:
- MVCC
- Transações
- Acesso multithread
- Índices agrupados
- Suporte a chave estrangeira
- Mais do que um INSERT / UPDATE ocasional
- Seus dados
Se você não precisar de nenhum desses, então você não deveria estar usando o MySQL. Use um armazenamento simples de valor-chave como o memcached.
Se você precisar de qualquer destes (dica: você usa), então use o InnoDB, o máximo de RAM que você puder pagar, e um innodb_buffer_pool_size
corretamente configurado. O MySQL Performance Blog tem um excelente artigo sobre configuração de innodb_buffer_pool_size . Curto e doce - você vai querer RAM suficiente para caber todo o espaço de tabelas e índices do banco de dados na RAM e definir innodb_buffer_pool_size
para 70-80% da RAM total do sistema para um servidor MySQL dedicado.