9 abr 2012

hashing y las aclaraciones

Hashing es una forma de ponerle un número a algo que originalmente no es un número. Así que estuve buscando un poco para ver si lo podía usar en el sistema de expedientes, así me encuentro con que una falla de documentación (que espero denunciar más antes que temprano).

Parece que la alternativa es usar Digest (qué es eso?) ya veremos. Aunque al parecer hay variados medios de hashing.

La cuestión es que quería inventarme el id de los expedientes y tengo la esperanza de poder hacer valores únicos... (son 25_000) nada más...
Bueno, la cuestión es que tengo que meter el id en el pequeño espacio entre -2_147_483_648 y 2_147_483_647 ( 2³² )

Por ahora parece que voy a usar CRC32 (de la librería zlib) y voy a ver que onda... pero lo que debería hacer es usar una gema a partir de murmurhash3.

La onda sería copiar nashby/cityhash pero con los contenidos del otro y está este a medio hacer.

Será cuestión de probar!