Pregunta

Necesito almacenar una gran cantidad (decenas de millones) de hashes SHA-2 de 512 bits en una tabla MySQL. Para ahorrar espacio, me gustaría almacenarlos en forma binaria, en lugar de una cadena de dígitos hexadecimales. Estoy usando un ORM ( DBix :: Class ) para que los detalles específicos del almacenamiento se abstraigan del código, lo que puede inflarlos a cualquier objeto o estructura que elija.

El

tipo BIGINT de MySQL es de 64 bits. Entonces, en teoría, podría dividir el hash entre ocho columnas BIGINT . Sin embargo, eso parece bastante ridículo. Mi otro pensamiento era simplemente usar una sola columna BLOB , pero he escuchado que pueden tener un acceso lento debido a que MySQL los trata como campos de longitud variable.

Si alguien pudiera ofrecer algo de widsom que me ahorre un par de horas de evaluación comparativa de varios métodos, lo agradecería.

Nota: Automático -1 para cualquiera que diga "¡solo use postgres!" :)

¿Fue útil?

Solución

¿Has considerado 'binario (64)'? Consulte MySQL binary type.

Otros consejos

Utilice el tipo BINARY (64)?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top