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.
A tecnologia de mapeamento de memória RAM para que ela seja utilizada como um armazenamento persistente, os chamados ramdrives, não é nova. Contudo, recentemente alguns avanços interessantes tornaram essa opção atrativa. Em primeiro lugar, é importante destacar que essa tecnologia reserva de forma exclusiva uma parte da memória RAM do computador, que fica com sua capacidade de RAM reduzida para oferecer aos demais processos do sistema operacional. Em segundo lugar, ramdrives NÃO armazenam dados fisicamente, ou seja, quando o computador estiver desligado os dados são perdidos, apesar de existirem mecanismos para exportar e importar o conteúdo do ramdrive para um arquivo compactado tipo ISO. Em terceiro lugar, o espaço total de armazenamento de um Ramdrive é limitado pela quantidade de memória RAM que o sistema operacional pode disponibilizar para ...
Confira outros conteúdos:
SQL SUM: somando os valores de uma...
SQL: INNER JOIN
SQL: Introdução ao Where
Promoção de Natal
Oferta exclusiva de Natal!
Pagamento anual
12x no cartão
De: R$ 69,00
Por: R$ 59,90
Total: R$ 718,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- 12 meses de acesso
Pagamento recorrente
Cobrado mensalmente no cartão
De: R$ 79,00
Por: R$ 59,90 /mês
Total: R$ 718,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- Fidelidade de 12 meses
- Não compromete o limite do seu cartão
<Perguntas frequentes>
Nossos casos de sucesso
Eu sabia pouquíssimas coisas de programação antes de começar a estudar com vocês, fui me especializando em várias áreas e ferramentas que tinham na plataforma, e com essa bagagem consegui um estágio logo no início do meu primeiro período na faculdade.
Estudo aqui na Dev desde o meio do ano passado!
Nesse período a Dev me ajudou a crescer muito aqui no trampo.
Fui o primeiro desenvolvedor contratado pela minha
empresa. Hoje eu lidero um time de desenvolvimento!
Minha meta é continuar estudando e praticando para ser um
Full-Stack Dev!
Economizei 3 meses para assinar a plataforma e sendo sincero valeu muito a pena, pois a plataforma é bem intuitiva e muuuuito didática a metodologia de ensino. Sinto que estou EVOLUINDO a cada dia. Muito obrigado!
Nossa! Plataforma maravilhosa. To amando o curso de desenvolvimento front-end, tinha coisas que eu ainda não tinha visto. A didática é do jeito que qualquer pessoa consegue aprender. Sério, to apaixonado, adorando demais.
Adquiri o curso de vocês e logo percebi que são os melhores do Brasil. É um passo a passo incrível. Só não aprende quem não quer. Foi o melhor investimento da minha vida!
Foi um dos melhores investimentos que já fiz na vida e tenho aprendido bastante com a plataforma. Vocês estão fazendo parte da minha jornada nesse mundo da programação, irei assinar meu contrato como programador graças a plataforma.
Wanderson Oliveira
Comprei a assinatura tem uma semana, aprendi mais do que 4 meses estudando outros cursos. Exercícios práticos que não tem como não aprender, estão de parabéns!
Obrigado DevMedia, nunca presenciei uma plataforma de ensino tão presente na vida acadêmica de seus alunos, parabéns!
Eduardo Dorneles
Aprendi React na plataforma da DevMedia há cerca de 1 ano e meio... Hoje estou há 1 ano empregado trabalhando 100% com React!
Adauto Junior
Já fiz alguns cursos na área e nenhum é tão bom quanto o de vocês. Estou aprendendo muito, muito obrigado por existirem. Estão de parabéns... Espero um dia conseguir um emprego na área.
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.