博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据库相关算法 之 xxHash
阅读量:5971 次
发布时间:2019-06-19

本文共 658 字,大约阅读时间需要 2 分钟。

Extremely fast non-cryptographic hash algorithm

  1. Extremely fast,超快,working at speeds close to RAM limits。看了代码,作者对 memcpy 这样的 CRT 函数都要去追究性能,嫌弃它在一些平台/编译器组合下,只是次优解;而且处处可见对内存对齐的优化。总之优化功力挺深。

  2. non-cryptographic,非加密型的 Hash。如果是 cryptographic hash algorithm,则输入的数据只要改变一个 bit,输出的 bits 就应该改变 50%,这样的安全性才合格。而非加密型,没有防破解“安全性”这个要求,仅要求“唯一性”。

  3. 通过 SMHasher 测试,这是一个专门测试 non-cryptographic hash 的工具,测试包括分布、碰撞、性能。

  4. It is proposed in two flavors, 32 and 64 bits. 32 位程序用 32 位库比较快,同理,64 位程序用 64 位库比较快。

  5. 多平台支持,包括硬件平台(Big Endian/Little Endian、不同 CPU 架构等) 和操作系统。多种语言实现。RocksDB、MySQL 用它。它可以用来实现 Bloom Filter。

  6. 库只有两个文件:xxhash.c、xxhash.h,BSD 2 协议。

转载于:https://my.oschina.net/umu618/blog/1573044

你可能感兴趣的文章
分布式系统唯一ID生成方案汇总【转】
查看>>
并查集hdu1232
查看>>
Mysql 监视工具
查看>>
Linux Namespace系列(09):利用Namespace创建一个简单可用的容器
查看>>
博客搬家了
查看>>
Python中使用ElementTree解析xml
查看>>
jquery 操作iframe、frameset
查看>>
解决vim中不能使用小键盘
查看>>
Eclipse Java @Override 报错
查看>>
linux的日志服务器关于屏蔽一些关键字的方法
查看>>
mysql多实例实例化数据库
查看>>
javascript 操作DOM元素样式
查看>>
HBase 笔记3
查看>>
【Linux】Linux 在线安装yum
查看>>
Atom 编辑器系列视频课程
查看>>
[原][osgearth]osgearthviewer读取earth文件,代码解析(earth文件读取的一帧)
查看>>
使用dotenv管理环境变量
查看>>
Vuex学习
查看>>
bootstrap - navbar
查看>>
FastDFS存储服务器部署
查看>>