Vivemos na era do “Big data”, em que volumes enormes de informações são armazenados e analisados para nos ajudar a tomar as melhores decisões. A nossa época também é extremamente rápida, e exige que tomemos essas decisões com o máximo de agilidade e presteza. Faz sentido, então, que haja uma demanda para sistemas de memória digital capazes de armazenar grandes quantidades de dados e acessá-los rapidamente.
Um desses sistemas é a memória Flash, utilizada em muitos smartphones, pen drives e SSDs. O tipo de armazenamento de dados mais próximo a ela são os discos rígidos (ou HDs), mas a diferença é que a memória Flash é muito mais rápida porque leva menos tempo para encontrar e transmitir os dados gravados nela.
Ela também tem sobre os HDs a vantagem de ser mais confiável e durável. Isso porque, diferentemente dos discos rígidos, não há partes móveis. Um HD tradicional é composto por um disco magnético, onde são gravados os dados, e uma agulha que “lê” os dados. Essa agulha precisa percorrer o disco até o local exato do dado que o usuário deseja, o que leva mais tempo e, no longo prazo, provoca um desgaste físico, que os SSDs não sofrem.
Por esse motivo, a memória Flash é preferível a discos rígidos na hora de se criar um banco de dados. Além de oferecer mais agilidade ao sistema cada vez que a memória precisa ser acessada, ela também deixa o banco de dados mais confiável e durável. Há geralmente um aumento de custo associado ao uso dela, mas ele costuma valer a pena.
Ainda mais rápido
Mesmo que o seu computador tenha um SSD, essa ainda não é a memória mais rápida disponível. Esse posto é ocupado pela RAM, ou “memória de acesso aleatório” na sigla em inglês. Se você já viu um pente de RAM ser encaixado em uma placa-mãe, sabe que ele tem um encaixe muito maior que o dos cabos
SATA de um HD ou SSD. É graças a essa área muito maior de contato que ela consegue trocar dados mais rapidamente.
Por que essa memória não é usada para tudo, então? A questão é que a RAM é uma memória “volátil”: ela só armazena dados enquanto há corrente elétrica passando por ali. Quando a corrente é interrompida, todos os dados da RAM se perdem. É por isso, por exemplo, que os programas se fecham e precisam ser abertos de novo cada vez que você desliga o computador.
Ainda assim, essas vantagens podem ser usadas para dar ainda mais agilidade a uma base de dados. Bases que armazenam seus dados na RAM são conhecidas como “In-Memory”, e conseguem ser mais ágeis que as bases de dados que usam memória Flash, já que os dados não precisam ser acessados a partir de um disco externo. Mas como essa memória é volátil, ela é frequentemente associada a SSDs e memória Flash para oferecer o máximo de durabilidade, confiabilidade e velocidade ao mesmo tempo.
Outra vantagem dela é que, como o acesso à “In-Memory” é mais rápido que o acesso a memórias “externas”, os algoritmos de otimização de acesso aos dados são mais simples, e isso faz com que o processador execute menos instruções para resgatá-los. Além de agilizar ainda mais os processos, ainda há a vantagem de economizar energia, já que o processador é menos exigido.
No futuro, é provável que surjam RAMs não-voláteis. Essas memórias combinariam os benefícios de velocidade das bases de dados “In-Memory” à confiabilidade e durabilidade da memória Flash. Seria uma verdadeira revolução na forma de armazenar e gerenciar dados em grande escala, e abriria ainda mais portas para a execução de bancos de dados.