Quando você compra um disco rígido de qualquer fabricante, você está comprando discos marcados com 500GB, 1TB, 2TB, 3TB, etc. de capacidade. Dito isso, é importante saber que o tamanho real de armazenamento destes discos, não é o mesmo que o tamanho marcado.
Por que isso?
No mundo da computação, os computadores ou dispositivos, utilizam base 2 para todos os cálculos que executam. Com o passar do tempo, os fabricantes dos discos rígidos optaram por utilizar base 10 para marketing de seus discos. Desta forma, um disco que tem capacidade de 1TB, não possui 1024GB de capacidade e sim 1.000.000.000.000 bytes.
Ao fazer as contas, percebe-se que 1.000.000.000.000 bytes é igual a 931.32GB. Esse calculo afeta todos os discos, não importa qual matriz você esteja utilizando (NetApp, EMC, IBM, Dell, HP e etc).
A segunda parte desta explicação, tem a ver com checksum e seu uso em discos enterprise da NetApp. A NetApp utiliza dois tipos de discos rígidos, SATA e SAS. Os fabricantes destes discos geralmente criam discos SAS para o uso da classe “enterprise”, e discos SATA para a classe “home user”.
Dado este fato, os fabricantes incluem algumas funcionalidades nos discos SAS, a fim de prover validações consistentes nos dados contidos no disco. Eles fazem isso através do checksum (nada mais que um valor de hash para validar a consistência dos dados). Este checksum, em discos SAS, é armazenado no mesmo setor utilizado pelos dados. O tamanho deste setor em discos SAS é grande o suficiente para incorporar isso (520 bytes por setor), desta forma, você não percebe uma redução da capacidade depois de fazer a conversão de base 10 para base 2.
Nos discos SATA é onde isso fica um pouco confuso.
Como mencionei anteriormente, os discos SATA são fabricados para a classe “home user”, e com isso, não precisam necessariamente de checksum. Desta forma, os fabricantes não incluem esse espaço extra dentro dos setores para acomodar checksum (512 bytes por setor).
Bem, o que é feito para se utilizar checksum em discos SATA então?
É utilizado um nono setor extra para cada 8 setores utilizados no disco. Este setor extra, faz com que a capacidade utilizável do disco SATA seja muito mais afetada comparado á um disco SAS. Ao utilizar disco SATA, você deve pegar seu valor base 10, convertê-lo para base 2 e multiplicar por 8/9.
Para exemplificar, vamos utilizar um disco de 1TB SATA. Após converter 1.000.000.000.000 bytes, seu valor em base 10, para a base 2, temos como resultado 931.32GB. Após a multiplicação pelo valor do checksum, o valor final é de 827.8GB de capacidade utilizável.
Depois da explicação sobre conversão de base 10 para base 2 e checksum, a última coisa a esclarecer é a implementação do WAFL (Write anywhere file Layout). O WAFL é o sistema de arquivos proprietário da NetApp utilizado em todos os arrays de discos FAS-based.
O WAFL utiliza 10% da capacidade disponível para habilitar features como deduplicação, compressão e thin provisioning. Desta forma, ainda utilizando o disco de 1TB SATA como exemplo, devemos pegar o resultado de sua capacidade após os cálculos de checksum e subtrair 10%. No final, o disco de 1TB SATA terá como espaço utilizável de 745GB.
Você pode estar pensando, “Meu disco foi muito consumido antes mesmo de eu gravar meus dados nele!!! ”.
Sim, de fato. Mas o que equilibra essa balança são os ganhos de eficiência gerados pelo Data Ontap e WAFL. A Deduplicação, a compressão, o thin provisioning e etc., permitirão que você tenha ganhos de capacidade de armazenamento, o que minimiza os resultados dos processos acima descritos.
Abaixo está uma tabela de exemplo com os cálculos de conversão e implementação de WAFL sob a capacidade dos discos:
A elaboração do Sizing de um ambiente é algo delicado e que deve ser feito com muita atenção e assertividade. A explicação acima tem como principal objetivo, ajudar nesta etapa essencial no projeto.