介绍:
MurmurHash 是一种非加密型哈希函数,适用于一般的哈希检索操作。由Austin Appleby在2008年发明,并出现了多个变种,都已经发布到了公有领域(public domain)。与其它流行的哈希函数相比,对于规律性较强的key,MurmurHash的随机分布特征表现更良好。
当前的版本是MurmurHash3,能够产生出32-bit或128-bit哈希值。
较早的MurmurHash2能产生32-bit或64-bit哈希值。
应用场景:
比如按关键词分桶,将数据相对平均分到N个桶。
演示:下面用openresty演示MurmurHash2的使用
1,安装openresty(http://openresty.org/cn/installation.html)
2,安装murmurHash2的方法一:
2.1,安装LuaRocks(https://github.com/luarocks/luarocks/wiki/Installation-instructions-for-Unix)
wget https://luarocks.org/releases/luarocks-3.1.3.tar.gz
tar zxpf luarocks-3.1.3.tar.gz
cd luarocks-3.1.3
# 替换为openresty的安装路径
./configure --prefix=/usr/local/openresty/luajit \
--with-lua=/usr/lo