En este blog, se ayuda a comprender por qué se produjo la transición del disco de sector de 512 bytes al disco de sector de 4096 bytes. El blog también ofrece respuestas a por qué se debe optar por un disco de sector de 4096 bytes (4K) para la instalación del sistema operativo. El blog primero explica sobre el diseño del sector para comprender la necesidad de la migración, luego brinda el razonamiento detrás de la migración y, finalmente, cubre los beneficios de la unidad de sector 4K sobre la unidad de sector de 512 bytes.
Un sector es la unidad de almacenamiento mínima de una unidad de disco duro. Es una subdivisión de una pista en una unidad de disco duro. El tamaño del sector es un factor importante en el diseño del sistema operativo, ya que representa la unidad atómica de las operaciones de I/O en una unidad de disco duro. En Linux, puede comprobar el tamaño del sector del disco mediante el comando "fdisk -l".
Figura 1: El tamaño del sector del disco en Linux
Como se muestra en la figura 1, los sectores lógico y físico tienen una longitud de 512 bytes para este sistema Linux.
El diseño del sector se estructura de la siguiente manera:
Cada sector almacena una cantidad fija de datos de usuario, tradicionalmente 512 bytes para las unidades de disco duro. Sin embargo, debido a una mejor integridad de datos en densidades más altas y sólidas funcionalidades de corrección de errores, los HDD más recientes ahora almacenan 4096 bytes (4K) en cada sector.
El número de bits almacenados en una longitud de pista determinada se denomina densidad de área. El aumento de la densidad de área es una tendencia en la industria de las unidades de disco, no solo porque permite almacenar mayores volúmenes de datos en el mismo espacio físico, sino que también mejora la velocidad de transferencia a la que puede operar ese medio. Con el aumento de la densidad de área, el sector ahora ha consumido una cantidad cada vez menor de espacio en la superficie del disco duro. Esto crea un problema, ya que el tamaño físico de los sectores en los discos duros se ha reducido, pero los fallos de medios no. Si los datos en un sector de disco duro consumen áreas más pequeñas, la corrección de errores se convierte en un desafío. Esto se debe a que los defectos de medios del mismo tamaño pueden dañar un mayor porcentaje de los datos en el disco que tiene un área pequeña para un sector que el disco tiene un área grande para un sector.
Hay dos enfoques para resolver este problema. El primer enfoque es invertir más espacio de disco en bytes ECC para garantizar la confiabilidad continua de los datos. Pero si invertimos más espacio de disco en los bytes ECC, esto conducirá a una menor eficiencia del formato de disco. La eficiencia del formato de disco se define como (cantidad de bytes de datos de usuario X 100) / cantidad total de bytes en disco. Otra desventaja es que cuantos más bits ECC se incluyan, la controladora de disco requerirá más potencia de procesamiento para procesar el algoritmo ECC.
El segundo enfoque es aumentar el tamaño del bloque de datos y aumentar ligeramente los bytes de ECC para cada bloque de datos. Con el aumento del tamaño de los bloques de datos, se reduciría la cantidad de sobrecarga necesaria para que cada sector almacene información de control, como la brecha, la sincronización, la sección de marca de dirección, etc. Para cada sector, los bytes de ECC aumentarán, pero los bytes de ECC generales necesarios para un disco se reducirán debido a un sector más grande. La reducción de la cantidad general de espacio utilizado para el código de corrección de errores mejora la eficiencia del formato y el aumento de los bytes de ECC para cada sector proporciona la capacidad de utilizar algoritmos de corrección de errores más eficientes y potentes. Por lo tanto, la transición a un sector de mayor tamaño tiene dos beneficios: confiabilidad mejorada y mayor capacidad de disco.
Desde una perspectiva de rendimiento, el tamaño de bloque ideal debe ser aproximadamente igual al tamaño característico de una transacción de datos típica. Hay que reconocer que el tamaño medio de los archivos hoy en día es de más de 512 bytes. Hoy en día, las aplicaciones en los sistemas modernos utilizan datos en bloques grandes, mucho más grandes que el tamaño de sector tradicional de 512 bytes. Los tamaños de bloque demasiado pequeños causan demasiada sobrecarga de transacciones. Mientras que, en el caso de bloques de gran tamaño, cada transacción transfiere una gran cantidad de datos innecesarios.
El tamaño de una transacción estándar en sistemas base de datos relacionales es 4K. El consenso de opinión en la industria de las unidades de disco duro ha sido que los tamaños de bloque físicos de 4K-Block proporcionarían un buen compromiso. También corresponde al tamaño de paginación utilizado por los sistemas operativos y los procesadores.
Figura 3: Mejora de la eficiencia del formato en discos 4K
Formato de sector de 512 bytes | Formulario de sector de 4096 bytes | |
Marca de brecha, sincronización y dirección | 15 bytes | 15 bytes |
Datos de usuario | 512 bytes | 4096 bytes |
Código de corrección de errores | 50 bytes | 100 bytes |
Total | 577 bytes | 4211 bytes |
Eficiencia del formato | 88.7% | 97.3% |
Tabla 1: Mejora de la eficiencia del formato en discos 4K
Como vemos en la Figura 2, los sectores 4K son 8 veces más grandes que los tradicionales de 512 bytes. Por lo tanto, para la misma carga útil de datos, se necesitan 8 veces menos secciones de brecha, sincronización y marca de dirección y 4 veces menos sección de código de corrección de errores. La reducción de la cantidad de espacio utilizado para el código de corrección de errores y otras secciones que no son de datos mejora la eficiencia del formato para el formato 4K. La mejora en la eficiencia del formato se muestra en la Figura 3 y la Tabla 1, hay una ganancia del 8,6 % en la eficiencia del formato para el disco de sector de 4K en comparación con el disco de sector de 512 bytes.
Figura 4: Efecto de un defecto de medios en la densidad del disco
Como se muestra en la Figura 4, el efecto del defecto de medios en el disco con mayor densidad de área es mayor que en el disco con la menor densidad de área. A medida que aumenta la densidad de área, necesitamos más bytes de ECC para conservar el mismo nivel de capacidad de corrección de errores. El formato 4K proporciona suficiente espacio para expandir el campo ECC de 50 a 100 bytes a fin de dar cabida a los nuevos algoritmos ECC. La cobertura de ECC mejorada mejora la capacidad de detectar y corregir errores de datos procesados más allá de la longitud de defecto de 50 bytes asociada con el formato de sector de 512 bytes.
Los discos de datos 4K son compatibles con Windows Server 2012, pero como disco de arranque solo se admite en el modo UEFI. Para Linux, los discos duros 4K requieren un mínimo de RHEL 6.1 y SLES 11 SP2. Las unidades de arranque 4K solo son compatibles con el modo UEFI en Linux. La compatibilidad con kernel para unidades 4K está disponible en las versiones de kernel 2.6.31 y posteriores. Las tarjetas PERC H330, H730, H730P, H830, FD33xS y FD33xD admiten unidades de disco de tamaño de bloque de 4K, lo que le permite utilizar el espacio de almacenamiento de manera eficiente. Los discos 4K se pueden utilizar en los servidores Dell PowerEdge compatibles con las tarjetas PERC superiores.
El tamaño físico de cada sector del disco se ha reducido como resultado del aumento de las densidades de área en las unidades de disco. Si el número de fallos de disco no escala a la misma velocidad, se espera que se dañen más sectores y se necesita una gran capacidad de corrección de errores para cada sector. Las unidades de disco con sectores físicos más grandes y más bytes de ECC para cada sector proporcionan algoritmos mejorados de corrección y protección de datos. El formato 4K ayuda a lograr una mejor eficiencia de formato y mejora la confiabilidad y la capacidad de corrección de errores. Esta transición dará como resultado mejores experiencias de usuario, por lo tanto, se debe optar por la unidad 4K para la instalación del sistema operativo.