介绍:
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/local/openresty/luajit/ \
--lua-suffix=jit \
--with-lua-include=/usr/local/openresty/luajit/include/l

本文介绍了MurmurHash作为一种非加密型哈希函数,其在数据分桶等场景中的应用。重点展示了在OpenResty中如何安装和使用lua-resty-murmurhash2库进行MurmurHash2的实现,提供了两种安装方法并附带了测试代码示例。
最低0.47元/天 解锁文章
906

被折叠的 条评论
为什么被折叠?



