0
问题地图,减少多个键
我们有记载,说[R 我其中i = 0,...,N。 n可能很大(数百亿)。
每个记录都有多个密钥,其中j = 0,...,m。 m小(比方说20)
我们说,R p = R q,如果k P0 = K Q0,K P1 = K Q1,...,或中,k 下午 = K QM
即,记录是相等的,如果至少有一个他们的密钥是相等的。我们需要找到这样的记录集并为这些集生成唯一的ID。
方法
润米地图,减少就业岗位,每个岗位上的一个键减少。
因此,对于工作我,映射器发出(R p,K 我)和减速器得到({R ,...,R p},K 我)
在所有m个作业结束时,我们将拥有一组具有相同密钥的记录。
小号ķ = {R升}
我们预计k到小于n,但仍可能是数亿,和L是一个小数字(比如2至5000)
为了得到我们的最终结果,我们需要合并至少有一个共同成员的上述集合。
我有以下问题:
- 如何有效地合并这些集合?
- 或者,有没有其他方法可以解决这个问题?
如何散列Key1-10? –
顺便说一句,我意识到,运行多步骤map-reduce是行不通的。 @Ayush哈希k1-10是什么意思?有一个“超级钥匙”?那也不行。超级关键的平等并不意味着关键的平等。 –
我编辑了我的问题以提供更清晰。 –