我使用 GUID(128 位)作为哈希函数的键。然后按我选择的表格大小16
,功能就像
hash(guid) mod 16
这给了我需要使用的分区。
我得到的反馈是做这样的事情
Guid (without dashes so essentially a number) mod 100,000 or higher or simply prime number like 17
提到的原因是:
仅使用mod 16
GUID 编号将仅使用其最后 4 位,因此它会暴露给 bais。使用 17 不会。这背后有什么具体的数学吗?因为 17 是 10001 而 16 是 10000 ??
如果我的hash
功能是 murmur64,那么我可以说这hash(guid) % 16
对于更好的分布来说足够好了吗?