SSD um booster para seu banco de dados

O SSD – Solid State Drive, ou disco de estado sólido, nada mais é que um “pen-drivão”. É uma unidade de armazenamento persistente que não tem partes móveis. São mais duráveis que os HDD, consomem menos energia (são verdes!), não geram vibrações, agüentam trabalhar em temperaturas mais altas, e, acima de tudo isto: são muito mais rápidos que os atuais HDD. Não tem SCSI ou SAS que ande mais rápido que um SSD profissional.

A única desvantagem desta belezura “era” o preço. Sim, era, pois desde 2010 a produção e o uso dos SSD tem ganhado escala, e, portanto diminuindo os preços nas prateleiras.

Tenho recomendado o uso de SSD para aumentar a capacidade de bancos de dados MySQL com altíssima incidência de escrita com grande êxito. A idéia aqui é, se o SSD é muito mais rápido que os HDD, portanto, conseguem escrever muito mais por unidade de tempo. Logo, o MySQL elimina um conhecido “bottleneck” e aumenta sua capacidade de escrita em um único servidor (master).

Mas, como tudo que é bom é, invariavelmente, escasso (memória RAM, fibra ótica, SSD, cerveja gelada, e, mulher bonita)! E por isso, tenho recomendado o uso destes caras para armazenar, somente, o datadir (e assumindo que você é um cara bacana e não escreve log algum dentro de seu diretório de dados). Os SSD, ainda, não são tão generosos quanto os HDD no quesito espaço.

Por que e quando usar SSD?
SSD é muito mais rápido e seguro que os HDD. É a próxima geração no quesito armazenamento de dados. HDD é coisa do século passado. Deve sim, ser utilizado, quando: a) sua base de dados couber nele :), e, b) seu banco de de dados sofre grande quantidade de concorrência, notadamente, escrita e todas as medidas de tuning e scale-out já foram tomadas e mais performance é requerida. Também é importante dizer que, mais performance é requerida sem aumentar a complexidade da solução.

Quando não usar?
Quando não couber no bolso! Quando a base de dados não couber inteira no SSD. Fazer “sharding” ou particionamento da base, e, ainda, usar SSD acho que já é demais. No futuro, talvez. Hoje, não recomendo. É o mesmo que pagar caro para ter uma solução complexa. Lembre-se sempre da regra dos 3S = “Stay Simple Stupid”.

Já ajudei a implantar esta solução em 3 empresas no Brasil e 2 nos EUA. Todas as 5 estão felizes, e, não voltam mais atrás.

Cuidados que devem ser tomados na aquisição de discos SSD:

  • Evite os tradicionais periféricos para desktop, é um erro comum, principalmente, em empresas do SMB. Faça isso e corre o risco de ter uma performance ligeiramente superior pagando muito mais caro por isso
  • Prefira drives PCI-Express ao invés de SATA. A latência é muito menor, ou seja, o drive é muito mais rápido
  • Cuidado! Alguns drives são fantásticos para leitura, mas, horríveis para escrita. A decisão por usar um SSD, sempre, deve ser por causa da escrita e não da leitura.
  • Por favor, escolha um 100% compatível com seu sistema operacional

As duas marcas que tenho recomendado são: OCZ (http://www.ocztechnology.com/) e Virident (http://www.virident.com/). A Virident é uma empresa que tem tradição emproduzir appliances para MySQL (e outros bancos de dados). A OCZ tem minha preferência.

Apenas para efeito de comparação, veja este gráfico comparando-se um HDD contra um SSD Intrepid da OCZ:

overview-interpid-graph.jpg

E quanto à consumo de energia:

overview-1-4.jpg

A linha Intrepid da OCZ conta com tamanhos de 256GB até 2TB. Não é o produto mais barato da OCZ, mas, é de longe o mais recomendado para bancos de dados que necessitam de um grande boost de performance na escrita de dados.

Conclusão: Se você não quer se complicar com um ambiente multi-master, ou utilizar, software de terceiros para aumentar sua capacidade de escrita. Sua solução atende pelo nome de SSD. Simples assim.

 

Um comentário em “SSD um booster para seu banco de dados”

Deixe um comentário

O seu endereço de e-mail não será publicado.

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.