s*********e 发帖数: 36 | 1 求教各位牛人:
如果一个search engine系统从网上crawling很多的URL,为了保存不重复的URL,我们
用hash
table解决。这是个distributed hash table,分别保存在一个network里的各个节点上
。请问,
有什么比较好的hash function把一个URL map到一个节点上?
多谢! |
g*****a 发帖数: 1457 | 2 是不是可以用两个hash function, 第一个map到node上,第二个map到entry.
第一个input是domain, 第二个input 是sub url |
f*********5 发帖数: 576 | 3 假定有N节点,URL长度为L
URL为a[0]..a[L-1]
sum=0;
for(i=0;i
{
sum+=sum*H+a[i];
}
return sum%N;
这个咋样?
【在 s*********e 的大作中提到】 : 求教各位牛人: : 如果一个search engine系统从网上crawling很多的URL,为了保存不重复的URL,我们 : 用hash : table解决。这是个distributed hash table,分别保存在一个network里的各个节点上 : 。请问, : 有什么比较好的hash function把一个URL map到一个节点上? : 多谢!
|
s*********e 发帖数: 36 | 4 啊,这里有个限制,就是不知道URL的总数是多少,来一个处理一个。所以应该是对
URL的整个keyspace进行划分。比如URL都可以compress到8个bytes内,那么整个
keyspace 就是 0 - 2^64-1。节点划分应该在0 - 2^64-1的空间内。 |