Testando o desempenho do HD com banco de dados

Este artigo apresenta uma comparação do desempenho dos subsistemas de armazenamento a partir de operações comuns realizadas por um DBA em um SGBD.

Fique por dentro
Este artigo é útil porque apresenta uma comparação do desempenho dos subsistemas de armazenamento a partir de operações comuns realizadas por um DBA em um SGBD. As opções utilizadas incluem HDs mecânicos, soluções de armazenamento na nuvem, discos em memória (ramdrive) e SSDs testados por meio de operações de importação/exportação de dados, backup/restore e execução de transações. Com a discussão e os resultados apresentados neste artigo, o leitor poderá compreender as opções disponíveis para armazenamento de dados e as suas principais características, vantagens, desvantagens e medidas de desempenho necessárias para auxiliar o processo de tomada de decisão em relação ao local onde os arquivos de dados e log de um SGBD devem ser guardados para se obter o desempenho adequado relacionado aos requisitos de armazenamento.

O subsistema de armazenamento de dados em computadores é composto de diversos elementos. Entre os principais, destacam-se as características e especificações técnicas do disco rígido e da tecnologia de transferência de dados.

Devido a recentes avanços tecnológicos, as tecnologias de armazenamento evoluíram ao ponto onde nem mesmo o termo disco rígido faz sentido em algumas situações. Por exemplo, o uso de memórias flash para a criação de “discos” representados pela sigla SSD (Solid State Drive) fornece uma justificativa para a indicação de mudanças na maneira de enxergar o hardware que lida com o armazenamento persistente de dados.

Apesar das mudanças tecnológicas que tangem o subsistema de armazenamento persistente, os profissionais que trabalham com banco de dados ainda possuem dúvidas e questões relacionadas ao desempenho de tarefas que envolvem intenso uso de operações de IO, especialmente aquelas relacionadas à manipulação de grandes quantidades de dados a partir de um SGBD.

A partir desse cenário, este artigo apresentará uma comparação técnica do desempenho de operações de IO relacionadas à leitura e gravação de dados com tecnologias de armazenamento persistente. As tecnologias utilizadas na comparação incluem discos rígidos mecânicos (HDs), hardwares SSDs, softwares que mapeiam a memória RAM para armazenamento (ramdrives) e soluções na nuvem. As tarefas de banco de dados verificadas nos testes são a importação e exportação de dados, backup/restore e execução de operações de inserção de dados em transações.

O foco deste artigo é apresentar uma comparação técnica do desempenho de leitura e gravação de dados a partir de operações comuns do dia a dia de quem trabalha com SGBDs. A partir dos resultados dessas comparações é possível avaliar as opções existentes para armazenamento de disco e escolher as alternativas mais adequadas para quem precisa completar tarefas que utilizam IO e requerem muita performance de leitura e gravação de dados.

Tecnologias de armazenamento de dados

O armazenamento de dados permanente em computadores é tratado por um subsistema computacional que contém diversos componentes. Para simplificar o contexto das tecnologias de armazenamento, neste artigo vamos nos concentrar em apenas dois elementos: a tecnologia de transferência e o hardware de armazenamento de dados.

A tecnologia de transferência de dados é responsável pela comunicação interna entre os dados que estão na memória e o hardware de armazenamento. Entre as tecnologias mais utilizadas, destaca-se aquela indicada pelas siglas SATA (Serial AT Attachment) para desktops e SAS (Serial Attached SCSI) para computadores servidores. A Figura 1 mostra o terminal (conector) de um cabo SATA, cujas pontas devem ser ligadas em um hardware de armazenamento e na placa mãe do computador. De forma similar, a Figura 2 mostra as pontas de um cabo SAS. É importante destacar que, em teoria, a tecnologia de transferência é independente do hardware de armazenamento empregado.

Figura 1. Conector do cabo SATA.

Figura 2. Conector do cabo SAS.

Existem diversas versões das especificações de SATA e SAS, mas em geral é comum encontrar a taxa de transferência de 6 Gigabits por segundo (Gbit/s) para SATA e 12 Gbit/s para SAS. Apenas a título de comparação, a tecnologia USB 2.0 proporciona algo como 480 Megabits por segundo (Mbit/s). É importante destacar que esses valores são nominais, ou seja, indicados pelo fabricante. Na prática, é muito difícil alcançar esses valores devido a diversos motivos, tais como as operações necessárias pelo sistema operacional, a velocidade do hardware de armazenamento, o sistema de arquivos, o barramento do computador e outros.

Em relação ao hardware de armazenamento, existem diversas opções. Este artigo vai se concentrar em quatro tecnologias para armazenamento: HDs mecânicos, SSDs, ramdrives e soluções na nuvem. Os próximos parágrafos discutem detalhes sobre cada uma dessas opções.

Os discos rígidos (HDs) mecânicos foram os primeiros dispositivos de armazenamento em massa empregados na computação e até hoje seus princípios são utilizados. Esse hardware geralmente é composto por um disco magnético (daí o nome disco rígido), onde as operações de leitura e gravação são realizadas por uma “agulha” mecânica. Além disso, é comum encontrar um pouco de memória RAM junto com o disco para armazenar o cache de dados, ou seja, tornar mais rápido o acesso a dados frequentemente utilizados.

Os HDs mecânicos possuem algumas especificações técnicas e a principal delas é a quantidade de rotações por minuto (rpm), que indica a velocidade das operações de IO do hardware. É comum encontrar discos de 5.400 rpm em notebooks, 7.200 em desktops e 15.000 (15k) rpm em servidores. A quantidade disponível para armazenamento é alta e chega na casa das dezenas de terabytes.

O hardware indicado pela sigla SSD é relativamente novo na computação e se baseia no uso de memórias flash para o armazenamento de dados. Além da taxa de transferência e acesso a memória serem muito mais rápidas do que os discos magnéticos, os drivers SSDs não contam com partes mecânicas e, por isso, teoricamente estariam sujeitos a menos falhas ao longo do tempo. Em contrapartida, seu custo ainda é elevado em relação aos HDs mecânicos e a quantidade de armazenamento é menor. Os SSDs possuem diferentes características de memória dependendo do fabricante, porém em geral o desempenho é melhor do que o uso de HDs mecânicos."

[...] continue lendo...

Artigos relacionados