哈希函数、Map-Reduce与Hadoop

本文介绍了哈希函数的基本概念和性质,以及在Map-Reduce框架中的作用。Map-Reduce通过哈希函数将大任务拆分成子任务,实现并行处理。文章探讨了Map-Reduce在统计单词频率、海量数据排序等问题上的应用,并提出了多用户权限控制、任务均衡等实际操作中的考虑点。同时,文章提供了多个案例,展示了如何利用哈希函数解决大规模数据处理的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

哈希函数

哈希函数又叫散列函数,哈希函数的输入域可以是非常大的范围,比如任意字符串,但是输出域是固定范围,假设为s。
哈希函数的性质:

  1. 典型的哈希函数都拥有无限的输入值域。
  2. 输入值相同时,返回值相同,通常将返回值称为哈希值。
  3. 输入值不同时,返回值可能相同,也可能不同。
  4. 不同输入值得到的哈希值,整体均匀的分布在输出域s上。(重要)
    性质1,2,3是哈希函数的基础,性质4是评价一个哈希函数的关键。不同输入得到的哈希值越均匀的分布在s上,哈希值被认为越优秀。并且这种均匀分布是与输入值出现的规律无关的。
    比如“aaa1”,“aaa2”,“aaa3”,虽然相似,但计算出的哈希值相差巨大。
    如果将所有的哈希值对m取余的话,所有取余后的值也会均匀分布在 0 , … , m − 1 0,\ldots,m-1 0,,m1上。
    MD5算法与SHA1算法都是经典的哈希函数算法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值