A primeira versão do padrão SATA suporta a taxa de transferência em 150 MB/s, o que (na época) era suficiente para atender as necessidades dos HDs tradicionais. Logo a seguir, veio o SATA 2.0, que por sua vez dobrou este valor para 300 MB/s. No entanto, os discos rígidos não evoluíram neste aspecto e os SSDs ainda estavam engatinhando, o que me fez até considerar a real necessidade do SATA 3.0 (600 MB/s). Porém, não contava com a grande evolução dos SSDs, que por sua vez rapidamente superaram os limites de transferência da conexão SATA. Para o seu lugar, surgiu o padrão NVMe…
“NVM Express, Inc. today announced the release of the NVM Express® (NVMe®) 2.0 family of specifications. The restructured NVMe 2.0 specifications allow for faster and simpler development of NVMe solutions to support the increasingly diverse NVMe device environment, now including Hard Disk Drives (HDDs). The extensibility of the specifications encourages the development of independent command sets like Zoned Namespaces (ZNS) and Key Value (KV) while enabling support for the various underlying transport protocols common to NVMe and NVMe over Fabrics (NVMe-oF™) technologies.”
— by NVMe Express.
Tal como aconteceu com o SATA, a migração para o padrão NVMe será algo inevitável, em vista das limitações do SATA: o NVMe se diferencia pelo fato de usar as velozes conexões PCI-Express, além de ser dotado de um formato que prioriza um caminho “mais curto” para os dados trafegarem! Se antes, os cabos SATA superavam os cabos PATA por transferirem as informações de forma serial ao invés de paralelas (por causa da sincronia), estes mesmos cabos não são páreos para concorrer com slots para os cartões eletrônicos, os quais os chips são integrados). Fora outras limitações, relacionadas a API oferecida pelo padrão AHCI, que por sua vez controla os acessos as estas unidades…
O atual padrão NVMe 1.4 oferece uma série de avanços e otimizações, tornando possível uma maior largura de banda, aumentando o número de filas de armazenamento (I/O queue) e um grande número de operações de entrada e saída por segundo (IOPS), além de menores tempos de latência. No entanto, isto não quer dizer que não há espaços para evoluções e otimização: eis a importância do NVMe 2.0! Esta nova atualização se destaca por redefinir o design do funcionamento da tecnologia, no que concerne a “inclui novos recursos inovadores e atualizações de especificações estruturais para habilitar o futuro ecossistema de tecnologia flash”! Há tempos, estas unidades flash não são usadas apenas para armazenar dados, tal como era “antigamente”.
Em geral, as mudanças se concentram em relação as definições de acesso através de parâmetros e variáveis especiais; as otimizações em relação a forma como é executada a cópia e a gravação de dados; a designação de classes e grupos para otimizar o funcionamento dos dispositivos sob determinadas condições; modos especiais para definir o desligamento e as atualizações de várias unidades; por fim, até mesmo algumas definições em relação a segurança, para proteger o sistema contra a alterações indevidas. Tudo isto, já pensando nas futuras possibilidades de uso, considerando cenários que vão da utilização em dispositivos móveis, passando por aplicações voltadas para servidores, arranjos de storagens e por fim, data centers!
PS.: porque é tão difícil encontrar SSDs para slots PCI-Express 1x? &;-D