Junior — Middle
¿Se puede crear un índice único basado en una función hash?
sobes.tech AI
Respuesta de la IA
Sí, es posible crear un índice único basado en una función hash, pero con algunas consideraciones. La función hash convierte los datos en una longitud fija, y teóricamente diferentes datos de entrada pueden tener el mismo hash (colisiones).
En las bases de datos, a veces se crea un índice por hash para acelerar las búsquedas, pero no se puede garantizar la unicidad solo por el hash sin una comprobación adicional.
Si necesitas una restricción de unicidad, es mejor usar los datos originales o combinar el hash con verificaciones adicionales.
Ejemplo en Go para crear un hash y usarlo en un índice:
import (
"crypto/sha256"
"fmt"
)
func hashKey(key string) string {
h := sha256.Sum256([]byte(key))
return fmt.Sprintf("%x", h)
}
// Usa hashKey para crear el índice, pero verifica las colisiones al insertar.