VByte
VByte (byte variable) es un esquema que codifica un entero no negativo como bytes de longitud variable: cada byte lleva 7 bits de carga útil y el bit más significativo sirve de indicador de continuación.
Propósito
Almacenar y transportar de forma compacta secuencias de enteros cuando dominan los valores pequeños, como los huecos de IDs de documento en índices invertidos.
Mecanismo
Los grupos de 7 bits del entero se escriben de menor a mayor; el bit más alto de un byte es 0 en el byte final y 1 cuando siguen más. Los enteros pequeños (< 128) solo necesitan 1 byte, y los valores mayores se extienden según haga falta.
Casos de uso
- Codificación de IDs de documento en índices invertidos
- Campos enteros de longitud variable en bases de datos
- Longitudes variables en cabeceras de protocolo