我想知道在像 Hazelcast 这样的键值存储中使用哈希(CityHash、Murmur 等)作为键是否是个好主意。我预计数据库中有大约 2,000,000,000 条记录 (URL),因此可能会发生冲突。通过哈希冲突丢失一些数据并不是非常关键,但当然最好避免它们。
一条记录包含 URL、时间戳、状态码。主要操作是插入和查找 URL 是否已经存在。
那么,鉴于速度是相关的,你会建议什么:
- 使用ID 生成器,或
- 使用诸如 CityHash 或 Murmur 之类的哈希算法,或
- 使用相关的字符串,在这种情况下是 URL 本身?