MySQL e tmpfs: desempenho

MySQL e tmpfs: desempenho

Eu queria saber se, e quanto, o uso do tmpfs poderia melhorar o desempenho do MySQL e como isso deveria ser feito? Meu palpite seria fazer mount -t tmpfs -o size=256M /path/to/mysql/data/DatabaseNamee usar o banco de dados normalmente, mas talvez eu esteja errado (estou usando apenas tabelas MyISAM).

Um rsync de hora em hora entre os tmpfs /path/to/mysql/data/DatabaseNamepenalizará /path/to/mysql/data/DatabaseName_backupo desempenho? Se sim, como devo fazer o backup do banco de dados tmpfs?

Então, é uma boa maneira de fazer as coisas, existe uma maneira melhor ou estou perdendo meu tempo?

Responder1

Eu respondi uma pergunta semelhanteaquiquando alguém estava perguntando como carregar um banco de dados MySQL na memória. Existe um ENGINE nativo no MySQL entre outras soluções potenciais, que são melhores para a maioria das situações.

Para tabelas MyISAM, a solução proposta seria funcional.

O rsync não deveria necessariamente penalizar o desempenho, mas poderia penalizar se o seu sistema estivesse com poucos recursos, já que a alta utilização de E/S afetaria o desempenho do sistema como um todo. Na maioria dos casos, eu diria que não, mas a única maneira de ter certeza é testar.

A solução ramdisk parece arriscada para mim. Em caso de perda de energia, os dados poderão ser perdidos, pois o seu rsync não seria em tempo real. Você poderia replicar o banco de dados para um escravo, que poderia armazenar em um disco. A inicialização do MySQL no servidor ramdisk pode ser transferida desse host para o ramdisk antes de iniciar a instância.

Se sua instância MySQL não estivesse bem otimizada, você notaria ganhos substanciais de desempenho. Se bem otimizado, suspeito que os ganhos seriam menores. A única maneira de ter certeza é usar ferramentas comoSuper tapa,Referência MySQL, ebanco de dadospara quantificar o desempenho.

Boa sorte.

informação relacionada